fbpx
Wikipedia

div and span

In HTML, the standard markup language for documents designed to be displayed in a web browser, <div> and <span> tags are elements used to define parts of a document, so that they are identifiable when a unique classification is necessary. Where other HTML elements such as <p> (paragraph), <em> (emphasis), and so on, accurately represent the semantics of the content, the additional use of <span> and <div> tags leads to better accessibility for readers and easier maintainability for authors. Where no existing HTML element is applicable, <span> and <div> can valuably represent parts of a document so that HTML attributes such as class, id, lang, or dir can be applied.[1][2]

<span> represents an inline portion of a document, for example words within a sentence. <div> represents a block-level portion of a document such as a few paragraphs, or an image with its caption. <div> stands for division. The elements allow semantic attributes (e.g. lang="en-US"), CSS styling (e.g., color and typography), or client-side scripting (e.g., animation, hiding, and augmentation) to be applied.[1][2]

<div> defines a 'division' of the document, a block-level item that is more distinct from elements above and below it than a span of inline material.[3]

Examples edit

For example, to make a certain part of text inside a paragraph red, <span> can be used as follows: [clarification needed (also include a <div> example)]

HTML syntax
(web code used to add formatting to text)
Rendered output
(as seen by visitors of the webpage)
I am <span style="color: red;">red</span> and I am <span style="color: blue;">blue</span>! 

I am red and I am blue!

History edit

The <span> element was introduced to HTML in the internationalization working group's second draft html-i18n in 1995. However, it was not until HTML 4.01 that it became part of the HTML language, appearing in the HTML 4 W3C Working Draft in 1997.[4]

<span> was introduced to mark up any inline span of text, because 'a generic container is needed to carry the LANG and BIDI attributes in cases where no other element is appropriate.' It still serves that general purpose, although a much richer range of semantic elements have been defined since then, and there are also many more attributes that may need to be applied.

Differences and default behaviour edit

There are multiple differences between <div> and <span>. The most notable difference is how the elements are displayed. In standard HTML, a <div> is a block-level element whereas a <span> is an inline element. The <div> block visually isolates a section of a document on the page, and may contain other block-level components. The <span> element contains a piece of information inline with the surrounding content, and may only contain other inline-level components. In practice, the default display of the elements can be changed by the use of Cascading Style Sheets (CSS), although the permitted contents of each element may not be changed. For example, regardless of CSS, a <span> element may not contain block-level children.[5]

Practical usage edit

<span> and <div> elements are used purely to imply a logical grouping of enclosed elements.

There are three main reasons to use <span> and <div> tags with class or id attributes:

Styling with CSS edit

It is common for <span> and <div> elements to carry class or id attributes in conjunction with CSS to apply layout, typographic, color, and other presentation attributes to parts of the content. CSS does not just apply to visual styling: when spoken out loud by a voice browser, CSS styling can affect speech-rate, stress, richness and even position within a stereophonic image.

For these reasons, and in support of a more semantic web, attributes attached to elements within HTML should describe their semantic purpose, rather than merely their intended display properties in one particular medium. For example, the HTML in <span class="red-bold">password too short</span> is semantically weak, whereas <em class="warning">password too short</em> uses an <em> element to signify emphasis (appearing as text in italics), and introduces a more appropriate class name. By the correct use of CSS, such 'warnings' may be rendered in a red, bold font on a screen, but when printed out they may be omitted, as by then it is too late to do anything about them. Perhaps when spoken they should be given extra stress, and a small reduction in speech-rate. The second example is semantically richer markup, rather than merely presentational.

Semantic clarity edit

This kind of grouping and labelling of parts of the page content might be introduced purely to make the page more semantically meaningful in general terms. It is impossible to say how the World Wide Web will develop in years and decades to come. Web pages designed today may still be in use when information systems that we cannot yet imagine are trawling, processing, and classifying the web. Even today's search engines such as Google and others use proprietary information processing algorithms of considerable complexity.

For some years, the World Wide Web Consortium (W3C) has been running a major Semantic Web project designed to make the whole web increasingly useful and meaningful to today's and the future's information systems.

The microformats movement is an attempt to build an idea of semantic classes. For example, microformats-aware software might automatically find an element like <span class="tel">123-456-7890</span> and allow for automatic dialing of the telephone number.

