[whatwg] <BIG> Element

Ian Hickson ian at hixie.ch
Tue Oct 30 01:47:40 PDT 2007


On Fri, 13 Jan 2006, Eugene T.S. Wong wrote:
>
> Hi again. Are tired of reading my emails yet? ;^P Please don't answer 
> that question!! ;^)
> 
> I noticed that there is a <SMALL> element, but no <BIG> element. Is 
> there a specific reason for this?

Indeed there is, as Lachlan almost immediately pointed out:

On Sat, 14 Jan 2006, Lachlan Hunt wrote:
>
> Both of them are quite presentational, but there is an attempt to 
> redefine the small element with some semantic meaning.  The same cannot 
> be said for big, it is (and probably always will be) presentational, and 
> therefore has no place in a semantic markup language.

Not much I can add to that.


On Fri, 13 Jan 2006, Eugene T.S. Wong wrote:
> 
> <I> & <B> are presentational as well.

Actually both are redefined to be media-independent in HTML5.


> > but there is an attempt to redefine the small element with some 
> > semantic meaning.
> 
> If that is true, then I encourage the WHATWG to use another name, such 
> as <FINEPRINT>ASDF</FINEPRINT>. It is a lot longer, but it does convey 
> more semantics.

As was pointed out in the original thread, the name doesn't convey 
semantics, the element and its definition do.


> A semantic markup language can't possibly have every single type of 
> semantic out there. There are some cases that are so rare, that it would 
> be a waste to define them.

Certainly.


> Sometimes <BIG> really does convey something. For example:
> 
> <P>I said, "<BIG>NO!</BIG>".</P>
> <P><BIG>YES!!</BIG> I will do it!</P>
> <P><BIG><BIG>NO!</BIG></BIG> You will not!</P>
> <P><BIG><BIG>YES!!</BIG></BIG> I will do it!</P>
> <P><BIG><BIG><BIG>NO!</BIG></BIG></BIG> You will not!</P>
> <P><BIG><BIG><BIG>YES!!</BIG></BIG></BIG> I will do it!</P>
> <P><BIG><BIG><BIG><BIG>NO!</BIG></BIG></BIG></BIG> You will not!</P>
> <P><SMALL>Oh, alright...</SMALL></P>

As was later pointed out, <em> is the appropriate element here. Shouting 
is an extreme kind of stress emphasis.


> I suppose that you could argue that CSS would create the same effect, 
> but you shouldn't have to use CSS to create the effect of a shouting 
> match. Besides, those words would have to be surrounded by elements, 
> anyways, so it wouldn't hurt to use an element that has a default style. 
> There is nothing wrong with using a non-semantic element that has a 
> default style as opposed to <SPAN class="shout">YES</SPAN>.

There is one problem, which is that user agents incapable of showing the 
original element's default style (e.g. a text mode browser with no font 
size control, or a speech browser, or a braille browser) has no guidance 
as to what to do with the contents. On the other hand, using a semantic 
element like <em> allows the user agent to intelligently substitute the 
original recommended rendering with an equivalent rendering that it can 
render on its medium.


> The problems of the past arose because:
> 
> 1) people used the wrong semantic elements
> 2) people used non-semantic elements where there were semantics
> 
> In the above scenario, there are semantics, but there are no semantic 
> elements to convey shouting.

I disagree; <em> is appropriate here.


> The elements are modifiable by CSS. I suppose that we could nest 
> <STRONG> a few times, but I don't recognize strong emphasis as the same 
> thing as shouting.

<strong> in HTML5 represents importance, so I agree that it is not 
appropriate here.


> Also, it might be helpful to use <BIG> for math problems, without having 
> to resort to MathML.

Mathematics are indeed a thorny problem. It's unclear that <big> would go 
far enough in solving it though.


On Sat, 14 Jan 2006, Lachlan Hunt wrote:
> 
> No, you're using a presentational element where a suitable semantic 
> element already exists.  It is irrelevant that it doesn't have the 
> default styling that you want from big, but that can be handled with 
> CSS.  That example should be marked up like this:
> 
> <p>I said, "<em>NO!</em>".</p>
> <p><em>YES!!</em> I will do it!</p>
> <p><em><em>NO!</em></em> You will not!</p>
> <p><em><em>YES!!</em></em> I will do it!</p>
> <p><em><em><em>NO!</em></em></em> You will not!</p>
> <p><em><em><em>YES!!</em></em></em> I will do it!</p>
> <p><em><em><em><em>NO!</em></em></em></em> You will not!</p>
> <p>Oh, alright...</p>
> 
> em { font-size: larger; }

Indeed.


On Fri, 13 Jan 2006, Eugene T.S. Wong wrote:
> 
> As I've already said, <STRONG> doesn't convey shouting. How much less 
> would <EM> convey shouting? The answer is "much less"!

In HTML5 <em> and <strong> are orthogonal in definition.


On Sat, 14 Jan 2006, James Graham wrote:
> 
> Although the HTML5 spec does admit a small number of elements of 
> questionable semantics (at least historically - they have mostly been 
> redefined to have non-presentational meanings) it is only the elements 
> that are in wide use and address a use-case that is not already covered 
> by another element that have received this special treatment. <small> 
> was eligible because it is very commonly used for a single purpose and 
> the definition of small as "(legal) small print" basically makes sense. 
> <big> does not get the special treatment because there is no use case 
> that isn't covered by CSS, <em> and <strong>.

Right.


On Sun, 15 Jan 2006, Anne van Kesteren wrote:
> 
> It does not. The "semantics" of an element are bound to the definition 
> of it, not to the name.

Indeed.


> I think nested <em> elements are in order here. You don't really need 
> <big> for that. <big> does not represent "shouting" in any definition 
> I've seen so far and <em> comes pretty close as generic element.

Indeed.


> > Also, it might be helpful to use <BIG> for math problems, without 
> > having to resort to MathML.
> 
> <big> can't possibly be defined to mean two different things while 
> staying in the same namespace. Well, I suppose it could be based on the 
> context it is placed in, but I think that would get confusing. Also, 
> there is MathML.

Indeed.


On Mon, 16 Jan 2006, Eugene T.S. Wong wrote:
> 
> Hmm, I was under the impression that we have selectors and classes to 
> define elements to have more than 1 meaning..?

CSS doesn't define meaning, only presentation.


On Tue, 17 Jan 2006, Anne van Kesteren wrote:
> 
> Not sure what you meant with "selectors". The "class" attribute can't 
> really give meaning either although there are some efforts going on to 
> give you that option. That really sounds suboptimal though. Especially 
> in this situation where you want to use an element both for mathematics 
> and shouting...

Indeed.

-- 
Ian Hickson               U+1047E                )\._.,--....,'``.    fL
http://ln.hixie.ch/       U+263A                /,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'



More information about the whatwg mailing list