- From: Leif Halvard Silli <xn--mlform-iua@xn--mlform-iua.no>
- Date: Tue, 2 Nov 2010 03:52:51 +0100
- To: Henri Sivonen <hsivonen@iki.fi>
- Cc: Sam Ruby <rubys@intertwingly.net>, HTML WG <public-html@w3.org>
Henri Sivonen, Tue, 5 Oct 2010 00:07:28 -0700 (PDT): > The current draft of the Change Proposal is at > http://www.w3.org/html/wg/wiki/ChangeProposals/FigureInP Thank you for the invitation to contribute. So far I've added some in the Positive Effects section of the CP. [ snip ] > The more controversial part makes a figure element on the tree > builder stack prevent an ancestor p from closing when an element that > would otherwise autoclose p appears as a descendant of figure. In > other words, figure becomes like button as far as p autoclosing goes. > Since legacy parsers don't know about figure at all, this is a novel > feature. This feature makes it possible to present any content > (including pre and table) as a figure even when figure is a child of > p. Authors would benefit from this part once they no longer try to > make their pages work in browsers that predate this change. > > I invite feedback on these two aspects of the proposal particularly > from practicing Web designers. I consider this *the* positive side of the proposal. And, it also echoes things that have been said in this group before, and which the vendors thus have been aware of: <figure>, as curently defined, can only be used to caption images that are kept outside of paragraphs. E.g. it was one of the issues that brougth up when Shelley objected to <figure>. HTML5 already *implicitly* allows paragraphs to be nested - per the description of the paragraph *concept* (as opposed to the paragrph *element*). [1] The only thing that HTML5 does not allow, is to explicitly express in with mark-up. This change proposal allows us to keep two concept separate, which currently (in HTML4) are kept together: it would allow us to use <figure> for marking up what is a figure - regardls of its strucure or content, and it would allow us to use <object> solely for embedding. In HTML4 one must instead use the object elements for both purposes. One question that I think the CP should clarify is the following: When it comes to <object>, then it is permitted to wrap it inside a inline element, such as <span>: <span><object/></span>. What about <figure/>? Would it be permitted to do <p><span><figure/></span></p>? You make some comparsions to <button/> - and it *is* permitted to wrap a <button/> inside <span/> (or inside a <dfn/>, for that matter). It is a pitty that Webkit seems to spit block elements out of the <p/>, despite that they appear inside <figure>. (Reminds me a lot about how Webkit handles the <caption> element.) But IE (tested IE7), Firefox 3.6 Opera 10.x do not have problems that way. Opera have problems, nut not as many as my Safari. That it is possible to work around the problems in Safari and Opera by using <object> as a wrapper, illustrates one of the reasons why I support this proposal: We should have a unfied way of handling block elements that are nested inside a <p>. In contrast to the current status, whether the elements fallback content or visible to all, should irrelevant. [1] http://dev.w3.org/html5/spec/content-models#paragraphs -- leif halvard silli
Received on Tuesday, 2 November 2010 02:53:28 UTC