Access from code edit

Once the HTML or XHTML markup is delivered to a page-visitor's client browser, there is a chance that client-side code will need to navigate the internal structure (or Document Object Model) of the web page. The most common reason for this is that the page is delivered with client-side JavaScript that will produce on-going dynamic behaviour after the page is rendered. For example, if rolling the mouse over a 'Buy now' link is meant to make the price, elsewhere on the page, become emphasized, JavaScript code can do this, but JavaScript needs to identify the price element, wherever it is in the markup. The following markup would suffice: <div class="price">$45.99</div>. Another example is the Ajax programming technique, where, for example, clicking a hypertext link may cause JavaScript code to retrieve the text for a new price quotation to display in place of the current one within the page, without re-loading the whole page. When the new text arrives back from the server, the JavaScript must identify the exact region on the page to replace with the new information.

Automatic testing tools also may need to navigate web page markup using <span> and <div> elements' class or id attributes. In dynamically generated HTML, this may include the use of page testing tools such as HttpUnit, a member of the xUnit family, and load or stress testing tools such as Apache JMeter when applied to form-driven web sites.

Overuse edit

The judicious use of <div> and <span> is a vital part of HTML and XHTML markup. However, they are sometimes overused.

Various list structures available in HTML may be preferable to a home-made mixture of <div> and <span> elements.[6]

For example, this:

<ul class="menu"> <li>Main page</li> <li>Contents</li> <li>Help</li> </ul> 

which produces

... is usually preferable instead of this:

<div class="menu"> <span>Main page</span> <span>Contents</span> <span>Help</span> </div> 

which produces

Other examples of the semantic use of HTML rather than <div> and <span> elements include the use of <fieldset> elements to divide up a web form, the use of <legend> elements to identify such divisions and the use of <label> to identify form <input> elements rather than <div>, <span> or <table> elements used for such purposes.[7]

HTML5 introduced several new elements; a few examples include the <header>, <footer>, <nav> and <figure> elements. The use of semantically appropriate elements provides better structure to HTML documents than <span> or <div>.[8]

See also edit

References edit

  1. ^ a b "HTML5: A vocabulary and associated APIs for HTML and XHTML". W3C. 4.4 Grouping content. Retrieved 16 September 2014.
  2. ^ a b . W3C. 4.5 Text-level semantics. Archived from the original on 1 August 2015. Retrieved 16 September 2014.
  3. ^ "HTML <div> Tag". W3Schools. Retrieved 22 March 2018.
  4. ^ "HTML/Elements/span - Web Education Community Group". 2013-06-13. Retrieved 2013-11-14.[dead link]
  5. ^ "HTML 5.1: 4. The elements of HTML". W3C. Retrieved 3 August 2017.
  6. ^ Harold, Elliotte Rusty (2008). Refactoring HTML. Addison Wesley. p. 184. ISBN 978-0-321-50363-3. There is no simple way to find all the unidentified lists in a site. [...] They can be marked up in dozens of different ways: as paragraphs, divs, tables, [etc]. Once you've found a list, marking up the individual items is easy. Just use <ul>, <ol>, or <dl> instead of the current wrapper element. [...] For example to remove the bullets add this rule to the page's CSS stylesheet: [...]
  7. ^ Raggett, Dave; Arnaud Le Hors; Ian Jacobs (1999). "Adding structure to forms: the FIELDSET and LEGEND elements". HTML 4.01 Specification. W3C. Retrieved 12 July 2010. The FIELDSET element allows authors to group thematically related controls and labels. Grouping controls makes it easier for users to understand their purpose while simultaneously facilitating tabbing navigation for visual user agents and speech navigation for speech-oriented user agents. The proper use of this element makes documents more accessible.
  8. ^ van Kesteren, Anne (2010). "HTML5 differences from HTML4". W3C. Retrieved 30 June 2010.

External links edit

  • Grouping elements: the DIV and SPAN elements
  • Create a Diagonal or Slanted Div using CSS

span, html, standard, markup, language, documents, designed, displayed, browser, span, tags, elements, used, define, parts, document, that, they, identifiable, when, unique, classification, necessary, where, other, html, elements, such, paragraph, emphasis, ac. In HTML the standard markup language for documents designed to be displayed in a web browser lt div gt and lt span gt tags are elements used to define parts of a document so that they are identifiable when a unique classification is necessary Where other HTML elements such as lt p gt paragraph lt em gt emphasis and so on accurately represent the semantics of the content the additional use of lt span gt and lt div gt tags leads to better accessibility for readers and easier maintainability for authors Where no existing HTML element is applicable lt span gt and lt div gt can valuably represent parts of a document so that HTML attributes such as class id lang or dir can be applied 1 2 lt span gt represents an inline portion of a document for example words within a sentence lt div gt represents a block level portion of a document such as a few paragraphs or an image with its caption lt div gt stands for division The elements allow semantic attributes e g lang en US CSS styling e g color and typography or client side scripting e g animation hiding and augmentation to be applied 1 2 lt div gt defines a division of the document a block level item that is more distinct from elements above and below it than a span of inline material 3 Contents 1 Examples 2 History 3 Differences and default behaviour 4 Practical usage 4 1 Styling with CSS 4 2 Semantic clarity 4 3 Access from code 5 Overuse 6 See also 7 References 8 External linksExamples editFor example to make a certain part of text inside a paragraph red lt span gt can be used as follows clarification needed also include a lt div gt example HTML syntax web code used to add formatting to text Rendered output as seen by visitors of the webpage I am lt span style color red gt red lt span gt and I am lt span style color blue gt blue lt span gt I am red and I am blue History editThe lt span gt element was introduced to HTML in the internationalization working group s second draft html i18n in 1995 However it was not until HTML 4 01 that it became part of the HTML language appearing in the HTML 4 W3C Working Draft in 1997 4 lt span gt was introduced to mark up any inline span of text because a generic container is needed to carry the LANG and BIDI attributes in cases where no other element is appropriate It still serves that general purpose although a much richer range of semantic elements have been defined since then and there are also many more attributes that may need to be applied Differences and default behaviour editThere are multiple differences between lt div gt and lt span gt The most notable difference is how the elements are displayed In standard HTML a lt div gt is a block level element whereas a lt span gt is an inline element The lt div gt block visually isolates a section of a document on the page and may contain other block level components The lt span gt element contains a piece of information inline with the surrounding content and may only contain other inline level components In practice the default display of the elements can be changed by the use of Cascading Style Sheets CSS although the permitted contents of each element may not be changed For example regardless of CSS a lt span gt element may not contain block level children 5 Practical usage edit lt span gt and lt div gt elements are used purely to imply a logical grouping of enclosed elements There are three main reasons to use lt span gt and lt div gt tags with class or id attributes Styling with CSS edit See also Cascading Style Sheets and Separation of content and presentation It is common for lt span gt and lt div gt elements to carry class or id attributes in conjunction with CSS to apply layout typographic color and other presentation attributes to parts of the content CSS does not just apply to visual styling when spoken out loud by a voice browser CSS styling can affect speech rate stress richness and even position within a stereophonic image For these reasons and in support of a more semantic web attributes attached to elements within HTML should describe their semantic purpose rather than merely their intended display properties in one particular medium For example the HTML in span class p lt span span class nt span span span class na class span span class o span span class s red bold span span class p gt span password too short span class p lt span span class nt span span span class p gt span is semantically weak whereas span class p lt span span class nt em span span class na class span span class o span span class s warning span span class p gt span password too short span class p lt span span class nt em span span class p gt span uses an lt em gt element to signify emphasis appearing as text in italics and introduces a more appropriate class name By the correct use of CSS such warnings may be rendered in a red bold font on a screen but when printed out they may be omitted as by then it is too late to do anything about them Perhaps when spoken they should be given extra stress and a small reduction in speech rate The second example is semantically richer markup rather than merely presentational Semantic clarity edit This kind of grouping and labelling of parts of the page content might be introduced purely to make the page more semantically meaningful in general terms It is impossible to say how the World Wide Web will develop in years and decades to come Web pages designed today may still be in use when information systems that we cannot yet imagine are trawling processing and classifying the web Even today s search engines such as Google and others use proprietary information processing algorithms of considerable complexity For some years the World Wide Web Consortium W3C has been running a major Semantic Web project designed to make the whole web increasingly useful and meaningful to today s and the future s information systems The microformats movement is an attempt to build an idea of semantic classes For example microformats aware software might automatically find an element like span class p lt span span class nt span span span class na class span span class o span span class s tel span span class p gt span 123 456 7890 span class p lt span span class nt span span span class p gt span and allow for automatic dialing of the telephone number Access from code edit Once the HTML or XHTML markup is delivered to a page visitor s client browser there is a chance that client side code will need to navigate the internal structure or Document Object Model of the web page The most common reason for this is that the page is delivered with client side JavaScript that will produce on going dynamic behaviour after the page is rendered For example if rolling the mouse over a Buy now link is meant to make the price elsewhere on the page become emphasized JavaScript code can do this but JavaScript needs to identify the price element wherever it is in the markup The following markup would suffice span class p lt span span class nt div span span class na class span span class o span span class s price span span class p gt span 45 99 span class p lt span span class nt div span span class p gt span Another example is the Ajax programming technique where for example clicking a hypertext link may cause JavaScript code to retrieve the text for a new price quotation to display in place of the current one within the page without re loading the whole page When the new text arrives back from the server the JavaScript must identify the exact region on the page to replace with the new information Automatic testing tools also may need to navigate web page markup using lt span gt and lt div gt elements class or id attributes In dynamically generated HTML this may include the use of page testing tools such as HttpUnit a member of the xUnit family and load or stress testing tools such as Apache JMeter when applied to form driven web sites Overuse editThe judicious use of lt div gt and lt span gt is a vital part of HTML and XHTML markup However they are sometimes overused Various list structures available in HTML may be preferable to a home made mixture of lt div gt and lt span gt elements 6 For example this lt ul class menu gt lt li gt Main page lt li gt lt li gt Contents lt li gt lt li gt Help lt li gt lt ul gt which produces Main page Contents Help is usually preferable instead of this lt div class menu gt lt span gt Main page lt span gt lt span gt Contents lt span gt lt span gt Help lt span gt lt div gt which produces Main page Contents Help Other examples of the semantic use of HTML rather than lt div gt and lt span gt elements include the use of lt fieldset gt elements to divide up a web form the use of lt legend gt elements to identify such divisions and the use of lt label gt to identify form lt input gt elements rather than lt div gt lt span gt or lt table gt elements used for such purposes 7 HTML5 introduced several new elements a few examples include the lt header gt lt footer gt lt nav gt and lt figure gt elements The use of semantically appropriate elements provides better structure to HTML documents than lt span gt or lt div gt 8 See also editHTML and HTML5 HTML element HTML attribute Cascading Style Sheets and Help Cascading Style Sheets CDATA ContextObjects in Spans COinS JavaScript Semantic WebReferences edit a b HTML5 A vocabulary and associated APIs for HTML and XHTML W3C 4 4 Grouping content Retrieved 16 September 2014 a b HTML5 A vocabulary and associated APIs for HTML and XHTML W3C 4 5 Text level semantics Archived from the original on 1 August 2015 Retrieved 16 September 2014 HTML lt div gt Tag W3Schools Retrieved 22 March 2018 HTML Elements span Web Education Community Group 2013 06 13 Retrieved 2013 11 14 dead link HTML 5 1 4 The elements of HTML W3C Retrieved 3 August 2017 Harold Elliotte Rusty 2008 Refactoring HTML Addison Wesley p 184 ISBN 978 0 321 50363 3 There is no simple way to find all the unidentified lists in a site They can be marked up in dozens of different ways as paragraphs divs tables etc Once you ve found a list marking up the individual items is easy Just use lt ul gt lt ol gt or lt dl gt instead of the current wrapper element For example to remove the bullets add this rule to the page s CSS stylesheet Raggett Dave Arnaud Le Hors Ian Jacobs 1999 Adding structure to forms the FIELDSET and LEGEND elements HTML 4 01 Specification W3C Retrieved 12 July 2010 The FIELDSET element allows authors to group thematically related controls and labels Grouping controls makes it easier for users to understand their purpose while simultaneously facilitating tabbing navigation for visual user agents and speech navigation for speech oriented user agents The proper use of this element makes documents more accessible van Kesteren Anne 2010 HTML5 differences from HTML4 W3C Retrieved 30 June 2010 External links editGrouping elements the DIV and SPAN elements Create a Diagonal or Slanted Div using CSS Retrieved from https en wikipedia org w index php title Div and span amp oldid 1223792904, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.