<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.whatwg.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mjs</id>
	<title>WHATWG Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.whatwg.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mjs"/>
	<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/wiki/Special:Contributions/Mjs"/>
	<updated>2026-04-18T15:47:02Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=New_Features_Awaiting_Implementation_Interest&amp;diff=8784</id>
		<title>New Features Awaiting Implementation Interest</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=New_Features_Awaiting_Implementation_Interest&amp;diff=8784"/>
		<updated>2012-11-22T00:56:30Z</updated>

		<summary type="html">&lt;p&gt;Mjs: Fix Dean Jackson&amp;#039;s affiliation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;There are features that have been requested, but for which we are lacking implementor interest. Without two or more vendors interested in implementing the feature, they are unlikely to get added to the specs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table class=&amp;quot;wikitable&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;th rowspan=2&amp;gt;Feature &amp;lt;th colspan=6&amp;gt;Interest indicated by... &amp;lt;th rowspan=2&amp;gt;Comments&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;th&amp;gt;Mozilla (Firefox) &amp;lt;th&amp;gt;Opera &amp;lt;th&amp;gt;Microsoft (IE) &amp;lt;th&amp;gt;Apple (Safari) &amp;lt;th&amp;gt;Google (Chrome) &amp;lt;th&amp;gt;Others&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;[http://lists.w3.org/Archives/Public/public-whatwg-archive/2012Jan/0082.html Progress events on IMG elements]&lt;br /&gt;
 &amp;lt;td&amp;gt;[http://lists.w3.org/Archives/Public/public-whatwg-archive/2012Jan/0195.html Jonas Sicking]&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;[http://lists.webkit.org/pipermail/webkit-dev/2012-January/019182.html Dean Jackson]&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;Will likely be added soon&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;[https://bugzilla.mozilla.org/show_bug.cgi?id=803124 Canvas: isPointInStroke]&lt;br /&gt;
 &amp;lt;td&amp;gt;[http://lists.w3.org/Archives/Public/public-whatwg-archive/2012Nov/0148.html Jeff Muizelaar]&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;[https://bugzilla.mozilla.org/show_bug.cgi?id=655926 Canvas: fillRule]&lt;br /&gt;
 &amp;lt;td&amp;gt;[http://lists.w3.org/Archives/Public/public-whatwg-archive/2011Jun/0123.html Chris Jones]&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;[[AllowSeamless|Cross-origin seamless iframes]]&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt; Adam Barth&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;[http://lists.w3.org/Archives/Public/public-whatwg-archive/2012Nov/0272.html A method to trigger autofill]&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt; [http://lists.w3.org/Archives/Public/public-whatwg-archive/2012Oct/0231.html Elliott Sprehn], [http://lists.w3.org/Archives/Public/public-whatwg-archive/2012Nov/0289.html Peter Kasting]&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;The &amp;amp;lt;menu&amp;gt; feature with many elements providing commands&lt;br /&gt;
 &amp;lt;td&amp;gt;&#039;&#039;Negative interest&#039;&#039;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;Will likely be dropped if no interest is indicated&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;[[FormData]]&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;[http://lists.w3.org/Archives/Public/public-whatwg-archive/2010Jul/0238.html Canvas: Stroke alignment]&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
 &amp;lt;td&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Getting_started_with_browser_development&amp;diff=8142</id>
		<title>Getting started with browser development</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Getting_started_with_browser_development&amp;diff=8142"/>
		<updated>2012-05-16T17:47:51Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Webkit */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
&lt;br /&gt;
= Getting started with browser development =&lt;br /&gt;
Want to get started with browser development, e.g. help implement HTML?&lt;br /&gt;
&lt;br /&gt;
== General Approaches ==&lt;br /&gt;
*  finding and filing bugs to various browsers&#039; bug databases is a great way to get involved&lt;br /&gt;
&lt;br /&gt;
== Specific Browser Engines ==&lt;br /&gt;
Help with the development of specific browser engines. (alphabetical, please feel free to add/insert more).&lt;br /&gt;
&lt;br /&gt;
=== Gecko ===&lt;br /&gt;
Gecko powers the Firefox browser.&lt;br /&gt;
* http://www.mozilla.org/contribute&lt;br /&gt;
* https://developer.mozilla.org/en/Introduction&lt;br /&gt;
&lt;br /&gt;
=== Presto ===&lt;br /&gt;
Opera uses the Presto engine.&lt;br /&gt;
* http://opera.jobs/&lt;br /&gt;
&lt;br /&gt;
=== Webkit ===&lt;br /&gt;
Webkit is used by Safari, Chrome, and recent BlackBerry browsers.&lt;br /&gt;
* http://www.webkit.org/building/checkout.html&lt;br /&gt;
* http://www.webkit.org/building/build.html&lt;br /&gt;
* http://www.webkit.org/coding/contributing.html&lt;br /&gt;
* http://www.webkit.org/quality/reporting.html&lt;br /&gt;
* http://www.webkit.org/quality/testwriting.html&lt;br /&gt;
* http://jobs.apple.com/ - search for WebKit&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
* [[Specs]]&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6579</id>
		<title>Dialogs</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6579"/>
		<updated>2011-06-23T07:22:18Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Lightboxes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Problem statement =&lt;br /&gt;
&lt;br /&gt;
There&#039;s no markup or API for dialog boxes, tool palettes, hovering tooltips, the contents of popup widgets, and the like.&lt;br /&gt;
&lt;br /&gt;
== Real world examples today ==&lt;br /&gt;
&lt;br /&gt;
=== Dialogs ===&lt;br /&gt;
&lt;br /&gt;
==== Registration Dialogs ====&lt;br /&gt;
&lt;br /&gt;
* http://www.reddit.com/ - make sure to be logged out if you have an account, and click the register link&lt;br /&gt;
* http://digg.com/ - make sure to be logged out if you have an account, and click the Join Digg! button&lt;br /&gt;
* http://slashdot.org/ - make sure to be logged out if you have an account, and click the Join link&lt;br /&gt;
&lt;br /&gt;
==== Login Dialogs ====&lt;br /&gt;
&lt;br /&gt;
* http://slashdot.org/ - make sure to be logged out if you have an account, and click the Log In link&lt;br /&gt;
* http://digg.com/ - make sure to be logged out if you have an account, and click the Login button&lt;br /&gt;
* http://newsvine.com/ - make sure to be logged out if you have an account, and click the Log In | Register link&lt;br /&gt;
* http://www.bahn.de/ - Login link is rightmost in main navigation bar - try tapping: funny handling of focus order, skipping positions, at times keyboard trap&lt;br /&gt;
&lt;br /&gt;
=== Other Dialogs ===&lt;br /&gt;
&lt;br /&gt;
* http://www.kongregate.com/ - register for account, log in, click Get Kreds, click Fund Your Account button&lt;br /&gt;
* GMail - Click &amp;quot;more&amp;quot; on the left, then Create New Label.&lt;br /&gt;
&lt;br /&gt;
=== Tooltips ===&lt;br /&gt;
&lt;br /&gt;
* The tooltips in the table of [http://bioinfo-prod.mpl.ird.fr/xantho/x.org/gui/seqterm.php] are interesting because they are currently &amp;amp;lt;div&amp;gt;s and force the parent to be a TD rather than a TH since TH is inline only, even though the visible content is really just phrasing content.&lt;br /&gt;
&lt;br /&gt;
* GMail&#039;s contacts list has rich tooltips.&lt;br /&gt;
&lt;br /&gt;
=== Lightboxes ===&lt;br /&gt;
&lt;br /&gt;
* http://www.flickr.com/photos/christina_stasia/5317650777/in/pool-44124373027@N01/ - click on the magnifying glass icon in the top toolbar.&lt;br /&gt;
* http://trailers.apple.com/trailers/independent/therift/ - click &amp;quot;View Trailers&amp;quot; and then &amp;quot;Teaser&amp;quot; - video lightbox, many other examples on trailers.apple.com&lt;br /&gt;
* http://warmetal.wikia.com/wiki/Aegis - click on the picture of the card&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;br /&gt;
&lt;br /&gt;
A list of URLs from Steve Faulkner to look at — if anyone has the time to go through these and pick out those that are real use cases (as opposed to demos or examples, since those tend to not reflect real needs but more reflect what&#039;s easy to demo!) then please add them where appropriate above.&lt;br /&gt;
&lt;br /&gt;
http://flowplayer.org/tools/overlay/index.html&lt;br /&gt;
http://alloy.liferay.com/deploy/demos/dialog/&lt;br /&gt;
http://www.bbc.co.uk/glow/docs/1.5/furtherinfo/widgets/overlay/&lt;br /&gt;
http://rightjs.org/ui/dialog/demo&lt;br /&gt;
http://jqueryui.com/demos/dialog/&lt;br /&gt;
http://download.dojotoolkit.org/release-0.4.2/dojo-0.4.2p1-widget/tests/widget/test_Dialog.html&lt;br /&gt;
http://www.sencha.com/examples/pages/window/hello.html&lt;br /&gt;
http://www.sencha.com/examples/pages/window/dialog.html&lt;br /&gt;
http://www.sencha.com/examples/pages/window/accordion.html&lt;br /&gt;
http://dev.sencha.com/deploy/ext-4.0.2a/examples/window/window.html&lt;br /&gt;
http://leandrovieira.com/projects/jquery/lightbox/&lt;br /&gt;
http://www.huddletogether.com/projects/lightbox/&lt;br /&gt;
http://developer.yahoo.com/yui/examples/container/panel.html&lt;br /&gt;
http://reghellin.com/milkbox/&lt;br /&gt;
http://bertramakers.com/moolabs/imagezoom.php&lt;br /&gt;
http://www.aryweb.nl/projects/MooDialog/&lt;br /&gt;
&lt;br /&gt;
== Code Examples ==&lt;br /&gt;
=== Reddit ===&lt;br /&gt;
&lt;br /&gt;
HTML:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;a href=&amp;quot;#&amp;quot; onclick=&amp;quot;return showcover(false);&amp;quot;&amp;gt;register&amp;lt;/a&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;div class=&amp;quot;login-popup cover-overlay&amp;quot; style=&amp;quot;display: none; &amp;quot;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;cover&amp;quot; onclick=&amp;quot;return hidecover(this)&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;popup&amp;quot;&amp;gt;&lt;br /&gt;
        ...&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Javascript:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
function showcover(a, b) {&lt;br /&gt;
    $(&amp;quot;.login-popup:first&amp;quot;).show().find(&#039;form input[name=&amp;quot;reason&amp;quot;]&#039;).val(b || &amp;quot;&amp;quot;);&lt;br /&gt;
    return !1&lt;br /&gt;
}&lt;br /&gt;
function hidecover(a) {&lt;br /&gt;
    $(a).parents(&amp;quot;.cover-overlay&amp;quot;).hide();&lt;br /&gt;
    return !1&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(showcover() has been truncated to remove code not relevant to showing the dialog: if variable a is set as &#039;true&#039;, another element (not found in this page) is also shown)&lt;br /&gt;
&lt;br /&gt;
CSS:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.popup {&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  left: 10%;&lt;br /&gt;
  background-color: white;&lt;br /&gt;
  top: 40px;&lt;br /&gt;
  width: 80%;&lt;br /&gt;
  z-index: 1001;&lt;br /&gt;
}&lt;br /&gt;
.cover {&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  top: 0px;&lt;br /&gt;
  left: 0px;&lt;br /&gt;
  height: 100%;&lt;br /&gt;
  width: 100%;&lt;br /&gt;
  background-color: gray;&lt;br /&gt;
  opacity: .7;&lt;br /&gt;
  z-index: 1000;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Slashdot ===&lt;br /&gt;
HTML:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;modal_cover&amp;quot; class=&amp;quot;push&amp;quot; onclick=&amp;quot;hide_modal_box(); return false;&amp;quot; style=&amp;quot;display: none;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;modal_box&amp;quot; class=&amp;quot;push&amp;quot; style=&amp;quot;display: none;&amp;quot;&amp;gt;&lt;br /&gt;
   ...&lt;br /&gt;
   &amp;lt;div id=&amp;quot;modal_box_content&amp;quot;&amp;gt;...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;a href=&amp;quot;//slashdot.org/my/newuser&amp;quot; onclick=&amp;quot;javascript:getModalPrefs(&#039;newUserModal&#039;, &#039;Create Account&#039;, 1); $(&#039;#modal_box&#039;).addClass(&#039;join&#039;); return false;&amp;quot; class=&amp;quot;btn link&amp;quot;&amp;gt;Join&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Javascript: (getModalPrefs has been truncated to remove code not relevant to showing the dialog)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
function getModalPrefs(section, title, tabbed, params) {&lt;br /&gt;
    Slash.busy(BUSY_FETCHING_MODAL, true);&lt;br /&gt;
    $bg = get_modal_parts(&#039;#modal_cover&#039;).css(&#039;opacity&#039;, 0.75).show();&lt;br /&gt;
    $any(&#039;modal_box_content&#039;).load(&#039;/ajax.pl&#039;, $.extend({op: this_op,section: section,reskey: reskey_static,tabbed: tabbed,return_to: return_to}, params || null), function(response, status, transport) {&lt;br /&gt;
        if (status === &#039;success&#039;) {&lt;br /&gt;
            $any(&#039;preference_title&#039;).html(title);&lt;br /&gt;
            var $modal = show_modal_box().data(&#039;tabbed&#039;, tabbed);&lt;br /&gt;
            tabbed &amp;amp;&amp;amp; $modal.addClass(&amp;quot;tabbed&amp;quot;);&lt;br /&gt;
        } else {&lt;br /&gt;
            $bg.hide();&lt;br /&gt;
        }&lt;br /&gt;
        Slash.busy(BUSY_FETCHING_MODAL, false);&lt;br /&gt;
    });&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function show_modal_box() {&lt;br /&gt;
    return custom_modal_box(&#039;show&#039;).keyup(function(e) {&lt;br /&gt;
        e.which == $.ui.keyCode.ESCAPE &amp;amp;&amp;amp; hide_modal_box();&lt;br /&gt;
    });&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function hide_modal_box() {&lt;br /&gt;
    var retainclass = &amp;quot; &amp;quot;;&lt;br /&gt;
    if ($(&#039;#modal_box&#039;).hasClass(&#039;push&#039;)) {&lt;br /&gt;
        retainclasses = &#039;push&#039;;&lt;br /&gt;
    }&lt;br /&gt;
    custom_modal_box(&#039;hide&#039;).hide().attr(&#039;style&#039;, &#039;display: none;&#039;).removeClass().addClass(retainclasses).removeData(&#039;tabbed&#039;).unbind();&lt;br /&gt;
    if (document.forms.modal_prefs &amp;amp;&amp;amp; document.forms.modal_prefs.refresh_onclose &amp;amp;&amp;amp; document.forms.modal_prefs.refresh_onclose.value) {&lt;br /&gt;
        document.location = document.URL;&lt;br /&gt;
    }&lt;br /&gt;
    return false;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CSS:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#modal_box.join {&lt;br /&gt;
  margin: 0px 33% 0;&lt;br /&gt;
  width: 390px;&lt;br /&gt;
  height: 440px;&lt;br /&gt;
}&lt;br /&gt;
#embbeded_login_modal.push, #modal_box.push {&lt;br /&gt;
  margin-top: 9em !important;&lt;br /&gt;
}&lt;br /&gt;
#modal_box {&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  z-index: 1000001;&lt;br /&gt;
}&lt;br /&gt;
#modal_cover {&lt;br /&gt;
  margin-top: -12px;&lt;br /&gt;
  margin-left: -13px;&lt;br /&gt;
  background: rgba(0, 0, 0, .6);&lt;br /&gt;
  height: 100%;&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  width: 100%;&lt;br /&gt;
  z-index: 1000000;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===DB Dahn===&lt;br /&gt;
HTML:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;li id=&amp;quot;mn-login&amp;quot; class=&amp;quot;rollover&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;a href=&amp;quot;https://fahrkarten.bahn.de/privatkunde/start/start.post?lang=de&amp;amp;amp;scope=login&amp;quot; id=&amp;quot;login&amp;quot; class=&amp;quot;jhover&amp;quot; rel=&amp;quot;nofollow&amp;quot;&amp;gt;&amp;lt;span&amp;gt;Login&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;
    &amp;lt;h3&amp;gt;&amp;lt;span&amp;gt;Login&amp;lt;/span&amp;gt;&amp;lt;/h3&amp;gt;&lt;br /&gt;
    &amp;lt;ul&amp;gt;...&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If #mn-login is given class of rollover (done using javascript on focus and mouseover, removed on blur, the h3 and ul tags are displayed in CSS:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#main-nav ul ul, #main-nav ul h3 {&lt;br /&gt;
  border: 1px solid #9FA3AB;&lt;br /&gt;
  display: none;&lt;br /&gt;
  left: -9999em;&lt;br /&gt;
  position: absolute;&lt;br /&gt;
}&lt;br /&gt;
#main-nav li#mn-login.rollover h3 {&lt;br /&gt;
  left: -6px;&lt;br /&gt;
}&lt;br /&gt;
#main-nav li#mn-login.rollover ul {&lt;br /&gt;
  left: auto;&lt;br /&gt;
  right: 6px;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Proposals]]&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6578</id>
		<title>Dialogs</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6578"/>
		<updated>2011-06-23T07:19:17Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Lightboxes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Problem statement =&lt;br /&gt;
&lt;br /&gt;
There&#039;s no markup or API for dialog boxes, tool palettes, hovering tooltips, the contents of popup widgets, and the like.&lt;br /&gt;
&lt;br /&gt;
== Real world examples today ==&lt;br /&gt;
&lt;br /&gt;
=== Dialogs ===&lt;br /&gt;
&lt;br /&gt;
==== Registration Dialogs ====&lt;br /&gt;
&lt;br /&gt;
* http://www.reddit.com/ - make sure to be logged out if you have an account, and click the register link&lt;br /&gt;
* http://digg.com/ - make sure to be logged out if you have an account, and click the Join Digg! button&lt;br /&gt;
* http://slashdot.org/ - make sure to be logged out if you have an account, and click the Join link&lt;br /&gt;
&lt;br /&gt;
==== Login Dialogs ====&lt;br /&gt;
&lt;br /&gt;
* http://slashdot.org/ - make sure to be logged out if you have an account, and click the Log In link&lt;br /&gt;
* http://digg.com/ - make sure to be logged out if you have an account, and click the Login button&lt;br /&gt;
* http://newsvine.com/ - make sure to be logged out if you have an account, and click the Log In | Register link&lt;br /&gt;
* http://www.bahn.de/ - Login link is rightmost in main navigation bar - try tapping: funny handling of focus order, skipping positions, at times keyboard trap&lt;br /&gt;
&lt;br /&gt;
=== Other Dialogs ===&lt;br /&gt;
&lt;br /&gt;
* http://www.kongregate.com/ - register for account, log in, click Get Kreds, click Fund Your Account button&lt;br /&gt;
* GMail - Click &amp;quot;more&amp;quot; on the left, then Create New Label.&lt;br /&gt;
&lt;br /&gt;
=== Tooltips ===&lt;br /&gt;
&lt;br /&gt;
* The tooltips in the table of [http://bioinfo-prod.mpl.ird.fr/xantho/x.org/gui/seqterm.php] are interesting because they are currently &amp;amp;lt;div&amp;gt;s and force the parent to be a TD rather than a TH since TH is inline only, even though the visible content is really just phrasing content.&lt;br /&gt;
&lt;br /&gt;
* GMail&#039;s contacts list has rich tooltips.&lt;br /&gt;
&lt;br /&gt;
=== Lightboxes ===&lt;br /&gt;
&lt;br /&gt;
* http://www.flickr.com/photos/christina_stasia/5317650777/in/pool-44124373027@N01/ - click on the magnifying glass icon in the top toolbar.&lt;br /&gt;
* http://trailers.apple.com/trailers/independent/therift/ - click &amp;quot;View Trailers&amp;quot; and then &amp;quot;Teaser&amp;quot; - video lightbox, many other examples on trailers.apple.com&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;br /&gt;
&lt;br /&gt;
A list of URLs from Steve Faulkner to look at — if anyone has the time to go through these and pick out those that are real use cases (as opposed to demos or examples, since those tend to not reflect real needs but more reflect what&#039;s easy to demo!) then please add them where appropriate above.&lt;br /&gt;
&lt;br /&gt;
http://flowplayer.org/tools/overlay/index.html&lt;br /&gt;
http://alloy.liferay.com/deploy/demos/dialog/&lt;br /&gt;
http://www.bbc.co.uk/glow/docs/1.5/furtherinfo/widgets/overlay/&lt;br /&gt;
http://rightjs.org/ui/dialog/demo&lt;br /&gt;
http://jqueryui.com/demos/dialog/&lt;br /&gt;
http://download.dojotoolkit.org/release-0.4.2/dojo-0.4.2p1-widget/tests/widget/test_Dialog.html&lt;br /&gt;
http://www.sencha.com/examples/pages/window/hello.html&lt;br /&gt;
http://www.sencha.com/examples/pages/window/dialog.html&lt;br /&gt;
http://www.sencha.com/examples/pages/window/accordion.html&lt;br /&gt;
http://dev.sencha.com/deploy/ext-4.0.2a/examples/window/window.html&lt;br /&gt;
http://leandrovieira.com/projects/jquery/lightbox/&lt;br /&gt;
http://www.huddletogether.com/projects/lightbox/&lt;br /&gt;
http://developer.yahoo.com/yui/examples/container/panel.html&lt;br /&gt;
http://reghellin.com/milkbox/&lt;br /&gt;
http://bertramakers.com/moolabs/imagezoom.php&lt;br /&gt;
http://www.aryweb.nl/projects/MooDialog/&lt;br /&gt;
&lt;br /&gt;
== Code Examples ==&lt;br /&gt;
=== Reddit ===&lt;br /&gt;
&lt;br /&gt;
HTML:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;a href=&amp;quot;#&amp;quot; onclick=&amp;quot;return showcover(false);&amp;quot;&amp;gt;register&amp;lt;/a&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;div class=&amp;quot;login-popup cover-overlay&amp;quot; style=&amp;quot;display: none; &amp;quot;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;cover&amp;quot; onclick=&amp;quot;return hidecover(this)&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;popup&amp;quot;&amp;gt;&lt;br /&gt;
        ...&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Javascript:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
function showcover(a, b) {&lt;br /&gt;
    $(&amp;quot;.login-popup:first&amp;quot;).show().find(&#039;form input[name=&amp;quot;reason&amp;quot;]&#039;).val(b || &amp;quot;&amp;quot;);&lt;br /&gt;
    return !1&lt;br /&gt;
}&lt;br /&gt;
function hidecover(a) {&lt;br /&gt;
    $(a).parents(&amp;quot;.cover-overlay&amp;quot;).hide();&lt;br /&gt;
    return !1&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(showcover() has been truncated to remove code not relevant to showing the dialog: if variable a is set as &#039;true&#039;, another element (not found in this page) is also shown)&lt;br /&gt;
&lt;br /&gt;
CSS:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.popup {&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  left: 10%;&lt;br /&gt;
  background-color: white;&lt;br /&gt;
  top: 40px;&lt;br /&gt;
  width: 80%;&lt;br /&gt;
  z-index: 1001;&lt;br /&gt;
}&lt;br /&gt;
.cover {&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  top: 0px;&lt;br /&gt;
  left: 0px;&lt;br /&gt;
  height: 100%;&lt;br /&gt;
  width: 100%;&lt;br /&gt;
  background-color: gray;&lt;br /&gt;
  opacity: .7;&lt;br /&gt;
  z-index: 1000;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Slashdot ===&lt;br /&gt;
HTML:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;modal_cover&amp;quot; class=&amp;quot;push&amp;quot; onclick=&amp;quot;hide_modal_box(); return false;&amp;quot; style=&amp;quot;display: none;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;modal_box&amp;quot; class=&amp;quot;push&amp;quot; style=&amp;quot;display: none;&amp;quot;&amp;gt;&lt;br /&gt;
   ...&lt;br /&gt;
   &amp;lt;div id=&amp;quot;modal_box_content&amp;quot;&amp;gt;...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;a href=&amp;quot;//slashdot.org/my/newuser&amp;quot; onclick=&amp;quot;javascript:getModalPrefs(&#039;newUserModal&#039;, &#039;Create Account&#039;, 1); $(&#039;#modal_box&#039;).addClass(&#039;join&#039;); return false;&amp;quot; class=&amp;quot;btn link&amp;quot;&amp;gt;Join&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Javascript: (getModalPrefs has been truncated to remove code not relevant to showing the dialog)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
function getModalPrefs(section, title, tabbed, params) {&lt;br /&gt;
    Slash.busy(BUSY_FETCHING_MODAL, true);&lt;br /&gt;
    $bg = get_modal_parts(&#039;#modal_cover&#039;).css(&#039;opacity&#039;, 0.75).show();&lt;br /&gt;
    $any(&#039;modal_box_content&#039;).load(&#039;/ajax.pl&#039;, $.extend({op: this_op,section: section,reskey: reskey_static,tabbed: tabbed,return_to: return_to}, params || null), function(response, status, transport) {&lt;br /&gt;
        if (status === &#039;success&#039;) {&lt;br /&gt;
            $any(&#039;preference_title&#039;).html(title);&lt;br /&gt;
            var $modal = show_modal_box().data(&#039;tabbed&#039;, tabbed);&lt;br /&gt;
            tabbed &amp;amp;&amp;amp; $modal.addClass(&amp;quot;tabbed&amp;quot;);&lt;br /&gt;
        } else {&lt;br /&gt;
            $bg.hide();&lt;br /&gt;
        }&lt;br /&gt;
        Slash.busy(BUSY_FETCHING_MODAL, false);&lt;br /&gt;
    });&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function show_modal_box() {&lt;br /&gt;
    return custom_modal_box(&#039;show&#039;).keyup(function(e) {&lt;br /&gt;
        e.which == $.ui.keyCode.ESCAPE &amp;amp;&amp;amp; hide_modal_box();&lt;br /&gt;
    });&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function hide_modal_box() {&lt;br /&gt;
    var retainclass = &amp;quot; &amp;quot;;&lt;br /&gt;
    if ($(&#039;#modal_box&#039;).hasClass(&#039;push&#039;)) {&lt;br /&gt;
        retainclasses = &#039;push&#039;;&lt;br /&gt;
    }&lt;br /&gt;
    custom_modal_box(&#039;hide&#039;).hide().attr(&#039;style&#039;, &#039;display: none;&#039;).removeClass().addClass(retainclasses).removeData(&#039;tabbed&#039;).unbind();&lt;br /&gt;
    if (document.forms.modal_prefs &amp;amp;&amp;amp; document.forms.modal_prefs.refresh_onclose &amp;amp;&amp;amp; document.forms.modal_prefs.refresh_onclose.value) {&lt;br /&gt;
        document.location = document.URL;&lt;br /&gt;
    }&lt;br /&gt;
    return false;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CSS:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#modal_box.join {&lt;br /&gt;
  margin: 0px 33% 0;&lt;br /&gt;
  width: 390px;&lt;br /&gt;
  height: 440px;&lt;br /&gt;
}&lt;br /&gt;
#embbeded_login_modal.push, #modal_box.push {&lt;br /&gt;
  margin-top: 9em !important;&lt;br /&gt;
}&lt;br /&gt;
#modal_box {&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  z-index: 1000001;&lt;br /&gt;
}&lt;br /&gt;
#modal_cover {&lt;br /&gt;
  margin-top: -12px;&lt;br /&gt;
  margin-left: -13px;&lt;br /&gt;
  background: rgba(0, 0, 0, .6);&lt;br /&gt;
  height: 100%;&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  width: 100%;&lt;br /&gt;
  z-index: 1000000;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===DB Dahn===&lt;br /&gt;
HTML:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;li id=&amp;quot;mn-login&amp;quot; class=&amp;quot;rollover&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;a href=&amp;quot;https://fahrkarten.bahn.de/privatkunde/start/start.post?lang=de&amp;amp;amp;scope=login&amp;quot; id=&amp;quot;login&amp;quot; class=&amp;quot;jhover&amp;quot; rel=&amp;quot;nofollow&amp;quot;&amp;gt;&amp;lt;span&amp;gt;Login&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;
    &amp;lt;h3&amp;gt;&amp;lt;span&amp;gt;Login&amp;lt;/span&amp;gt;&amp;lt;/h3&amp;gt;&lt;br /&gt;
    &amp;lt;ul&amp;gt;...&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If #mn-login is given class of rollover (done using javascript on focus and mouseover, removed on blur, the h3 and ul tags are displayed in CSS:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#main-nav ul ul, #main-nav ul h3 {&lt;br /&gt;
  border: 1px solid #9FA3AB;&lt;br /&gt;
  display: none;&lt;br /&gt;
  left: -9999em;&lt;br /&gt;
  position: absolute;&lt;br /&gt;
}&lt;br /&gt;
#main-nav li#mn-login.rollover h3 {&lt;br /&gt;
  left: -6px;&lt;br /&gt;
}&lt;br /&gt;
#main-nav li#mn-login.rollover ul {&lt;br /&gt;
  left: auto;&lt;br /&gt;
  right: 6px;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Proposals]]&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6577</id>
		<title>Dialogs</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6577"/>
		<updated>2011-06-23T07:16:13Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Login Dialogs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Problem statement =&lt;br /&gt;
&lt;br /&gt;
There&#039;s no markup or API for dialog boxes, tool palettes, hovering tooltips, the contents of popup widgets, and the like.&lt;br /&gt;
&lt;br /&gt;
== Real world examples today ==&lt;br /&gt;
&lt;br /&gt;
=== Dialogs ===&lt;br /&gt;
&lt;br /&gt;
==== Registration Dialogs ====&lt;br /&gt;
&lt;br /&gt;
* http://www.reddit.com/ - make sure to be logged out if you have an account, and click the register link&lt;br /&gt;
* http://digg.com/ - make sure to be logged out if you have an account, and click the Join Digg! button&lt;br /&gt;
* http://slashdot.org/ - make sure to be logged out if you have an account, and click the Join link&lt;br /&gt;
&lt;br /&gt;
==== Login Dialogs ====&lt;br /&gt;
&lt;br /&gt;
* http://slashdot.org/ - make sure to be logged out if you have an account, and click the Log In link&lt;br /&gt;
* http://digg.com/ - make sure to be logged out if you have an account, and click the Login button&lt;br /&gt;
* http://newsvine.com/ - make sure to be logged out if you have an account, and click the Log In | Register link&lt;br /&gt;
* http://www.bahn.de/ - Login link is rightmost in main navigation bar - try tapping: funny handling of focus order, skipping positions, at times keyboard trap&lt;br /&gt;
&lt;br /&gt;
=== Other Dialogs ===&lt;br /&gt;
&lt;br /&gt;
* http://www.kongregate.com/ - register for account, log in, click Get Kreds, click Fund Your Account button&lt;br /&gt;
* GMail - Click &amp;quot;more&amp;quot; on the left, then Create New Label.&lt;br /&gt;
&lt;br /&gt;
=== Tooltips ===&lt;br /&gt;
&lt;br /&gt;
* The tooltips in the table of [http://bioinfo-prod.mpl.ird.fr/xantho/x.org/gui/seqterm.php] are interesting because they are currently &amp;amp;lt;div&amp;gt;s and force the parent to be a TD rather than a TH since TH is inline only, even though the visible content is really just phrasing content.&lt;br /&gt;
&lt;br /&gt;
* GMail&#039;s contacts list has rich tooltips.&lt;br /&gt;
&lt;br /&gt;
=== Lightboxes ===&lt;br /&gt;
&lt;br /&gt;
* http://www.flickr.com/photos/christina_stasia/5317650777/in/pool-44124373027@N01/ - click on the magnifying glass icon in the top toolbar.&lt;br /&gt;
&lt;br /&gt;
=== Other ===&lt;br /&gt;
&lt;br /&gt;
A list of URLs from Steve Faulkner to look at — if anyone has the time to go through these and pick out those that are real use cases (as opposed to demos or examples, since those tend to not reflect real needs but more reflect what&#039;s easy to demo!) then please add them where appropriate above.&lt;br /&gt;
&lt;br /&gt;
http://flowplayer.org/tools/overlay/index.html&lt;br /&gt;
http://alloy.liferay.com/deploy/demos/dialog/&lt;br /&gt;
http://www.bbc.co.uk/glow/docs/1.5/furtherinfo/widgets/overlay/&lt;br /&gt;
http://rightjs.org/ui/dialog/demo&lt;br /&gt;
http://jqueryui.com/demos/dialog/&lt;br /&gt;
http://download.dojotoolkit.org/release-0.4.2/dojo-0.4.2p1-widget/tests/widget/test_Dialog.html&lt;br /&gt;
http://www.sencha.com/examples/pages/window/hello.html&lt;br /&gt;
http://www.sencha.com/examples/pages/window/dialog.html&lt;br /&gt;
http://www.sencha.com/examples/pages/window/accordion.html&lt;br /&gt;
http://dev.sencha.com/deploy/ext-4.0.2a/examples/window/window.html&lt;br /&gt;
http://leandrovieira.com/projects/jquery/lightbox/&lt;br /&gt;
http://www.huddletogether.com/projects/lightbox/&lt;br /&gt;
http://developer.yahoo.com/yui/examples/container/panel.html&lt;br /&gt;
http://reghellin.com/milkbox/&lt;br /&gt;
http://bertramakers.com/moolabs/imagezoom.php&lt;br /&gt;
http://www.aryweb.nl/projects/MooDialog/&lt;br /&gt;
&lt;br /&gt;
== Code Examples ==&lt;br /&gt;
=== Reddit ===&lt;br /&gt;
&lt;br /&gt;
HTML:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;a href=&amp;quot;#&amp;quot; onclick=&amp;quot;return showcover(false);&amp;quot;&amp;gt;register&amp;lt;/a&amp;gt;&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;div class=&amp;quot;login-popup cover-overlay&amp;quot; style=&amp;quot;display: none; &amp;quot;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;cover&amp;quot; onclick=&amp;quot;return hidecover(this)&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;popup&amp;quot;&amp;gt;&lt;br /&gt;
        ...&lt;br /&gt;
    &amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Javascript:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
function showcover(a, b) {&lt;br /&gt;
    $(&amp;quot;.login-popup:first&amp;quot;).show().find(&#039;form input[name=&amp;quot;reason&amp;quot;]&#039;).val(b || &amp;quot;&amp;quot;);&lt;br /&gt;
    return !1&lt;br /&gt;
}&lt;br /&gt;
function hidecover(a) {&lt;br /&gt;
    $(a).parents(&amp;quot;.cover-overlay&amp;quot;).hide();&lt;br /&gt;
    return !1&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(showcover() has been truncated to remove code not relevant to showing the dialog: if variable a is set as &#039;true&#039;, another element (not found in this page) is also shown)&lt;br /&gt;
&lt;br /&gt;
CSS:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.popup {&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  left: 10%;&lt;br /&gt;
  background-color: white;&lt;br /&gt;
  top: 40px;&lt;br /&gt;
  width: 80%;&lt;br /&gt;
  z-index: 1001;&lt;br /&gt;
}&lt;br /&gt;
.cover {&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  top: 0px;&lt;br /&gt;
  left: 0px;&lt;br /&gt;
  height: 100%;&lt;br /&gt;
  width: 100%;&lt;br /&gt;
  background-color: gray;&lt;br /&gt;
  opacity: .7;&lt;br /&gt;
  z-index: 1000;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Slashdot ===&lt;br /&gt;
HTML:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;modal_cover&amp;quot; class=&amp;quot;push&amp;quot; onclick=&amp;quot;hide_modal_box(); return false;&amp;quot; style=&amp;quot;display: none;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;modal_box&amp;quot; class=&amp;quot;push&amp;quot; style=&amp;quot;display: none;&amp;quot;&amp;gt;&lt;br /&gt;
   ...&lt;br /&gt;
   &amp;lt;div id=&amp;quot;modal_box_content&amp;quot;&amp;gt;...&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;a href=&amp;quot;//slashdot.org/my/newuser&amp;quot; onclick=&amp;quot;javascript:getModalPrefs(&#039;newUserModal&#039;, &#039;Create Account&#039;, 1); $(&#039;#modal_box&#039;).addClass(&#039;join&#039;); return false;&amp;quot; class=&amp;quot;btn link&amp;quot;&amp;gt;Join&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Javascript: (getModalPrefs has been truncated to remove code not relevant to showing the dialog)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
function getModalPrefs(section, title, tabbed, params) {&lt;br /&gt;
    Slash.busy(BUSY_FETCHING_MODAL, true);&lt;br /&gt;
    $bg = get_modal_parts(&#039;#modal_cover&#039;).css(&#039;opacity&#039;, 0.75).show();&lt;br /&gt;
    $any(&#039;modal_box_content&#039;).load(&#039;/ajax.pl&#039;, $.extend({op: this_op,section: section,reskey: reskey_static,tabbed: tabbed,return_to: return_to}, params || null), function(response, status, transport) {&lt;br /&gt;
        if (status === &#039;success&#039;) {&lt;br /&gt;
            $any(&#039;preference_title&#039;).html(title);&lt;br /&gt;
            var $modal = show_modal_box().data(&#039;tabbed&#039;, tabbed);&lt;br /&gt;
            tabbed &amp;amp;&amp;amp; $modal.addClass(&amp;quot;tabbed&amp;quot;);&lt;br /&gt;
        } else {&lt;br /&gt;
            $bg.hide();&lt;br /&gt;
        }&lt;br /&gt;
        Slash.busy(BUSY_FETCHING_MODAL, false);&lt;br /&gt;
    });&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function show_modal_box() {&lt;br /&gt;
    return custom_modal_box(&#039;show&#039;).keyup(function(e) {&lt;br /&gt;
        e.which == $.ui.keyCode.ESCAPE &amp;amp;&amp;amp; hide_modal_box();&lt;br /&gt;
    });&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function hide_modal_box() {&lt;br /&gt;
    var retainclass = &amp;quot; &amp;quot;;&lt;br /&gt;
    if ($(&#039;#modal_box&#039;).hasClass(&#039;push&#039;)) {&lt;br /&gt;
        retainclasses = &#039;push&#039;;&lt;br /&gt;
    }&lt;br /&gt;
    custom_modal_box(&#039;hide&#039;).hide().attr(&#039;style&#039;, &#039;display: none;&#039;).removeClass().addClass(retainclasses).removeData(&#039;tabbed&#039;).unbind();&lt;br /&gt;
    if (document.forms.modal_prefs &amp;amp;&amp;amp; document.forms.modal_prefs.refresh_onclose &amp;amp;&amp;amp; document.forms.modal_prefs.refresh_onclose.value) {&lt;br /&gt;
        document.location = document.URL;&lt;br /&gt;
    }&lt;br /&gt;
    return false;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CSS:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#modal_box.join {&lt;br /&gt;
  margin: 0px 33% 0;&lt;br /&gt;
  width: 390px;&lt;br /&gt;
  height: 440px;&lt;br /&gt;
}&lt;br /&gt;
#embbeded_login_modal.push, #modal_box.push {&lt;br /&gt;
  margin-top: 9em !important;&lt;br /&gt;
}&lt;br /&gt;
#modal_box {&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  z-index: 1000001;&lt;br /&gt;
}&lt;br /&gt;
#modal_cover {&lt;br /&gt;
  margin-top: -12px;&lt;br /&gt;
  margin-left: -13px;&lt;br /&gt;
  background: rgba(0, 0, 0, .6);&lt;br /&gt;
  height: 100%;&lt;br /&gt;
  position: fixed;&lt;br /&gt;
  width: 100%;&lt;br /&gt;
  z-index: 1000000;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===DB Dahn===&lt;br /&gt;
HTML:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;li id=&amp;quot;mn-login&amp;quot; class=&amp;quot;rollover&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;a href=&amp;quot;https://fahrkarten.bahn.de/privatkunde/start/start.post?lang=de&amp;amp;amp;scope=login&amp;quot; id=&amp;quot;login&amp;quot; class=&amp;quot;jhover&amp;quot; rel=&amp;quot;nofollow&amp;quot;&amp;gt;&amp;lt;span&amp;gt;Login&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;
    &amp;lt;h3&amp;gt;&amp;lt;span&amp;gt;Login&amp;lt;/span&amp;gt;&amp;lt;/h3&amp;gt;&lt;br /&gt;
    &amp;lt;ul&amp;gt;...&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If #mn-login is given class of rollover (done using javascript on focus and mouseover, removed on blur, the h3 and ul tags are displayed in CSS:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#main-nav ul ul, #main-nav ul h3 {&lt;br /&gt;
  border: 1px solid #9FA3AB;&lt;br /&gt;
  display: none;&lt;br /&gt;
  left: -9999em;&lt;br /&gt;
  position: absolute;&lt;br /&gt;
}&lt;br /&gt;
#main-nav li#mn-login.rollover h3 {&lt;br /&gt;
  left: -6px;&lt;br /&gt;
}&lt;br /&gt;
#main-nav li#mn-login.rollover ul {&lt;br /&gt;
  left: auto;&lt;br /&gt;
  right: 6px;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Proposals]]&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Bugzilla_conventions&amp;diff=6568</id>
		<title>Bugzilla conventions</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Bugzilla_conventions&amp;diff=6568"/>
		<updated>2011-06-19T01:35:32Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Resolutions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;These are the conventions used for bugs filed in the W3C Bugzilla for specs also maintained by the WHATWG.&lt;br /&gt;
&lt;br /&gt;
== Subject prefixes ==&lt;br /&gt;
&lt;br /&gt;
Some specific topics have prefixes in the bug summaries to help group the bugs.&lt;br /&gt;
&lt;br /&gt;
;&#039;&#039;&#039;&amp;amp;lt;video&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
:bugs relating to  &amp;amp;lt;video&amp;gt;, &amp;amp;lt;audio&amp;gt;, HTMLMediaElement, Controller, WebVTT, WebRTC (PeerConnection and Stream), and closely related topics.&lt;br /&gt;
;&#039;&#039;&#039;WF2:&#039;&#039;&#039;&lt;br /&gt;
:bugs relating to form controls.&lt;br /&gt;
;&#039;&#039;&#039;WF3:&#039;&#039;&#039;&lt;br /&gt;
:feature requests relating to form controls.&lt;br /&gt;
&lt;br /&gt;
== Priorities and Severities ==&lt;br /&gt;
&lt;br /&gt;
All bugs should be P2 or P3 by default. Bugs might get marked P1 by the W3C HTML WG chairs; bugs marked P1 by anyone else should be returned to P3. Bugs that are particularly minor might be marked P5. The priority field is &amp;quot;owned&amp;quot; by the chairs.&lt;br /&gt;
&lt;br /&gt;
All bugs should be normal severity by default. Typos, grammar mistakes that don&#039;t affect normative status, and other such trivial matters can be marked &amp;quot;trivial&amp;quot;. Feature requests should be marked &amp;quot;enhancement&amp;quot;. Bugs that affect the parser algorithm should be marked &amp;quot;critical&amp;quot;. Bugs that are immediately affecting implementors should be marked &amp;quot;blocker&amp;quot;. &amp;quot;major&amp;quot; and &amp;quot;minor&amp;quot; are currently unused. The severity field is &amp;quot;owned&amp;quot; by the editor.&lt;br /&gt;
&lt;br /&gt;
== Components ==&lt;br /&gt;
&lt;br /&gt;
The bug filing system should automatically pick the right component. The components are pretty self-explanatory. WHATWG-specific issues should be moved to the &amp;quot;other Hixie drafts&amp;quot; component.&lt;br /&gt;
&lt;br /&gt;
== Resolutions ==&lt;br /&gt;
&lt;br /&gt;
The boilerplate used when resolving the bug comes from: http://lists.w3.org/Archives/Public/public-html/2009Oct/0680.html&lt;br /&gt;
&lt;br /&gt;
The requirements for use of different resolutions are here:&lt;br /&gt;
&lt;br /&gt;
http://dev.w3.org/html5/decision-policy/decision-policy-v2.html#bug-resolutions&lt;br /&gt;
&lt;br /&gt;
== Helpful query links ==&lt;br /&gt;
&lt;br /&gt;
* [http://goo.gl/Zh9tC List of all open and deferred HTML-related bugs]&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6554</id>
		<title>Dialogs</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6554"/>
		<updated>2011-06-16T06:18:36Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Dialogs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Problem statement =&lt;br /&gt;
&lt;br /&gt;
There&#039;s no markup or API for dialog boxes, tool palettes, hovering tooltips, the contents of popup widgets, and the like.&lt;br /&gt;
&lt;br /&gt;
== Real world examples today ==&lt;br /&gt;
&lt;br /&gt;
=== Dialogs ===&lt;br /&gt;
&lt;br /&gt;
==== Registration Dialogs ====&lt;br /&gt;
&lt;br /&gt;
* http://www.reddit.com/ - make sure to be logged out if you have an account, and click the register link&lt;br /&gt;
* http://digg.com/ - make sure to be logged out if you have an account, and click the Join Digg! button&lt;br /&gt;
* http://slashdot.org/ - make sure to be logged out if you have an account, and click the Join link&lt;br /&gt;
&lt;br /&gt;
==== Login Dialogs ====&lt;br /&gt;
&lt;br /&gt;
* http://slashdot.org/ - make sure to be logged out if you have an account, and click the Log In link&lt;br /&gt;
* http://digg.com/ - make sure to be logged out if you have an account, and click the Login button&lt;br /&gt;
* http://newsvine/ - make sure to be logged out if you have an account, and click the Log In | Register link&lt;br /&gt;
&lt;br /&gt;
=== Other Dialogs ===&lt;br /&gt;
&lt;br /&gt;
* http://www.kongregate.com/ - register for account, log in, click Get Kreds, click Fund Your Account button&lt;br /&gt;
&lt;br /&gt;
=== Tooltips ===&lt;br /&gt;
&lt;br /&gt;
* The tooltips in the table of [http://bioinfo-prod.mpl.ird.fr/xantho/x.org/gui/seqterm.php] are interesting because they are currently &amp;amp;lt;div&amp;gt;s and force the parent to be a TD rather than a TH since TH is inline only, even though the visible content is really just phrasing content.&lt;br /&gt;
&lt;br /&gt;
=== Lightboxes ===&lt;br /&gt;
&lt;br /&gt;
[[Category:Proposals]]&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6553</id>
		<title>Dialogs</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6553"/>
		<updated>2011-06-16T05:28:24Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Login Dialogs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Problem statement =&lt;br /&gt;
&lt;br /&gt;
There&#039;s no markup or API for dialog boxes, tool palettes, hovering tooltips, the contents of popup widgets, and the like.&lt;br /&gt;
&lt;br /&gt;
== Real world examples today ==&lt;br /&gt;
&lt;br /&gt;
=== Dialogs ===&lt;br /&gt;
&lt;br /&gt;
==== Registration Dialogs ====&lt;br /&gt;
&lt;br /&gt;
* http://www.reddit.com/ - make sure to be logged out if you have an account, and click the register link&lt;br /&gt;
* http://digg.com/ - make sure to be logged out if you have an account, and click the Join Digg! button&lt;br /&gt;
* http://slashdot.org/ - make sure to be logged out if you have an account, and click the Join link&lt;br /&gt;
&lt;br /&gt;
==== Login Dialogs ====&lt;br /&gt;
&lt;br /&gt;
* http://slashdot.org/ - make sure to be logged out if you have an account, and click the Log In link&lt;br /&gt;
* http://digg.com/ - make sure to be logged out if you have an account, and click the Login button&lt;br /&gt;
* http://newsvine/ - make sure to be logged out if you have an account, and click the Log In | Register link&lt;br /&gt;
&lt;br /&gt;
=== Tooltips ===&lt;br /&gt;
&lt;br /&gt;
* The tooltips in the table of [http://bioinfo-prod.mpl.ird.fr/xantho/x.org/gui/seqterm.php] are interesting because they are currently &amp;amp;lt;div&amp;gt;s and force the parent to be a TD rather than a TH since TH is inline only, even though the visible content is really just phrasing content.&lt;br /&gt;
&lt;br /&gt;
=== Lightboxes ===&lt;br /&gt;
&lt;br /&gt;
[[Category:Proposals]]&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6552</id>
		<title>Dialogs</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6552"/>
		<updated>2011-06-16T05:27:20Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Dialogs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Problem statement =&lt;br /&gt;
&lt;br /&gt;
There&#039;s no markup or API for dialog boxes, tool palettes, hovering tooltips, the contents of popup widgets, and the like.&lt;br /&gt;
&lt;br /&gt;
== Real world examples today ==&lt;br /&gt;
&lt;br /&gt;
=== Dialogs ===&lt;br /&gt;
&lt;br /&gt;
==== Registration Dialogs ====&lt;br /&gt;
&lt;br /&gt;
* http://www.reddit.com/ - make sure to be logged out if you have an account, and click the register link&lt;br /&gt;
* http://digg.com/ - make sure to be logged out if you have an account, and click the Join Digg! button&lt;br /&gt;
* http://slashdot.org/ - make sure to be logged out if you have an account, and click the Join link&lt;br /&gt;
&lt;br /&gt;
==== Login Dialogs ====&lt;br /&gt;
&lt;br /&gt;
* http://slashdot.org/ - make sure to be logged out if you have an account, and click the Log In link&lt;br /&gt;
* http://digg.com/ - make sure to be logged out if you have an account, and click the Login button&lt;br /&gt;
&lt;br /&gt;
=== Tooltips ===&lt;br /&gt;
&lt;br /&gt;
* The tooltips in the table of [http://bioinfo-prod.mpl.ird.fr/xantho/x.org/gui/seqterm.php] are interesting because they are currently &amp;amp;lt;div&amp;gt;s and force the parent to be a TD rather than a TH since TH is inline only, even though the visible content is really just phrasing content.&lt;br /&gt;
&lt;br /&gt;
=== Lightboxes ===&lt;br /&gt;
&lt;br /&gt;
[[Category:Proposals]]&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6551</id>
		<title>Dialogs</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6551"/>
		<updated>2011-06-16T05:26:05Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Registration Dialogs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Problem statement =&lt;br /&gt;
&lt;br /&gt;
There&#039;s no markup or API for dialog boxes, tool palettes, hovering tooltips, the contents of popup widgets, and the like.&lt;br /&gt;
&lt;br /&gt;
== Real world examples today ==&lt;br /&gt;
&lt;br /&gt;
=== Dialogs ===&lt;br /&gt;
&lt;br /&gt;
==== Registration Dialogs ====&lt;br /&gt;
&lt;br /&gt;
* http://www.reddit.com/ - make sure to be logged out if you have an account, and click the register link&lt;br /&gt;
* http://reddit.com/ - make sure to be logged out if you have an account, and click the Join Digg! button&lt;br /&gt;
* http://slashdot.org/ - make sure to be logged out if you have an account, and click the Join link&lt;br /&gt;
&lt;br /&gt;
==== Login Dialogs ====&lt;br /&gt;
&lt;br /&gt;
* http://slashdot.org/ - make sure to be logged out if you have an account, and click the Log In link&lt;br /&gt;
&lt;br /&gt;
=== Tooltips ===&lt;br /&gt;
&lt;br /&gt;
* The tooltips in the table of [http://bioinfo-prod.mpl.ird.fr/xantho/x.org/gui/seqterm.php] are interesting because they are currently &amp;amp;lt;div&amp;gt;s and force the parent to be a TD rather than a TH since TH is inline only, even though the visible content is really just phrasing content.&lt;br /&gt;
&lt;br /&gt;
=== Lightboxes ===&lt;br /&gt;
&lt;br /&gt;
[[Category:Proposals]]&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6550</id>
		<title>Dialogs</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6550"/>
		<updated>2011-06-16T05:24:22Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Dialogs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Problem statement =&lt;br /&gt;
&lt;br /&gt;
There&#039;s no markup or API for dialog boxes, tool palettes, hovering tooltips, the contents of popup widgets, and the like.&lt;br /&gt;
&lt;br /&gt;
== Real world examples today ==&lt;br /&gt;
&lt;br /&gt;
=== Dialogs ===&lt;br /&gt;
&lt;br /&gt;
==== Registration Dialogs ====&lt;br /&gt;
&lt;br /&gt;
 * http://www.reddit.com/ - make sure to be logged out if you have an account, and click the register link&lt;br /&gt;
 * http://reddit.com/ - make sure to be logged out if you have an account, and click the Join Digg! button&lt;br /&gt;
&lt;br /&gt;
=== Tooltips ===&lt;br /&gt;
&lt;br /&gt;
* The tooltips in the table of [http://bioinfo-prod.mpl.ird.fr/xantho/x.org/gui/seqterm.php] are interesting because they are currently &amp;amp;lt;div&amp;gt;s and force the parent to be a TD rather than a TH since TH is inline only, even though the visible content is really just phrasing content.&lt;br /&gt;
&lt;br /&gt;
=== Lightboxes ===&lt;br /&gt;
&lt;br /&gt;
[[Category:Proposals]]&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6549</id>
		<title>Dialogs</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6549"/>
		<updated>2011-06-16T05:24:07Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Dialogs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Problem statement =&lt;br /&gt;
&lt;br /&gt;
There&#039;s no markup or API for dialog boxes, tool palettes, hovering tooltips, the contents of popup widgets, and the like.&lt;br /&gt;
&lt;br /&gt;
== Real world examples today ==&lt;br /&gt;
&lt;br /&gt;
=== Dialogs ===&lt;br /&gt;
&lt;br /&gt;
==== Dialogs ====&lt;br /&gt;
&lt;br /&gt;
Registration dialogs:&lt;br /&gt;
&lt;br /&gt;
 * http://www.reddit.com/ - make sure to be logged out if you have an account, and click the register link&lt;br /&gt;
 * http://reddit.com/ - make sure to be logged out if you have an account, and click the Join Digg! button&lt;br /&gt;
&lt;br /&gt;
=== Tooltips ===&lt;br /&gt;
&lt;br /&gt;
* The tooltips in the table of [http://bioinfo-prod.mpl.ird.fr/xantho/x.org/gui/seqterm.php] are interesting because they are currently &amp;amp;lt;div&amp;gt;s and force the parent to be a TD rather than a TH since TH is inline only, even though the visible content is really just phrasing content.&lt;br /&gt;
&lt;br /&gt;
=== Lightboxes ===&lt;br /&gt;
&lt;br /&gt;
[[Category:Proposals]]&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6548</id>
		<title>Dialogs</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Dialogs&amp;diff=6548"/>
		<updated>2011-06-16T05:22:15Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Problem statement */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Problem statement =&lt;br /&gt;
&lt;br /&gt;
There&#039;s no markup or API for dialog boxes, tool palettes, hovering tooltips, the contents of popup widgets, and the like.&lt;br /&gt;
&lt;br /&gt;
== Real world examples today ==&lt;br /&gt;
&lt;br /&gt;
=== Dialogs ===&lt;br /&gt;
&lt;br /&gt;
=== Tooltips ===&lt;br /&gt;
&lt;br /&gt;
* The tooltips in the table of [http://bioinfo-prod.mpl.ird.fr/xantho/x.org/gui/seqterm.php] are interesting because they are currently &amp;amp;lt;div&amp;gt;s and force the parent to be a TD rather than a TH since TH is inline only, even though the visible content is really just phrasing content.&lt;br /&gt;
&lt;br /&gt;
=== Lightboxes ===&lt;br /&gt;
&lt;br /&gt;
[[Category:Proposals]]&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Forking&amp;diff=6409</id>
		<title>Forking</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Forking&amp;diff=6409"/>
		<updated>2011-05-05T15:53:59Z</updated>

		<summary type="html">&lt;p&gt;Mjs: Let&amp;#039;s not make this too personal.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The purpose of this page is to summarize information and arguments relevant to whether it makes sense for web specification copyright licenses to permit [[Wikipedia:Fork (software development)|forking]].&lt;br /&gt;
&lt;br /&gt;
For our purposes, there are two different approaches to forking.&lt;br /&gt;
&lt;br /&gt;
: Language Forking&lt;br /&gt;
:: An alternative development path for the language created without using existing specification text as the basis of the work.&lt;br /&gt;
: Specification Forking&lt;br /&gt;
:: An alternative development path using existing specification text as the basis of a derivative work.&lt;br /&gt;
&lt;br /&gt;
Since a &#039;&#039;language fork&#039;&#039; is not a derivative work according to copyright law, it may be done without the permission of the copyright holder.  A &#039;&#039;specification fork&#039;&#039;, however, requires a permissive licence or explicit permission from the copyright holder.&lt;br /&gt;
&lt;br /&gt;
Standard licenses that permit specification forking include [https://creativecommons.org/publicdomain/zero/1.0/ CC0], the [http://opensource.org/licenses/mit-license.php MIT license], and the [http://www.opensource.org/licenses/bsd-license.php BSD licenses].&lt;br /&gt;
&lt;br /&gt;
This page focuses on whether the W3C&#039;s HTML5 specification should allow forks, as the WHATWG version always has.&lt;br /&gt;
&lt;br /&gt;
== Existing forks of HTML ==&lt;br /&gt;
(based on [http://krijnhoetmer.nl/irc-logs/whatwg/20110430#l-179 IRC comment]; possibly not everything here is strictly a fork, could use classification and explanation work)&lt;br /&gt;
&lt;br /&gt;
=== W3C-hosted forks ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.w3.org/TR/xhtml-basic/ XHTML Basic]&lt;br /&gt;
* [http://www.w3.org/TR/1999/NOTE-html40-mobile-19990315/ HTML 4 Mobile]&lt;br /&gt;
* [http://www.w3.org/TR/xhtml2/ XHTML 2]&lt;br /&gt;
* [http://www.w3.org/TR/xhtml-print/ XHTML-Print]&lt;br /&gt;
* [http://dev.w3.org/html5/spec-author-view/ HTML5 Edition for Web Authors]&lt;br /&gt;
* [http://dev.w3.org/html5/markup/ HTML: The Markup Language]&lt;br /&gt;
&lt;br /&gt;
=== W3C-published but disavowed forks ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.w3.org/TR/NOTE-Submission-HDML-spec.html HDML]&lt;br /&gt;
* [http://www.w3.org/TR/2002/NOTE-XHTMLplusSMIL-20020131/ XHTML+SMIL]&lt;br /&gt;
* [http://www.w3.org/TR/1998/NOTE-compactHTML-19980209/ CHTML]&lt;br /&gt;
&lt;br /&gt;
=== Other forks ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.scss.tcd.ie/misc/15445/15445.html ISO HTML]: Diff spec.&lt;br /&gt;
* [http://www.openmobilealliance.org/tech/affiliates/wap/wap-277-xhtmlmp-20011029-a.pdf XHTML-MP]: Apparently no free download.  Reportedly not widely used.&lt;br /&gt;
* [http://www.wapforum.org/what/technical.htm WML]: Apparently no free download.  Reportedly very widely used and extremely harmful.&lt;br /&gt;
* [http://webapp.etsi.org/workprogram/Report_WorkItem.asp?WKI_ID=19886 WTVML]: Apparently no free download.&lt;br /&gt;
* [http://www.whatwg.org/specs/web-apps/current-work/multipage/ WHATWG HTML]: No comment.&lt;br /&gt;
* [http://www.ce.org/Standards/browseByCommittee_2757.asp CE-HTML]: Apparently only a preview is available for free, which contains almost nothing beyond the table of contents.&lt;br /&gt;
* [http://idpf.org/epub/30/spec/epub30-publications.html EPUB]: Diff spec.&lt;br /&gt;
* [http://html4all.org/HTMLDraft.html HTML 4.1]: Accessibility-oriented fork.  Seems to attempt to respec from scratch, but it doesn&#039;t sound like it has anyone actually implementing it.&lt;br /&gt;
&lt;br /&gt;
=== Not really forks ===&lt;br /&gt;
* [http://developers.whatwg.org HTML5 for Web developers]: A subset of WHATWG HTML.&lt;br /&gt;
* [http://w3c-test.org/html/tests/submission/PhilipTaylor/annotated-spec/canvas.html Philip Taylor&#039;s annotated canvas spec]: No normative differences, or at least isn&#039;t supposed to have normative differences.&lt;br /&gt;
&lt;br /&gt;
== Organizational forks ==&lt;br /&gt;
One argument presented in favor of allowing forks is that if the W3C ever makes poor decisions that compromise the quality of its standards, other organizations should have the right to issue competing standards, with implementers agreeing to follow the better standard.  When the W3C owns the right to large, established specifications that it doesn&#039;t permit others to fork, this becomes harder.  Looking at cases where standards authors have abandoned an existing standards group to form their own should give an idea of whether this tends to be a good or bad thing.&lt;br /&gt;
&lt;br /&gt;
=== W3C competing with IETF ===&lt;br /&gt;
The W3C itself was founded at least partly because Tim Berners-Lee felt that standardization at the IETF wasn&#039;t working well.  As he writes in his book, [http://www.w3.org/People/Berners-Lee/Weaving/Overview.html &#039;&#039;Weaving the Web&#039;&#039;] (pp. 62-3):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;Progress in the [IETF&#039;s] URI working group was slow, partly due to the number of endless philosophical rat holes down which technical conversations would disappear. . . . Sometimes there was a core philosophy being argued, and from my point of view that was not up for compromise.  Sometimes there was a basically arbitrary decision (like which punctuation characters to use) that I had already made, and changing it would only mean that millions of Web browsers and existing links would have to be changed.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In practice, the W3C has wound up cooperating with the IETF more than competing.&lt;br /&gt;
&lt;br /&gt;
=== WHATWG competing with W3C ===&lt;br /&gt;
After HTML 4.01 was finalized in 1998, no new features were added to the HTML markup language other than in XHTML variants that browsers didn&#039;t implement.  Thus HTML as a standard markup language did not progress at all between about 1998 and 2004.  In 2004, Mozilla and Opera requested permission from the W3C to work on improving non-XML-based versions of HTML, and they were denied permission.  Apple, Mozilla, and Opera then founded the WHATWG, which began work on a new version of the HTML specification outside the W3C.  In a couple of years, the WHATWG rewrote the HTML standard from scratch, made it drastically more precise, and added many new highly-demanded features (such as video and canvas) that were previously only available through proprietary plugins.  In 2007, the W3C formed an HTML Working Group again to work on non-XML-based versions of HTML, based on and in conjunction with the work of the WHATWG.&lt;br /&gt;
&lt;br /&gt;
== Modularization ==&lt;br /&gt;
&lt;br /&gt;
[http://www.w3.org/TR/xhtml-modularization/ XHTML Modularization] has the goal of &amp;quot;providing a means for subsetting and extending XHTML, a feature needed for extending XHTML&#039;s reach onto emerging platforms&amp;quot;. Although this is not technically a fork (in the sense that it does not imply taking the W3C spec text and rewriting portions of it), the ability to create new HTML-derived specs that add or replace functionality carries many of the same risks that are brought up in the context of forking.&lt;br /&gt;
&lt;br /&gt;
== Supposed risks of forking ==&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;A national government could create its own intentionally incompatible national version of the html specification in order to prevent general Web access from within that country&amp;quot;: This argument is wrong at multiple levels:&lt;br /&gt;
** A national government could exempt itself from copyright anyway. Even [http://arstechnica.com/tech-policy/news/2008/08/air-force-cracks-software-carpet-bombs-dmca.ars the US government] does not consider itself bound by copyright law in all cases.&lt;br /&gt;
** A specification is only needed if there is a desire for multiple independent interoperable implementations, i.e., if competition is being encouraged. But what government would on the one hand encourage competition amongst browser vendors and on the other hand prevent those browser vendors from implementing other versions of HTML?&lt;br /&gt;
** In practice, it would be economically impractical to control the Web by developing a parallel HTML that is similar enough that the W3C spec could be used as a basis, but different enough that it is incompatible with the Web&#039;s HTML. In reality, countries use content filtering software to do such control (q.v., China).&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Other undesirable forks could be for device specific variants of specs where it would be better for those groups to come into W3C [...] than to splinter html&amp;quot;: When the W3C forks HTML (as it has in the past, see the list above), it is just as bad as when anyone else does. There is nothing special about the W3C here.&lt;br /&gt;
** In practice, vendors who want to add device-specific features commonly just add new features without forking the spec.  For instance, Apple has made up its own [http://developer.apple.com/library/safari/#documentation/appleapplications/reference/safariwebcontent/configuringwebapplications/configuringwebapplications.html proprietary features] such as &amp;amp;lt;meta name=&amp;quot;apple-touch-icon&amp;quot;&amp;gt; and &amp;amp;lt;meta name=&amp;quot;apple-mobile-web-app-capable&amp;quot;&amp;gt; to allow web pages to integrate better with the iOS browser.  Forking the whole HTML spec would be a waste of time.&lt;br /&gt;
&lt;br /&gt;
== Advantages of allowing forking ==&lt;br /&gt;
&lt;br /&gt;
* It encourages the W3C to do a good job, because of the risk that if the W3C does &#039;&#039;not&#039;&#039; do a good job, it will lose relevance. This has already been shown to be beneficial both to the W3C and the Web at large with HTML5 itself: the W3C tried to strongarm the Web into abandoning HTML, and when the WHATWG worked on it instead, the W3C changed its mind. This demonstrates the benefit of allowing forking (though in this case, it turns out copyright restrictions were not any kind of barrier to forking, because HTML4 wasn&#039;t good enough to be a useful starting point and we instead started from scratch).&lt;br /&gt;
&lt;br /&gt;
== Reasons preventing forking is not necessary ==&lt;br /&gt;
&lt;br /&gt;
* If the W3C is the best place to work on specs, then people will not need to fork, they&#039;ll just work on them at the W3C.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Forking&amp;diff=6392</id>
		<title>Forking</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Forking&amp;diff=6392"/>
		<updated>2011-05-02T08:52:36Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* W3C-hosted forks */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The purpose of this page is to summarize information and arguments relevant to whether it makes sense for web specification copyright licenses to permit [[Wikipedia:Fork (software development)|forking]].  For our purposes, forking means the ability for a third party to redistribute modified versions of the specification without the permission of the copyright holders.  Standard licenses that permit forking include [http://creativecommons.org/choose/zero/ CC0], the [http://opensource.org/licenses/mit-license.php MIT license], and the [http://www.opensource.org/licenses/bsd-license.php BSD licenses].&lt;br /&gt;
&lt;br /&gt;
More specifically, this page focuses on whether the W3C&#039;s HTML5 specification should allow forks, as the WHATWG version always has.&lt;br /&gt;
&lt;br /&gt;
== Existing forks of HTML ==&lt;br /&gt;
(based on [http://krijnhoetmer.nl/irc-logs/whatwg/20110430#l-179 IRC comment] by Maciej; possibly not everything here is strictly a fork, could use classification and explanation work)&lt;br /&gt;
&lt;br /&gt;
=== W3C-hosted forks ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.w3.org/TR/xhtml-basic/ XHTML Basic]&lt;br /&gt;
* [http://www.w3.org/TR/1999/NOTE-html40-mobile-19990315/ HTML 4 Mobile]&lt;br /&gt;
* [http://www.w3.org/TR/xhtml2/ XHTML 2]&lt;br /&gt;
* [http://www.w3.org/TR/xhtml-print/ XHTML-Print]&lt;br /&gt;
&lt;br /&gt;
=== W3C-published but disavowed forks ===&lt;br /&gt;
&lt;br /&gt;
* [http://www.w3.org/TR/NOTE-Submission-HDML-spec.html HDML]&lt;br /&gt;
* [http://www.w3.org/TR/2002/NOTE-XHTMLplusSMIL-20020131/ XHTML+SMIL]&lt;br /&gt;
* [http://www.w3.org/TR/1998/NOTE-compactHTML-19980209/ CHTML]&lt;br /&gt;
&lt;br /&gt;
=== Other forks ===&lt;br /&gt;
&lt;br /&gt;
* [http://jp29.org/iso.htm ISO HTML]&lt;br /&gt;
* [http://www.openmobilealliance.org/tech/affiliates/wap/wap-277-xhtmlmp-20011029-a.pdf XHTML-MP]&lt;br /&gt;
* [http://www.wapforum.org/what/technical.htm WML] (apparently no free download)&lt;br /&gt;
* [http://webapp.etsi.org/workprogram/Report_WorkItem.asp?WKI_ID=19886 WTVML] (apparently no free download)&lt;br /&gt;
* [http://www.whatwg.org/specs/web-apps/current-work/multipage/ WHATWG HTML]&lt;br /&gt;
* [http://www.ce.org/Standards/browseByCommittee_2757.asp CE-HTML] (apparently only a preview available for free)&lt;br /&gt;
* [http://idpf.org/epub/30/spec/epub30-publications.html EPUB]&lt;br /&gt;
* [http://html4all.org/HTMLDraft.html HTML 4.1]&lt;br /&gt;
&lt;br /&gt;
== Organizational forks ==&lt;br /&gt;
One argument presented in favor of allowing forks is that if the W3C ever makes poor decisions that compromise the quality of its standards, other organizations should have the right to issue competing standards, with implementers agreeing to follow the better standard.  When the W3C owns the right to large, established specifications that it doesn&#039;t permit others to fork, this becomes harder.  Looking at cases where standards authors have abandoned an existing standards group to form their own should give an idea of whether this tends to be a good or bad thing.&lt;br /&gt;
&lt;br /&gt;
=== W3C competing with IETF ===&lt;br /&gt;
The W3C itself was founded at least partly because Tim Berners-Lee felt that standardization at the IETF wasn&#039;t working well.  As he writes in his book, [http://www.w3.org/People/Berners-Lee/Weaving/Overview.html &#039;&#039;Weaving the Web&#039;&#039;] (pp. 62-3):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;Progress in the [IETF&#039;s] URI working group was slow, partly due to the number of endless philosophical rat holes down which technical conversations would disappear. . . . Sometimes there was a core philosophy being argued, and from my point of view that was not up for compromise.  Sometimes there was a basically arbitrary decision (like which punctuation characters to use) that I had already made, and changing it would only mean that millions of Web browsers and existing links would have to be changed.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In practice, the W3C has wound up cooperating with the IETF more than competing.&lt;br /&gt;
&lt;br /&gt;
=== WHATWG competing with W3C ===&lt;br /&gt;
After HTML 4.01 was finalized in 1998, no new features were added to the HTML markup language other than in XHTML variants that browsers didn&#039;t implement.  Thus HTML as a standard markup language did not progress at all between about 1998 and 2004.  In 2004, Mozilla and Opera requested permission from the W3C to work on improving non-XML-based versions of HTML, and they were denied permission.  Apple, Mozilla, and Opera then founded the WHATWG, which began work on a new version of the HTML specification outside the W3C.  In a couple of years, the WHATWG rewrote the HTML standard from scratch, made it drastically more precise, and added many new highly-demanded features (such as video and canvas) that were previously only available through proprietary plugins.  In 2007, the W3C formed an HTML Working Group again to work on non-XML-based versions of HTML, based on and in conjunction with the work of the WHATWG.&lt;br /&gt;
&lt;br /&gt;
== Supposed risks of forking ==&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;A national government could create its own intentionally incompatible national version of the html specification in order to prevent general Web access from within that country&amp;quot;: This argument is wrong at multiple levels:&lt;br /&gt;
** A national government would not be bound by copyright anyway. Even [http://arstechnica.com/tech-policy/news/2008/08/air-force-cracks-software-carpet-bombs-dmca.ars the US government] does not consider itself bound by copyright law.&lt;br /&gt;
** A specification is only needed if there is a desire for multiple independent interoperable implementations, i.e., if competition is being encouraged. But what government would on the one hand encourage competition amongst browser vendors and on the other hand prevent those browser vendors from implementing other versions of HTML?&lt;br /&gt;
** In practice, it would be economically impractical to control the Web by developing a parallel HTML that is similar enough that the W3C spec could be used as a basis, but different enough that it is incompatible with the Web&#039;s HTML. In reality, countries use content filtering software to do such control (c.f. China).&lt;br /&gt;
** Whether the W3C allows forking or not, and even if we grant that a license could stop this, this scenario could already happen because the entire HTML spec is already under a liberal license at the WHATWG.&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Other undesirable forks could be for device specific variants of specs where it would be better for those groups to come into W3C [...] than to splinter html&amp;quot;: When the W3C forks HTML (as it has in the past, see the list above), it is just as bad as when anyone else does. There is nothing special about the W3C here.&lt;br /&gt;
&lt;br /&gt;
== Advantages of allowing forking ==&lt;br /&gt;
&lt;br /&gt;
* It encourages the W3C to do a good job, because of the risk that if the W3C does &#039;&#039;not&#039;&#039; do a good job, it will lose relevance. This has already been shown to be beneficial both to the W3C and the Web at large with HTML5 itself: the W3C tried to strongarm the Web into abandoning HTML, and when the WHATWG worked on it instead, the W3C changed its mind. This demonstrates the benefit of allowing forking (though in this case, it turns out copyright restrictions were not any kind of barrier to forking, because HTML4 wasn&#039;t good enough to be a useful starting point and we instead started from scratch).&lt;br /&gt;
&lt;br /&gt;
== Reasons preventing forking is not necessary ==&lt;br /&gt;
&lt;br /&gt;
* If the W3C is the best place to work on specs, then people will not need to fork, they&#039;ll just work on them at the W3C.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Specs&amp;diff=6032</id>
		<title>Specs</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Specs&amp;diff=6032"/>
		<updated>2011-01-25T09:38:08Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Infrastructure */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This wiki page lists all the specifications that a Web browser is likely to implement.&lt;br /&gt;
&lt;br /&gt;
For each spec, link the spec&#039;s title to the most up to date draft (typically the editor&#039;s draft, for specs written in public; for specs written in secret, the latest published working draft), followed by a comma separated list of links in parentheses, named &amp;quot;feedback&amp;quot; for links to the current pending feedback, &amp;quot;discussion&amp;quot; for a link to the archives of the main relevant mailing list or to a page describing relevant mailing lists, &amp;quot;bugs&amp;quot; for a link to a bug system query showing the current open bugs. For specifications that are published in multiple forms, link to the most complete version (e.g. link to the one-page complete.html WHATWG spec rather than all the split-out W3C drafts).&lt;br /&gt;
&lt;br /&gt;
See also: [[Companion specifications|Specs without editors]]&lt;br /&gt;
&lt;br /&gt;
== Network Layer ==&lt;br /&gt;
* [http://tools.ietf.org/wg/httpbis/ HTTP]&lt;br /&gt;
** [http://tools.ietf.org/html/draft-ietf-websec-mime-sniff Media Type Sniffing]&lt;br /&gt;
** [http://tools.ietf.org/html/draft-ietf-httpstate-cookie Cookies]&lt;br /&gt;
* [http://tools.ietf.org/html/rfc0959 FTP]&lt;br /&gt;
* [http://tools.ietf.org/html/rfc5246 TLS]&lt;br /&gt;
* [http://tools.ietf.org/html/draft-ietf-websec-origin Origin]&lt;br /&gt;
&lt;br /&gt;
== Infrastructure ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.unicode.org/versions/Unicode6.0.0/ Unicode]&lt;br /&gt;
* [http://dev.w3.org/2006/webapi/WebIDL/ WebIDL]&lt;br /&gt;
* [http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html DOM Core] ([http://lists.w3.org/Archives/Public/public-webapps/ discussion])&lt;br /&gt;
* [http://www.w3.org/TR/xml/ XML]&lt;br /&gt;
* [http://www.w3.org/TR/xml-names/ XMLNS]&lt;br /&gt;
* [http://www.w3.org/TR/xmlbase/ &amp;lt;code&amp;gt;xml:base&amp;lt;/code&amp;gt;] ([http://lists.w3.org/Archives/Public/www-xml-linking-comments/ discussion])&lt;br /&gt;
&lt;br /&gt;
== Media-Independent Features ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.whatwg.org/specs/web-apps/current-work/complete.html Web Applications 1.0] ([http://www.whatwg.org/issues/ feedback], [http://www.whatwg.org/mailing-list discussion], [http://www.w3.org/Bugs/Public/buglist.cgi?query_format=advanced&amp;amp;short_desc_type=allwordssubstr&amp;amp;short_desc=&amp;amp;long_desc_type=allwordssubstr&amp;amp;long_desc=&amp;amp;bug_file_loc_type=allwordssubstr&amp;amp;bug_file_loc=&amp;amp;status_whiteboard_type=allwordssubstr&amp;amp;status_whiteboard=&amp;amp;keywords_type=allwords&amp;amp;keywords=&amp;amp;bug_status=UNCONFIRMED&amp;amp;bug_status=NEW&amp;amp;bug_status=ASSIGNED&amp;amp;bug_status=REOPENED&amp;amp;emailassigned_to1=1&amp;amp;emailtype1=exact&amp;amp;email1=ian%40hixie.ch&amp;amp;emailtype2=substring&amp;amp;email2=&amp;amp;bugidtype=include&amp;amp;bug_id=&amp;amp;votes=&amp;amp;chfieldfrom=&amp;amp;chfieldto=Now&amp;amp;chfieldvalue=&amp;amp;cmdtype=doit&amp;amp;order=Last+Changed&amp;amp;field0-0-0=noop&amp;amp;type0-0-0=noop&amp;amp;value0-0-0= bugs])&lt;br /&gt;
* [http://html5.org/specs/dom-parsing.html DOM Parsing and Serialization]&lt;br /&gt;
* [http://html5.org/specs/dom-range.html DOM Range] ([http://www.w3.org/Bugs/Public/buglist.cgi?product=WebAppsWG&amp;amp;amp;component=DOM%20Range&amp;amp;amp;resolution=--- bugs])&lt;br /&gt;
* [https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/doc/spec/WebGL-spec.html WebGL]&lt;br /&gt;
* [http://monet.nag.co.uk/~dpc/draft-spec/ MathML] ([http://lists.w3.org/Archives/Public/www-math/ discussion])&lt;br /&gt;
* [http://dev.w3.org/2006/webapi/clipops/clipops.html Clipboard] (cut/copy/paste; [http://lists.w3.org/Archives/Public/public-webapps/ discussion])&lt;br /&gt;
&lt;br /&gt;
== Media-Specific Layer ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.w3.org/TR/CSS21/ CSS] ([http://lists.w3.org/Archives/Public/www-style/latest discussion])&lt;br /&gt;
** [http://dev.w3.org/csswg/css3-color/ CSS Color]&lt;br /&gt;
* [http://www.w3.org/Graphics/GIF/spec-gif89a.txt GIF]&lt;br /&gt;
* [http://www.w3.org/TR/PNG/ PNG]&lt;br /&gt;
* [http://www.w3.org/TR/SVG/ SVG]&lt;br /&gt;
* [http://people.mozilla.org/~cmccormack/anim-timing/Overview.html Timing control for script-based animations] ([irc://irc.freenode.net/whatwg discussion])&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Iframe_Sandbox&amp;diff=5438</id>
		<title>Iframe Sandbox</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Iframe_Sandbox&amp;diff=5438"/>
		<updated>2010-08-26T02:46:28Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* use cases */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
&lt;br /&gt;
= iframe sandbox attribute =&lt;br /&gt;
&lt;br /&gt;
This page is for collecting issues and proposals related to the new &amp;lt;code&amp;gt;&amp;amp;lt;iframe&amp;amp;gt;&amp;lt;/code&amp;gt; &amp;lt;code&amp;gt;sandbox&amp;lt;/code&amp;gt; attribute.&lt;br /&gt;
&lt;br /&gt;
== proposal drop sandbox attribute ==&lt;br /&gt;
&lt;br /&gt;
The new &#039;sandbox&#039; feature on &amp;lt;code&amp;gt;&amp;amp;lt;iframe&amp;amp;gt;&amp;lt;/code&amp;gt; should be considered for removal.&lt;br /&gt;
&lt;br /&gt;
In speaking with fellow developers at Mozilla, I&#039;ve collected the following feedback:&lt;br /&gt;
&lt;br /&gt;
* The sandbox feature and functionality needs a thorough security review.&lt;br /&gt;
* It will be a lot of work to implement properly.&lt;br /&gt;
* It may not actually solve the problem it is intending to solve.&lt;br /&gt;
&lt;br /&gt;
— [[User:Tantek|Tantek]] 01:56, 2 August 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== opinions and discussion ===&lt;br /&gt;
* +1 [[User:Tantek|Tantek Çelik]]&lt;br /&gt;
* -1 [http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027484.html Ian Fette]&lt;br /&gt;
* -1 [http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027485.html Adam Barth]&lt;br /&gt;
* -1 [http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027491.html Maciej Stachowiak]&lt;br /&gt;
* -1 [[User:EdwardOConnor|EdwardOConnor]] - While I&#039;m put off by the syntax (markup in attribute values looks quite gross), I think the feature is needed and the design certainly meets the need.&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
== why sandbox should be kept ==&lt;br /&gt;
=== implementation experience ===&lt;br /&gt;
[http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027491.html Per Maciej], support for the new &#039;sandbox&#039; feature on &amp;lt;code&amp;gt;&amp;amp;lt;iframe&amp;amp;gt;&amp;lt;/code&amp;gt; is &amp;quot;shipping in current versions of Safari and Chrome.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The initial patch implementing it for WebKit can be seen here: http://trac.webkit.org/changeset/51577. &lt;br /&gt;
&lt;br /&gt;
This patch was 100k, but more than half of it is tests and the ChangeLog entry.&lt;br /&gt;
&lt;br /&gt;
=== security ===&lt;br /&gt;
&amp;quot;There&#039;s been a lot of security review, both on this list and in the W3C HTML WG.  I&#039;ve been meaning to write up a summary of all the discussion, but I haven&#039;t gotten around to it yet.  We ended up tweaking a few aspects, but generally the design seems solid.&amp;quot; —  [http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027485.html Adam Barth 2010-08-01]&lt;br /&gt;
&lt;br /&gt;
Also [http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027491.html from Maciej]:&lt;br /&gt;
Security experts have reviewed it (which security experts? links?). &#039;sandbox&#039; itself seems pretty solid, although there are possibly issues with related features such as text/html-sandboxed and &#039;seamless&#039; attribute.&lt;br /&gt;
&lt;br /&gt;
While more security review is always welcome, it seems like the basic idea is solid, and it&#039;s demonstrably implementable. &lt;br /&gt;
&lt;br /&gt;
=== examples in the wild ===&lt;br /&gt;
[http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027491.html Per Maciej], Content has been built using it.&lt;br /&gt;
&lt;br /&gt;
Which content? URLs to examples in the wild?&lt;br /&gt;
&lt;br /&gt;
- At one point, &amp;lt;iframe sandbox&amp;gt; was used by Google Image Search to prevent framebusting by enframed content. However, I believe it is currently disabled since it prevents plugins from working.&lt;br /&gt;
&lt;br /&gt;
=== use cases ===&lt;br /&gt;
[http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027491.html Per Maciej], while it&#039;s unclear if &amp;amp;lt;iframe sandbox&amp;amp;gt; will work well for comments or other such cases of seamless untrusted content, it seems clearly useful for use cases like:&lt;br /&gt;
* gadgets&lt;br /&gt;
* ads&lt;br /&gt;
&lt;br /&gt;
Examples? Could someone provide code examples of how  &amp;amp;lt;iframe sandbox&amp;amp;gt; could be used for gadgets or ads or other use cases?&lt;br /&gt;
&lt;br /&gt;
Not a full worked example, but embeding an gadget like this, in combination with postMessage, is safer than a vanilla iframe:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=html&amp;gt;&lt;br /&gt;
&amp;amp;lt;iframe sandbox=&amp;quot;allow-scripts allow-same-origin&amp;quot; src=&amp;quot;http://external.server.com/gadget.html&amp;quot;&amp;amp;lt;&amp;lt;/iframe&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It prevents the framed content from being able to navigate the top level, among other things.&lt;br /&gt;
&lt;br /&gt;
If the allow-same-origin flag is left off, then the gadget can even be hosted on the same site as the embedding content, but would still be isolated from DOM access and network access to the site&#039;s resources. In this case it would need to be used in combination with srcdoc or with the text/html-sandboxed MIME type to give sound security.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Iframe_Sandbox&amp;diff=5437</id>
		<title>Iframe Sandbox</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Iframe_Sandbox&amp;diff=5437"/>
		<updated>2010-08-26T02:37:41Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* examples in the wild */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
&lt;br /&gt;
= iframe sandbox attribute =&lt;br /&gt;
&lt;br /&gt;
This page is for collecting issues and proposals related to the new &amp;lt;code&amp;gt;&amp;amp;lt;iframe&amp;amp;gt;&amp;lt;/code&amp;gt; &amp;lt;code&amp;gt;sandbox&amp;lt;/code&amp;gt; attribute.&lt;br /&gt;
&lt;br /&gt;
== proposal drop sandbox attribute ==&lt;br /&gt;
&lt;br /&gt;
The new &#039;sandbox&#039; feature on &amp;lt;code&amp;gt;&amp;amp;lt;iframe&amp;amp;gt;&amp;lt;/code&amp;gt; should be considered for removal.&lt;br /&gt;
&lt;br /&gt;
In speaking with fellow developers at Mozilla, I&#039;ve collected the following feedback:&lt;br /&gt;
&lt;br /&gt;
* The sandbox feature and functionality needs a thorough security review.&lt;br /&gt;
* It will be a lot of work to implement properly.&lt;br /&gt;
* It may not actually solve the problem it is intending to solve.&lt;br /&gt;
&lt;br /&gt;
— [[User:Tantek|Tantek]] 01:56, 2 August 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== opinions and discussion ===&lt;br /&gt;
* +1 [[User:Tantek|Tantek Çelik]]&lt;br /&gt;
* -1 [http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027484.html Ian Fette]&lt;br /&gt;
* -1 [http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027485.html Adam Barth]&lt;br /&gt;
* -1 [http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027491.html Maciej Stachowiak]&lt;br /&gt;
* -1 [[User:EdwardOConnor|EdwardOConnor]] - While I&#039;m put off by the syntax (markup in attribute values looks quite gross), I think the feature is needed and the design certainly meets the need.&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
== why sandbox should be kept ==&lt;br /&gt;
=== implementation experience ===&lt;br /&gt;
[http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027491.html Per Maciej], support for the new &#039;sandbox&#039; feature on &amp;lt;code&amp;gt;&amp;amp;lt;iframe&amp;amp;gt;&amp;lt;/code&amp;gt; is &amp;quot;shipping in current versions of Safari and Chrome.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
The initial patch implementing it for WebKit can be seen here: http://trac.webkit.org/changeset/51577. &lt;br /&gt;
&lt;br /&gt;
This patch was 100k, but more than half of it is tests and the ChangeLog entry.&lt;br /&gt;
&lt;br /&gt;
=== security ===&lt;br /&gt;
&amp;quot;There&#039;s been a lot of security review, both on this list and in the W3C HTML WG.  I&#039;ve been meaning to write up a summary of all the discussion, but I haven&#039;t gotten around to it yet.  We ended up tweaking a few aspects, but generally the design seems solid.&amp;quot; —  [http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027485.html Adam Barth 2010-08-01]&lt;br /&gt;
&lt;br /&gt;
Also [http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027491.html from Maciej]:&lt;br /&gt;
Security experts have reviewed it (which security experts? links?). &#039;sandbox&#039; itself seems pretty solid, although there are possibly issues with related features such as text/html-sandboxed and &#039;seamless&#039; attribute.&lt;br /&gt;
&lt;br /&gt;
While more security review is always welcome, it seems like the basic idea is solid, and it&#039;s demonstrably implementable. &lt;br /&gt;
&lt;br /&gt;
=== examples in the wild ===&lt;br /&gt;
[http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027491.html Per Maciej], Content has been built using it.&lt;br /&gt;
&lt;br /&gt;
Which content? URLs to examples in the wild?&lt;br /&gt;
&lt;br /&gt;
- At one point, &amp;lt;iframe sandbox&amp;gt; was used by Google Image Search to prevent framebusting by enframed content. However, I believe it is currently disabled since it prevents plugins from working.&lt;br /&gt;
&lt;br /&gt;
=== use cases ===&lt;br /&gt;
[http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-August/027491.html Per Maciej], while it&#039;s unclear if &amp;amp;lt;iframe sandbox&amp;amp;gt; will work well for comments or other such cases of seamless untrusted content, it seems clearly useful for use cases like:&lt;br /&gt;
* gadgets&lt;br /&gt;
* ads&lt;br /&gt;
&lt;br /&gt;
Examples? Could someone provide code examples of how  &amp;amp;lt;iframe sandbox&amp;amp;gt; could be used for gadgets or ads or other use cases?&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4382</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4382"/>
		<updated>2010-01-12T01:31:13Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Proposal Details */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults. It is true that eventually UA stylesheets may have special rules for &amp;quot;figure &amp;gt; dt&amp;quot; and the like, but during the transition period it will be extra work to remove inappropriate default styles.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
=== Aesthetics ===&lt;br /&gt;
Aesthetics is not necessarily the sole or most important concern. However, many authors seem to find the novel use of dt and dd unpleasant to read. dt and dd are relatively obscure elements, they are very short abbreviations, and their meaning in context is unclear, especially in figure. In particular, the following markup seems mysterious and strikes many as ugly and unintuitive:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dt&amp;amp;gt;A Pair of Cats&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
  &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This seems to trigger a &amp;quot;yuck factor&amp;quot;, and it would be wise to avoid that. Aesthetics may seem like a relatively unimportant factor; however, the desire to avoid introducing new elements that led to dt/dd being used is itself largely an aesthetic concern.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Proposal 1 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;legend&amp;gt;...&amp;lt;/legend&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;legend&amp;gt;...&amp;lt;/legend&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;c&amp;gt;...&amp;lt;/c&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;c&amp;gt;...&amp;lt;/c&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;fcaption&amp;gt;...&amp;lt;/fcaption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dlabel&amp;gt;...&amp;lt;/dlabel&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details. The content portions of these elements (as opposed to the caption or label) would not have any special markup, they would be nested directly inside the figure or details element.&lt;br /&gt;
&lt;br /&gt;
=== Additional Rationale ===&lt;br /&gt;
&lt;br /&gt;
In addition to the rationale relative to the status quo in the spec, this proposal is better than some of the proposed alternatives.&lt;br /&gt;
&lt;br /&gt;
==== Follows HTML Precedent for Structured Elements ====&lt;br /&gt;
&lt;br /&gt;
Some HTML elements have relatively free content models, while others are &amp;quot;structured&amp;quot; - there are some or all child elements that have special meaning. Structured elements typically have helper elements that are specific to one element, or to a small family of related elements, to express their internal structure. Examples, from past versions of HTML, new in HTML5, and proposed for future versions of HTML:&lt;br /&gt;
&lt;br /&gt;
* table has thead, tfoot, tbody, td, th, tr, caption, col and colgroup.&lt;br /&gt;
* ul, ol and menu have li.&lt;br /&gt;
* fieldset has legend.&lt;br /&gt;
* applet and object have param.&lt;br /&gt;
* video and audio have source.&lt;br /&gt;
* dl has dt and dd.&lt;br /&gt;
* select and datalist have option and optgroup.&lt;br /&gt;
* ruby has rp and rt.&lt;br /&gt;
* datagrid was proposed to have a number of specialized child elements.&lt;br /&gt;
&lt;br /&gt;
In some cases (such as table or the list elements), the structured element can &#039;&#039;only&#039;&#039; have its specialized children. In other cases (fieldset, applet/object, or audio/video), the structured element can have relatively free content in addition to its specialized children.&lt;br /&gt;
&lt;br /&gt;
Thus, when introducing new structured elements such as figure and details, the normal design pattern for HTML is to introduce new specialized child elements to represent their structure. It is not the norm to reuse a very common element such as &amp;quot;h1&amp;quot; to represent specialized structure in a certain context. It is not the norm to reuse specialized child elements in a way that differs from their established content and meaning, as with dt/dd or legend. And it is unprecedented to use an attribute that can occur on any element to represent specialized structure, as with the proposed caption attribute. Furthermore, details and figure are not particularly closely related in purpose. One is a UI control, the other is a representation of the structure of prose documents. So it does not make sense for them to share a specialized child element. &lt;br /&gt;
&lt;br /&gt;
Applying a different design pattern for internal element structure to figure and details is likely to be confusing. The confusion of deviating from the usual HTML design pattern for this is likely to be greater than the cognitive cost of introducing no or fewer new elements.&lt;br /&gt;
&lt;br /&gt;
==== Avoids Clunky or Inappropriate Names ====&lt;br /&gt;
&lt;br /&gt;
The new element fltcap, suggested by another Change Proposal, appears confusing and mysterious. No one seems to get what it means on first reading. The expansion as &amp;quot;floating caption&amp;quot; seems confusing and semantically wrong. First, &amp;quot;floating caption&amp;quot; is not a very common term of art in publishing, but whenever it is used, it seems to refer to [http://www.google.com/search?client=safari&amp;amp;rls=en&amp;amp;q=floating+caption&amp;amp;ie=UTF-8&amp;amp;oe=UTF-8 captions overlayed on top of the image], not figure captions in general. Furthermore, a details control does not in general have a &amp;quot;caption&amp;quot;, floating or otherwise, rather it is a UI control and therefore is normally considered to have a &amp;quot;label&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The new element c is an extremely short and mysterious name. There is a limit to how many one-letter identifiers one can have in a language without rendering it unreadable or confusing, and they should be reserved for extremely common elements. Captions do not make the cut.&lt;br /&gt;
&lt;br /&gt;
Reusing legend does not seem like a good semantic fit for either figure or details. While a figure&#039;s caption is sometimes called a legend, the term &amp;quot;legend&amp;quot; in this context more often refers to the key next to a map or chart explaining how to read various visual elements. A details element is a UI element and those aren&#039;t ordinarily referred to as having a legend.&lt;br /&gt;
&lt;br /&gt;
h1 connotes &amp;quot;header&amp;quot;, which is not quite right for either figure or details.&lt;br /&gt;
&lt;br /&gt;
The caption attribute is good for figure, but not details. However, that proposal retains the dt/dd names for details. And those names remain clunky and non-obvious in the context of details (hard to remember which is which) and retain all of the general problems of using dt/dd for both elements. &lt;br /&gt;
&lt;br /&gt;
&amp;quot;caption&amp;quot; and &amp;quot;label&amp;quot;, or variations thereof, are the most semantically appropriate names for the caption and label respectively on figure and details.&lt;br /&gt;
&lt;br /&gt;
==== Does Not Introduce Compatibility Problems ====&lt;br /&gt;
&lt;br /&gt;
Reuse of almost any existing element in an unrelated context introduces compatibility problems, whether &amp;quot;hard&amp;quot; problems with parsing or behavior, or &amp;quot;soft&amp;quot; problems with pre-existing author styles. This Change Proposal uses brand new elements and thus avoids all these problems, unlike the use of dt/dd, legend, label, caption, or h1. All of those are known to have some lesser or greater technical issues.&lt;br /&gt;
&lt;br /&gt;
==== Does Not Introduce Redundant Elements for the Content ====&lt;br /&gt;
&lt;br /&gt;
Semantically, and for purposes of UA behavior, we only really need to distinguish the caption part of the element. There is no need to wrap the remaining body part with a special element. True, they can be handy as a styling hook, but authors who need that styling hook can always use &amp;lt;div&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Details ===&lt;br /&gt;
&lt;br /&gt;
This proposal includes the following specific changes:&lt;br /&gt;
&lt;br /&gt;
1) Define a new element fcaption. Details would be approximately as follows:&lt;br /&gt;
&lt;br /&gt;
Categories: none&lt;br /&gt;
Contexts in which the element may be used: As the first or last child of a figure element.&lt;br /&gt;
Content model: flow content&lt;br /&gt;
Content attributes: global attributes&lt;br /&gt;
DOM interface: HTMLElement&lt;br /&gt;
Semantics: The fcaption element represents the caption of the figure that is its parent, if it has a parent that is a figure element.&lt;br /&gt;
&lt;br /&gt;
2) Define a new element dlabel. Details would be as above, but replacing mentions of &amp;quot;figure&amp;quot; with &amp;quot;details&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
3) Change figure as follows:&lt;br /&gt;
New content model: &amp;quot;Flow content, optionally either preceded by or followed by an fcaption element.&amp;quot;&lt;br /&gt;
New caption definition: &amp;quot;The first fcaption element child of the element, if any, represents the caption of the figure element&#039;s contents. If there is no child fcaption element, then there is no caption.&amp;quot;&lt;br /&gt;
New content definition: &amp;quot;All child elements other than the first fcaption element, if there are any, represent the element&#039;s contents. If there are no child elements besides the first fcaption, then there are no contents.&lt;br /&gt;
Update the examples appropriately.&lt;br /&gt;
Update the suggested UA stylesheet in the Rendering section as appropriate.&lt;br /&gt;
&lt;br /&gt;
4) Change details as follows:&lt;br /&gt;
  New content model: &amp;quot;One dlabel element, followed by Flow content.&amp;quot;&lt;br /&gt;
  New summary definition: &amp;quot;The first dlabel element child of the element, if any, represents the summary of the details. If there is no child dlabel element, the user agent should provide its own label (e.g. &amp;quot;Details&amp;quot;).&amp;quot;&lt;br /&gt;
  New details definition: &amp;quot;All child elements other than the first dlabel element, if there are any, represent the details. If there are no child elements besides the first dlabel, then there are no details.&lt;br /&gt;
  Update the examples appropriately.&lt;br /&gt;
  Update the suggested UA stylesheet in the Rendering section as appropriate.&lt;br /&gt;
&lt;br /&gt;
=== Impact ===&lt;br /&gt;
&lt;br /&gt;
This proposal would have a potential negative impact on authors: it would introduce two new elements relative to the current spec.&lt;br /&gt;
&lt;br /&gt;
However, the positive impact is arguably greater. The new elements would be more readable, more intuitive, and more in line with the standard HTML design pattern for structured elements. Thus, despite the addition of more elements, the overall increase in cognitive load will be less. In addition, there is no need to use &amp;amp;lt;div&amp;amp;gt; or any other wonky workarounds to get it to work in legacy UAs.&lt;br /&gt;
&lt;br /&gt;
The impact on implementations is trivial. fcaption and dlabel are trivial to implement, and the appearance and behavior can be mostly defined via stylesheet. This is not significantly more work than altering the rendering of dt and dd inside figure and details; in fact it may be less work in some implementations.&lt;br /&gt;
&lt;br /&gt;
The impact on conformance checkers and authoring tools is also trivial; neither approach is easier or harder to validate or generate.&lt;br /&gt;
&lt;br /&gt;
There is no direct impact on users either way.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3b (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;figcaption&amp;gt;...&amp;lt;/figcaption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dsummary&amp;gt;...&amp;lt;/dsummary&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
Same as proposal 3, but with the element names &amp;quot;figcaption&amp;quot; and &amp;quot;dsummary&amp;quot; respectively.&lt;br /&gt;
&lt;br /&gt;
Reasoning: &amp;quot;figcaption&amp;quot; is more memorable. &amp;quot;dsummary&amp;quot; more accurately describes what the &amp;quot;label&amp;quot; of a &amp;lt;details&amp;gt; element is.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;amp;lt;caption&amp;gt;...&amp;amp;lt;/caption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;amp;lt;label&amp;gt;...&amp;amp;lt;/label&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
CON: &amp;quot;caption&amp;quot; has significant unsolved parsing problems.&lt;br /&gt;
&lt;br /&gt;
CON: &amp;quot;label&amp;quot; use in &amp;lt;details&amp;gt; would prevent the summary of a &amp;lt;details&amp;gt; from containing a labeled &amp;lt;progress&amp;gt; element, which is common, and would make the content model ambiguous (since the contents of a &amp;lt;details&amp;gt; can itself contain labels).&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;amp;lt;h1&amp;gt;...&amp;amp;lt;/h1&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;amp;lt;h1&amp;gt;...&amp;amp;lt;/h1&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
CON: Styling issues in legacy UAs.&lt;br /&gt;
&lt;br /&gt;
CON: Content model would be ambiguous.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;amp;lt;p caption&amp;gt;...&amp;lt;/p&amp;gt;...&amp;lt;/figure&amp;gt;&amp;lt;/code&amp;gt;)==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure to denote the contents of that element as being the caption. This proposal does not address the details element.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prose (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
* &amp;quot;caption&amp;quot; added to the list of global attributes in the &amp;quot;Global Attributes&amp;quot; section.  In its section it should contain roughly: &amp;quot;All HTML elements in the Flow Content category may have the caption content attribute set. The caption attribute is a boolean attribute.  When caption is set on an element that is a child of a figure element, the first such element defines the caption for that figure element.  It is invalid for a figure to have multiple child elements with the caption attribute set; in such a case, the first such element is the caption for the figure and the caption attribute is invalid and has no effect on subsequent elements.  The caption attribute is invalid and has no effect on any element that is not a direct child of a figure element.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;br /&gt;
&lt;br /&gt;
== Proposal 7 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;fcaption&amp;gt;...&amp;lt;/fcaption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dlabel&amp;gt;...&amp;lt;/dlabel&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;fcaption&amp;gt;...&amp;lt;/fcaption&amp;gt;&amp;lt;fbody&amp;gt;...&amp;lt;/fbody&amp;gt;&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dlabel&amp;gt;...&amp;lt;/dlabel&amp;gt;&amp;lt;dbody&amp;gt;...&amp;lt;/dbody&amp;gt;&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details to replace dt. In addition, it proposes an optional fbody element for use inside figure, and an optional dbody element for use inside details, to mark up the content/body and replace dd.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4380</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4380"/>
		<updated>2010-01-12T00:02:50Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Proposal Details */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults. It is true that eventually UA stylesheets may have special rules for &amp;quot;figure &amp;gt; dt&amp;quot; and the like, but during the transition period it will be extra work to remove inappropriate default styles.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
=== Aesthetics ===&lt;br /&gt;
Aesthetics is not necessarily the sole or most important concern. However, many authors seem to find the novel use of dt and dd unpleasant to read. dt and dd are relatively obscure elements, they are very short abbreviations, and their meaning in context is unclear, especially in figure. In particular, the following markup seems mysterious and strikes many as ugly and unintuitive:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dt&amp;amp;gt;A Pair of Cats&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
  &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This seems to trigger a &amp;quot;yuck factor&amp;quot;, and it would be wise to avoid that. Aesthetics may seem like a relatively unimportant factor; however, the desire to avoid introducing new elements that led to dt/dd being used is itself largely an aesthetic concern.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Proposal 1 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;legend&amp;gt;...&amp;lt;/legend&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;legend&amp;gt;...&amp;lt;/legend&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;c&amp;gt;...&amp;lt;/c&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;c&amp;gt;...&amp;lt;/c&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;fcaption&amp;gt;...&amp;lt;/fcaption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dlabel&amp;gt;...&amp;lt;/dlabel&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details. The content portions of these elements (as opposed to the caption or label) would not have any special markup, they would be nested directly inside the figure or details element.&lt;br /&gt;
&lt;br /&gt;
=== Additional Rationale ===&lt;br /&gt;
&lt;br /&gt;
In addition to the rationale relative to the status quo in the spec, this proposal is better than some of the proposed alternatives.&lt;br /&gt;
&lt;br /&gt;
==== Follows HTML Precedent for Structured Elements ====&lt;br /&gt;
&lt;br /&gt;
Some HTML elements have relatively free content models, while others are &amp;quot;structured&amp;quot; - there are some or all child elements that have special meaning. Structured elements typically have helper elements that are specific to one element, or to a small family of related elements, to express their internal structure. Examples, from past versions of HTML, new in HTML5, and proposed for future versions of HTML:&lt;br /&gt;
&lt;br /&gt;
* table has thead, tfoot, tbody, td, th, tr, caption, col and colgroup.&lt;br /&gt;
* ul, ol and menu have li.&lt;br /&gt;
* fieldset has legend.&lt;br /&gt;
* applet and object have param.&lt;br /&gt;
* video and audio have source.&lt;br /&gt;
* dl has dt and dd.&lt;br /&gt;
* select and datalist have option and optgroup.&lt;br /&gt;
* ruby has rp and rt.&lt;br /&gt;
* datagrid was proposed to have a number of specialized child elements.&lt;br /&gt;
&lt;br /&gt;
In some cases (such as table or the list elements), the structured element can &#039;&#039;only&#039;&#039; have its specialized children. In other cases (fieldset, applet/object, or audio/video), the structured element can have relatively free content in addition to its specialized children.&lt;br /&gt;
&lt;br /&gt;
Thus, when introducing new structured elements such as figure and details, the normal design pattern for HTML is to introduce new specialized child elements to represent their structure. It is not the norm to reuse a very common element such as &amp;quot;h1&amp;quot; to represent specialized structure in a certain context. It is not the norm to reuse specialized child elements in a way that differs from their established content and meaning, as with dt/dd or legend. And it is unprecedented to use an attribute that can occur on any element to represent specialized structure, as with the proposed caption attribute. Furthermore, details and figure are not particularly closely related in purpose. One is a UI control, the other is a representation of the structure of prose documents. So it does not make sense for them to share a specialized child element. &lt;br /&gt;
&lt;br /&gt;
Applying a different design pattern for internal element structure to figure and details is likely to be confusing. The confusion of deviating from the usual HTML design pattern for this is likely to be greater than the cognitive cost of introducing no or fewer new elements.&lt;br /&gt;
&lt;br /&gt;
==== Avoids Clunky or Inappropriate Names ====&lt;br /&gt;
&lt;br /&gt;
The new element fltcap, suggested by another Change Proposal, appears confusing and mysterious. No one seems to get what it means on first reading. The expansion as &amp;quot;floating caption&amp;quot; seems confusing and semantically wrong. First, &amp;quot;floating caption&amp;quot; is not a very common term of art in publishing, but whenever it is used, it seems to refer to [http://www.google.com/search?client=safari&amp;amp;rls=en&amp;amp;q=floating+caption&amp;amp;ie=UTF-8&amp;amp;oe=UTF-8 captions overlayed on top of the image], not figure captions in general. Furthermore, a details control does not in general have a &amp;quot;caption&amp;quot;, floating or otherwise, rather it is a UI control and therefore is normally considered to have a &amp;quot;label&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The new element c is an extremely short and mysterious name. There is a limit to how many one-letter identifiers one can have in a language without rendering it unreadable or confusing, and they should be reserved for extremely common elements. Captions do not make the cut.&lt;br /&gt;
&lt;br /&gt;
Reusing legend does not seem like a good semantic fit for either figure or details. While a figure&#039;s caption is sometimes called a legend, the term &amp;quot;legend&amp;quot; in this context more often refers to the key next to a map or chart explaining how to read various visual elements. A details element is a UI element and those aren&#039;t ordinarily referred to as having a legend.&lt;br /&gt;
&lt;br /&gt;
h1 connotes &amp;quot;header&amp;quot;, which is not quite right for either figure or details.&lt;br /&gt;
&lt;br /&gt;
The caption attribute is good for figure, but not details. However, that proposal retains the dt/dd names for details. And those names remain clunky and non-obvious in the context of details (hard to remember which is which) and retain all of the general problems of using dt/dd for both elements. &lt;br /&gt;
&lt;br /&gt;
&amp;quot;caption&amp;quot; and &amp;quot;label&amp;quot;, or variations thereof, are the most semantically appropriate names for the caption and label respectively on figure and details.&lt;br /&gt;
&lt;br /&gt;
==== Does Not Introduce Compatibility Problems ====&lt;br /&gt;
&lt;br /&gt;
Reuse of almost any existing element in an unrelated context introduces compatibility problems, whether &amp;quot;hard&amp;quot; problems with parsing or behavior, or &amp;quot;soft&amp;quot; problems with pre-existing author styles. This Change Proposal uses brand new elements and thus avoids all these problems, unlike the use of dt/dd, legend, label, caption, or h1. All of those are known to have some lesser or greater technical issues.&lt;br /&gt;
&lt;br /&gt;
==== Does Not Introduce Redundant Elements for the Content ====&lt;br /&gt;
&lt;br /&gt;
Semantically, and for purposes of UA behavior, we only really need to distinguish the caption part of the element. There is no need to wrap the remaining body part with a special element. True, they can be handy as a styling hook, but authors who need that styling hook can always use &amp;lt;div&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Proposal Details ===&lt;br /&gt;
&lt;br /&gt;
This proposal includes the following specific changes:&lt;br /&gt;
&lt;br /&gt;
1) Define a new element fcaption. Details would be approximately as follows:&lt;br /&gt;
&lt;br /&gt;
Categories: none&lt;br /&gt;
Contexts in which the element may be used: As the first or last child of a figure element.&lt;br /&gt;
Content model: flow content&lt;br /&gt;
Content attributes: global attributes&lt;br /&gt;
DOM interface: HTMLElement&lt;br /&gt;
Semantics: The fcaption element represents the caption of the figure that is its parent, if it has a parent that is a figure element.&lt;br /&gt;
&lt;br /&gt;
2) Define a new element dlabel. Details would be as above, but replacing mentions of &amp;quot;figure&amp;quot; with &amp;quot;details&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
3) Change figure as follows:&lt;br /&gt;
New content model: &amp;quot;Flow content, optionally either preceded by or followed by an fcaption element.&amp;quot;&lt;br /&gt;
New caption definition: &amp;quot;The first fcaption element child of the element, if any, represents the caption of the figure element&#039;s contents. If there is no child fcaption element, then there is no caption.&amp;quot;&lt;br /&gt;
New content definition: &amp;quot;All child elements other than the first fcaption element, if there are any, represent the element&#039;s contents. If there are no child elements besides the first fcaption, then there are no contents.&lt;br /&gt;
Update the examples appropriately.&lt;br /&gt;
Update the suggested UA stylesheet in the Rendering section as appropriate.&lt;br /&gt;
&lt;br /&gt;
4) Change details as follows:&lt;br /&gt;
  New content model: &amp;quot;One dlabel element, followed by Flow content.&amp;quot;&lt;br /&gt;
  New summary definition: &amp;quot;The first dlabel element child of the element, if any, represents the summary of the details. If there is no child dlabel element, the user agent should provide its own label (e.g. &amp;quot;Details&amp;quot;).&amp;quot;&lt;br /&gt;
  New details definition: &amp;quot;All child elements other than the first dlabel element, if there are any, represent the details. If there are no child elements besides the first dlabel, then there are no details.&lt;br /&gt;
  Update the examples appropriately.&lt;br /&gt;
  Update the suggested UA stylesheet in the Rendering section as appropriate.&lt;br /&gt;
&lt;br /&gt;
=== Impact ===&lt;br /&gt;
&lt;br /&gt;
This proposal would have a potential negative impact on authors: it would introduce two new elements relative to the current spec.&lt;br /&gt;
&lt;br /&gt;
However, the positive impact is arguably greater. The new elements would be more readable, more intuitive, and more in line with the standard HTML design pattern for structured elements. Thus, despite the addition of more elements, the overall increase in cognitive load will be less. In addition, there is no need to use &amp;amp;lt;div&amp;gt; or any other wonky workarounds to get it to work in legacy UAs.&lt;br /&gt;
&lt;br /&gt;
The impact on implementations is trivial. fcaption and dlabel are trivial to implement, and the appearance and behavior can be mostly defined via stylesheet. This is not significantly more work than altering the rendering of dt and dd inside figure and details; in fact it may be less work in some implementations.&lt;br /&gt;
&lt;br /&gt;
The impact on conformance checkers and authoring tools is also trivial; neither approach is easier or harder to validate or generate.&lt;br /&gt;
&lt;br /&gt;
There is no direct impact on users either way.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3b (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;figcaption&amp;gt;...&amp;lt;/figcaption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dsummary&amp;gt;...&amp;lt;/dsummary&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
Same as proposal 3, but with the element names &amp;quot;figcaption&amp;quot; and &amp;quot;dsummary&amp;quot; respectively.&lt;br /&gt;
&lt;br /&gt;
Reasoning: &amp;quot;figcaption&amp;quot; is more memorable. &amp;quot;dsummary&amp;quot; more accurately describes what the &amp;quot;label&amp;quot; of a &amp;lt;details&amp;gt; element is.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;amp;lt;caption&amp;gt;...&amp;amp;lt;/caption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;amp;lt;label&amp;gt;...&amp;amp;lt;/label&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
CON: &amp;quot;caption&amp;quot; has significant unsolved parsing problems.&lt;br /&gt;
&lt;br /&gt;
CON: &amp;quot;label&amp;quot; use in &amp;lt;details&amp;gt; would prevent the summary of a &amp;lt;details&amp;gt; from containing a labeled &amp;lt;progress&amp;gt; element, which is common, and would make the content model ambiguous (since the contents of a &amp;lt;details&amp;gt; can itself contain labels).&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;amp;lt;h1&amp;gt;...&amp;amp;lt;/h1&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;amp;lt;h1&amp;gt;...&amp;amp;lt;/h1&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
CON: Styling issues in legacy UAs.&lt;br /&gt;
&lt;br /&gt;
CON: Content model would be ambiguous.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;amp;lt;p caption&amp;gt;...&amp;lt;/p&amp;gt;...&amp;lt;/figure&amp;gt;&amp;lt;/code&amp;gt;)==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure to denote the contents of that element as being the caption. This proposal does not address the details element.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prose (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
* &amp;quot;caption&amp;quot; added to the list of global attributes in the &amp;quot;Global Attributes&amp;quot; section.  In its section it should contain roughly: &amp;quot;All HTML elements in the Flow Content category may have the caption content attribute set. The caption attribute is a boolean attribute.  When caption is set on an element that is a child of a figure element, the first such element defines the caption for that figure element.  It is invalid for a figure to have multiple child elements with the caption attribute set; in such a case, the first such element is the caption for the figure and the caption attribute is invalid and has no effect on subsequent elements.  The caption attribute is invalid and has no effect on any element that is not a direct child of a figure element.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;br /&gt;
&lt;br /&gt;
== Proposal 7 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;fcaption&amp;gt;...&amp;lt;/fcaption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dlabel&amp;gt;...&amp;lt;/dlabel&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;fcaption&amp;gt;...&amp;lt;/fcaption&amp;gt;&amp;lt;fbody&amp;gt;...&amp;lt;/fbody&amp;gt;&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dlabel&amp;gt;...&amp;lt;/dlabel&amp;gt;&amp;lt;dbody&amp;gt;...&amp;lt;/dbody&amp;gt;&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details to replace dt. In addition, it proposes an optional fbody element for use inside figure, and an optional dbody element for use inside details, to mark up the content/body and replace dd.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4379</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4379"/>
		<updated>2010-01-12T00:00:16Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Proposal Details */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults. It is true that eventually UA stylesheets may have special rules for &amp;quot;figure &amp;gt; dt&amp;quot; and the like, but during the transition period it will be extra work to remove inappropriate default styles.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
=== Aesthetics ===&lt;br /&gt;
Aesthetics is not necessarily the sole or most important concern. However, many authors seem to find the novel use of dt and dd unpleasant to read. dt and dd are relatively obscure elements, they are very short abbreviations, and their meaning in context is unclear, especially in figure. In particular, the following markup seems mysterious and strikes many as ugly and unintuitive:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dt&amp;amp;gt;A Pair of Cats&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
  &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This seems to trigger a &amp;quot;yuck factor&amp;quot;, and it would be wise to avoid that. Aesthetics may seem like a relatively unimportant factor; however, the desire to avoid introducing new elements that led to dt/dd being used is itself largely an aesthetic concern.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Proposal 1 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;legend&amp;gt;...&amp;lt;/legend&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;legend&amp;gt;...&amp;lt;/legend&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;c&amp;gt;...&amp;lt;/c&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;c&amp;gt;...&amp;lt;/c&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;fcaption&amp;gt;...&amp;lt;/fcaption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dlabel&amp;gt;...&amp;lt;/dlabel&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details. The content portions of these elements (as opposed to the caption or label) would not have any special markup, they would be nested directly inside the figure or details element.&lt;br /&gt;
&lt;br /&gt;
=== Additional Rationale ===&lt;br /&gt;
&lt;br /&gt;
In addition to the rationale relative to the status quo in the spec, this proposal is better than some of the proposed alternatives.&lt;br /&gt;
&lt;br /&gt;
==== Follows HTML Precedent for Structured Elements ====&lt;br /&gt;
&lt;br /&gt;
Some HTML elements have relatively free content models, while others are &amp;quot;structured&amp;quot; - there are some or all child elements that have special meaning. Structured elements typically have helper elements that are specific to one element, or to a small family of related elements, to express their internal structure. Examples, from past versions of HTML, new in HTML5, and proposed for future versions of HTML:&lt;br /&gt;
&lt;br /&gt;
* table has thead, tfoot, tbody, td, th, tr, caption, col and colgroup.&lt;br /&gt;
* ul, ol and menu have li.&lt;br /&gt;
* fieldset has legend.&lt;br /&gt;
* applet and object have param.&lt;br /&gt;
* video and audio have source.&lt;br /&gt;
* dl has dt and dd.&lt;br /&gt;
* select and datalist have option and optgroup.&lt;br /&gt;
* ruby has rp and rt.&lt;br /&gt;
* datagrid was proposed to have a number of specialized child elements.&lt;br /&gt;
&lt;br /&gt;
In some cases (such as table or the list elements), the structured element can &#039;&#039;only&#039;&#039; have its specialized children. In other cases (fieldset, applet/object, or audio/video), the structured element can have relatively free content in addition to its specialized children.&lt;br /&gt;
&lt;br /&gt;
Thus, when introducing new structured elements such as figure and details, the normal design pattern for HTML is to introduce new specialized child elements to represent their structure. It is not the norm to reuse a very common element such as &amp;quot;h1&amp;quot; to represent specialized structure in a certain context. It is not the norm to reuse specialized child elements in a way that differs from their established content and meaning, as with dt/dd or legend. And it is unprecedented to use an attribute that can occur on any element to represent specialized structure, as with the proposed caption attribute. Furthermore, details and figure are not particularly closely related in purpose. One is a UI control, the other is a representation of the structure of prose documents. So it does not make sense for them to share a specialized child element. &lt;br /&gt;
&lt;br /&gt;
Applying a different design pattern for internal element structure to figure and details is likely to be confusing. The confusion of deviating from the usual HTML design pattern for this is likely to be greater than the cognitive cost of introducing no or fewer new elements.&lt;br /&gt;
&lt;br /&gt;
==== Avoids Clunky or Inappropriate Names ====&lt;br /&gt;
&lt;br /&gt;
The new element fltcap, suggested by another Change Proposal, appears confusing and mysterious. No one seems to get what it means on first reading. The expansion as &amp;quot;floating caption&amp;quot; seems confusing and semantically wrong. First, &amp;quot;floating caption&amp;quot; is not a very common term of art in publishing, but whenever it is used, it seems to refer to [http://www.google.com/search?client=safari&amp;amp;rls=en&amp;amp;q=floating+caption&amp;amp;ie=UTF-8&amp;amp;oe=UTF-8 captions overlayed on top of the image], not figure captions in general. Furthermore, a details control does not in general have a &amp;quot;caption&amp;quot;, floating or otherwise, rather it is a UI control and therefore is normally considered to have a &amp;quot;label&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The new element c is an extremely short and mysterious name. There is a limit to how many one-letter identifiers one can have in a language without rendering it unreadable or confusing, and they should be reserved for extremely common elements. Captions do not make the cut.&lt;br /&gt;
&lt;br /&gt;
Reusing legend does not seem like a good semantic fit for either figure or details. While a figure&#039;s caption is sometimes called a legend, the term &amp;quot;legend&amp;quot; in this context more often refers to the key next to a map or chart explaining how to read various visual elements. A details element is a UI element and those aren&#039;t ordinarily referred to as having a legend.&lt;br /&gt;
&lt;br /&gt;
h1 connotes &amp;quot;header&amp;quot;, which is not quite right for either figure or details.&lt;br /&gt;
&lt;br /&gt;
The caption attribute is good for figure, but not details. However, that proposal retains the dt/dd names for details. And those names remain clunky and non-obvious in the context of details (hard to remember which is which) and retain all of the general problems of using dt/dd for both elements. &lt;br /&gt;
&lt;br /&gt;
&amp;quot;caption&amp;quot; and &amp;quot;label&amp;quot;, or variations thereof, are the most semantically appropriate names for the caption and label respectively on figure and details.&lt;br /&gt;
&lt;br /&gt;
==== Does Not Introduce Compatibility Problems ====&lt;br /&gt;
&lt;br /&gt;
Reuse of almost any existing element in an unrelated context introduces compatibility problems, whether &amp;quot;hard&amp;quot; problems with parsing or behavior, or &amp;quot;soft&amp;quot; problems with pre-existing author styles. This Change Proposal uses brand new elements and thus avoids all these problems, unlike the use of dt/dd, legend, label, caption, or h1. All of those are known to have some lesser or greater technical issues.&lt;br /&gt;
&lt;br /&gt;
==== Does Not Introduce Redundant Elements for the Content ====&lt;br /&gt;
&lt;br /&gt;
Semantically, and for purposes of UA behavior, we only really need to distinguish the caption part of the element. There is no need to wrap the remaining body part with a special element. True, they can be handy as a styling hook, but authors who need that styling hook can always use &amp;lt;div&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Proposal Details ===&lt;br /&gt;
&lt;br /&gt;
This proposal includes the following specific changes:&lt;br /&gt;
&lt;br /&gt;
1) Define a new element fcaption. Details would be approximately as follows:&lt;br /&gt;
   Categories: none&lt;br /&gt;
   Contexts in which the element may be used: As the first or last child of a figure element.&lt;br /&gt;
   Content model: flow content&lt;br /&gt;
   Content attributes: global attributes&lt;br /&gt;
   DOM interface: HTMLElement&lt;br /&gt;
   Semantics: The fcaption element represents the caption of the figure that is its parent, if it has a parent that is a figure element.&lt;br /&gt;
&lt;br /&gt;
2) Define a new element dlabel. Details would be as above, but replacing mentions of &amp;quot;figure&amp;quot; with &amp;quot;details&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
3) Change figure as follows:&lt;br /&gt;
  New content model: &amp;quot;Flow content, optionally either preceded by or followed by an fcaption element.&amp;quot;&lt;br /&gt;
  New caption definition: &amp;quot;The first fcaption element child of the element, if any, represents the caption of the figure element&#039;s contents. If there is no child fcaption element, then there is no caption.&amp;quot;&lt;br /&gt;
  New content definition: &amp;quot;All child elements other than the first fcaption element, if there are any, represent the element&#039;s contents. If there are no child elements besides the first fcaption, then there are no contents.&lt;br /&gt;
  Update the examples appropriately.&lt;br /&gt;
  Update the suggested UA stylesheet in the Rendering section as appropriate.&lt;br /&gt;
&lt;br /&gt;
4) Change details as follows:&lt;br /&gt;
  New content model: &amp;quot;One dlabel element, followed by Flow content.&amp;quot;&lt;br /&gt;
  New summary definition: &amp;quot;The first dlabel element child of the element, if any, represents the summary of the details. If there is no child dlabel element, the user agent should provide its own label (e.g. &amp;quot;Details&amp;quot;).&amp;quot;&lt;br /&gt;
  New details definition: &amp;quot;All child elements other than the first dlabel element, if there are any, represent the details. If there are no child elements besides the first dlabel, then there are no details.&lt;br /&gt;
  Update the examples appropriately.&lt;br /&gt;
  Update the suggested UA stylesheet in the Rendering section as appropriate.&lt;br /&gt;
&lt;br /&gt;
=== Impact ===&lt;br /&gt;
&lt;br /&gt;
This proposal would have a potential negative impact on authors: it would introduce two new elements relative to the current spec.&lt;br /&gt;
&lt;br /&gt;
However, the positive impact is arguably greater. The new elements would be more readable, more intuitive, and more in line with the standard HTML design pattern for structured elements. Thus, despite the addition of more elements, the overall increase in cognitive load will be less. In addition, there is no need to use &amp;amp;lt;div&amp;gt; or any other wonky workarounds to get it to work in legacy UAs.&lt;br /&gt;
&lt;br /&gt;
The impact on implementations is trivial. fcaption and dlabel are trivial to implement, and the appearance and behavior can be mostly defined via stylesheet. This is not significantly more work than altering the rendering of dt and dd inside figure and details; in fact it may be less work in some implementations.&lt;br /&gt;
&lt;br /&gt;
The impact on conformance checkers and authoring tools is also trivial; neither approach is easier or harder to validate or generate.&lt;br /&gt;
&lt;br /&gt;
There is no direct impact on users either way.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3b (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;figcaption&amp;gt;...&amp;lt;/figcaption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dsummary&amp;gt;...&amp;lt;/dsummary&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
Same as proposal 3, but with the element names &amp;quot;figcaption&amp;quot; and &amp;quot;dsummary&amp;quot; respectively.&lt;br /&gt;
&lt;br /&gt;
Reasoning: &amp;quot;figcaption&amp;quot; is more memorable. &amp;quot;dsummary&amp;quot; more accurately describes what the &amp;quot;label&amp;quot; of a &amp;lt;details&amp;gt; element is.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;amp;lt;caption&amp;gt;...&amp;amp;lt;/caption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;amp;lt;label&amp;gt;...&amp;amp;lt;/label&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
CON: &amp;quot;caption&amp;quot; has significant unsolved parsing problems.&lt;br /&gt;
&lt;br /&gt;
CON: &amp;quot;label&amp;quot; use in &amp;lt;details&amp;gt; would prevent the summary of a &amp;lt;details&amp;gt; from containing a labeled &amp;lt;progress&amp;gt; element, which is common, and would make the content model ambiguous (since the contents of a &amp;lt;details&amp;gt; can itself contain labels).&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;amp;lt;h1&amp;gt;...&amp;amp;lt;/h1&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;amp;lt;h1&amp;gt;...&amp;amp;lt;/h1&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
CON: Styling issues in legacy UAs.&lt;br /&gt;
&lt;br /&gt;
CON: Content model would be ambiguous.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;amp;lt;p caption&amp;gt;...&amp;lt;/p&amp;gt;...&amp;lt;/figure&amp;gt;&amp;lt;/code&amp;gt;)==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure to denote the contents of that element as being the caption. This proposal does not address the details element.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prose (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
* &amp;quot;caption&amp;quot; added to the list of global attributes in the &amp;quot;Global Attributes&amp;quot; section.  In its section it should contain roughly: &amp;quot;All HTML elements in the Flow Content category may have the caption content attribute set. The caption attribute is a boolean attribute.  When caption is set on an element that is a child of a figure element, the first such element defines the caption for that figure element.  It is invalid for a figure to have multiple child elements with the caption attribute set; in such a case, the first such element is the caption for the figure and the caption attribute is invalid and has no effect on subsequent elements.  The caption attribute is invalid and has no effect on any element that is not a direct child of a figure element.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;br /&gt;
&lt;br /&gt;
== Proposal 7 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;fcaption&amp;gt;...&amp;lt;/fcaption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dlabel&amp;gt;...&amp;lt;/dlabel&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;fcaption&amp;gt;...&amp;lt;/fcaption&amp;gt;&amp;lt;fbody&amp;gt;...&amp;lt;/fbody&amp;gt;&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dlabel&amp;gt;...&amp;lt;/dlabel&amp;gt;&amp;lt;dbody&amp;gt;...&amp;lt;/dbody&amp;gt;&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details to replace dt. In addition, it proposes an optional fbody element for use inside figure, and an optional dbody element for use inside details, to mark up the content/body and replace dd.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4377</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4377"/>
		<updated>2010-01-11T23:51:33Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Proposal 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults. It is true that eventually UA stylesheets may have special rules for &amp;quot;figure &amp;gt; dt&amp;quot; and the like, but during the transition period it will be extra work to remove inappropriate default styles.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
=== Aesthetics ===&lt;br /&gt;
Aesthetics is not necessarily the sole or most important concern. However, many authors seem to find the novel use of dt and dd unpleasant to read. dt and dd are relatively obscure elements, they are very short abbreviations, and their meaning in context is unclear, especially in figure. In particular, the following markup seems mysterious and strikes many as ugly and unintuitive:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dt&amp;amp;gt;A Pair of Cats&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
  &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This seems to trigger a &amp;quot;yuck factor&amp;quot;, and it would be wise to avoid that. Aesthetics may seem like a relatively unimportant factor; however, the desire to avoid introducing new elements that led to dt/dd being used is itself largely an aesthetic concern.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Proposal 1 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;legend&amp;gt;...&amp;lt;/legend&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;legend&amp;gt;...&amp;lt;/legend&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;c&amp;gt;...&amp;lt;/c&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;c&amp;gt;...&amp;lt;/c&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;fcaption&amp;gt;...&amp;lt;/fcaption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dlabel&amp;gt;...&amp;lt;/dlabel&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details. The content portions of these elements (as opposed to the caption or label) would not have any special markup, they would be nested directly inside the figure or details element.&lt;br /&gt;
&lt;br /&gt;
=== Additional Rationale ===&lt;br /&gt;
&lt;br /&gt;
In addition to the rationale relative to the status quo in the spec, this proposal is better than some of the proposed alternatives.&lt;br /&gt;
&lt;br /&gt;
==== Follows HTML Precedent for Structured Elements ====&lt;br /&gt;
&lt;br /&gt;
Some HTML elements have relatively free content models, while others are &amp;quot;structured&amp;quot; - there are some or all child elements that have special meaning. Structured elements typically have helper elements that are specific to one element, or to a small family of related elements, to express their internal structure. Examples, from past versions of HTML, new in HTML5, and proposed for future versions of HTML:&lt;br /&gt;
&lt;br /&gt;
* table has thead, tfoot, tbody, td, th, tr, caption, col and colgroup.&lt;br /&gt;
* ul, ol and menu have li.&lt;br /&gt;
* fieldset has legend.&lt;br /&gt;
* applet and object have param.&lt;br /&gt;
* video and audio have source.&lt;br /&gt;
* dl has dt and dd.&lt;br /&gt;
* select and datalist have option and optgroup.&lt;br /&gt;
* ruby has rp and rt.&lt;br /&gt;
* datagrid was proposed to have a number of specialized child elements.&lt;br /&gt;
&lt;br /&gt;
In some cases (such as table or the list elements), the structured element can &#039;&#039;only&#039;&#039; have its specialized children. In other cases (fieldset, applet/object, or audio/video), the structured element can have relatively free content in addition to its specialized children.&lt;br /&gt;
&lt;br /&gt;
Thus, when introducing new structured elements such as figure and details, the normal design pattern for HTML is to introduce new specialized child elements to represent their structure. It is not the norm to reuse a very common element such as &amp;quot;h1&amp;quot; to represent specialized structure in a certain context. It is not the norm to reuse specialized child elements in a way that differs from their established content and meaning, as with dt/dd or legend. And it is unprecedented to use an attribute that can occur on any element to represent specialized structure, as with the proposed caption attribute. Furthermore, details and figure are not particularly closely related in purpose. One is a UI control, the other is a representation of the structure of prose documents. So it does not make sense for them to share a specialized child element. &lt;br /&gt;
&lt;br /&gt;
Applying a different design pattern for internal element structure to figure and details is likely to be confusing. The confusion of deviating from the usual HTML design pattern for this is likely to be greater than the cognitive cost of introducing no or fewer new elements.&lt;br /&gt;
&lt;br /&gt;
==== Avoids Clunky or Inappropriate Names ====&lt;br /&gt;
&lt;br /&gt;
The new element fltcap, suggested by another Change Proposal, appears confusing and mysterious. No one seems to get what it means on first reading. The expansion as &amp;quot;floating caption&amp;quot; seems confusing and semantically wrong. First, &amp;quot;floating caption&amp;quot; is not a very common term of art in publishing, but whenever it is used, it seems to refer to [http://www.google.com/search?client=safari&amp;amp;rls=en&amp;amp;q=floating+caption&amp;amp;ie=UTF-8&amp;amp;oe=UTF-8 captions overlayed on top of the image], not figure captions in general. Furthermore, a details control does not in general have a &amp;quot;caption&amp;quot;, floating or otherwise, rather it is a UI control and therefore is normally considered to have a &amp;quot;label&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The new element c is an extremely short and mysterious name. There is a limit to how many one-letter identifiers one can have in a language without rendering it unreadable or confusing, and they should be reserved for extremely common elements. Captions do not make the cut.&lt;br /&gt;
&lt;br /&gt;
Reusing legend does not seem like a good semantic fit for either figure or details. While a figure&#039;s caption is sometimes called a legend, the term &amp;quot;legend&amp;quot; in this context more often refers to the key next to a map or chart explaining how to read various visual elements. A details element is a UI element and those aren&#039;t ordinarily referred to as having a legend.&lt;br /&gt;
&lt;br /&gt;
h1 connotes &amp;quot;header&amp;quot;, which is not quite right for either figure or details.&lt;br /&gt;
&lt;br /&gt;
The caption attribute is good for figure, but not details. However, that proposal retains the dt/dd names for details. And those names remain clunky and non-obvious in the context of details (hard to remember which is which) and retain all of the general problems of using dt/dd for both elements. &lt;br /&gt;
&lt;br /&gt;
&amp;quot;caption&amp;quot; and &amp;quot;label&amp;quot;, or variations thereof, are the most semantically appropriate names for the caption and label respectively on figure and details.&lt;br /&gt;
&lt;br /&gt;
==== Does Not Introduce Compatibility Problems ====&lt;br /&gt;
&lt;br /&gt;
Reuse of almost any existing element in an unrelated context introduces compatibility problems, whether &amp;quot;hard&amp;quot; problems with parsing or behavior, or &amp;quot;soft&amp;quot; problems with pre-existing author styles. This Change Proposal uses brand new elements and thus avoids all these problems, unlike the use of dt/dd, legend, label, caption, or h1. All of those are known to have some lesser or greater technical issues.&lt;br /&gt;
&lt;br /&gt;
==== Does Not Introduce Redundant Elements for the Content ====&lt;br /&gt;
&lt;br /&gt;
Semantically, and for purposes of UA behavior, we only really need to distinguish the caption part of the element. There is no need to wrap the remaining body part with a special element. True, they can be handy as a styling hook, but authors who need that styling hook can always use &amp;lt;div&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Proposal Details ===&lt;br /&gt;
&lt;br /&gt;
This proposal includes the following specific changes:&lt;br /&gt;
&lt;br /&gt;
1) Define a new element fcaption. Details would be approximately as follows:&lt;br /&gt;
   Categories: none&lt;br /&gt;
   Contexts in which the element may be used: As the first or last child of a figure element.&lt;br /&gt;
   Content model: flow content&lt;br /&gt;
   Content attributes: global attributes&lt;br /&gt;
   DOM interface: HTMLElement&lt;br /&gt;
   Semantics: The fcaption element represents the caption of the figure that is its parent, if it has a parent that is a figure element.&lt;br /&gt;
&lt;br /&gt;
2) Define a new element dlabel. Details would be as above, but replacing mentions of &amp;quot;figure&amp;quot; with &amp;quot;details&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
3) Change figure as follows:&lt;br /&gt;
  New content model: &amp;quot;Flow content, optionally either preceded by or followed by an fcaption element.&amp;quot;&lt;br /&gt;
  New caption definition: &amp;quot;The first fcaption element child of the element, if any, represents the caption of the figure element&#039;s contents. If there is no child fcaption element, then there is no caption.&amp;quot;&lt;br /&gt;
  New content definition: &amp;quot;All child elements other than the first fcaption element, if there are any, represent the element&#039;s contents. If there are no child elements besides the first fcaption, then there are no contents.&lt;br /&gt;
  Update the examples appropriately.&lt;br /&gt;
  Update the suggested UA stylesheet in the Rendering section as appropriate.&lt;br /&gt;
&lt;br /&gt;
4) Change details as follows:&lt;br /&gt;
  New content model: &amp;quot;Flow content, optionally either preceded by or followed by a dlabel element.&amp;quot;&lt;br /&gt;
  New summary definition: &amp;quot;The first dlabel element child of the element, if any, represents the summary of the details. If there is no child dlabel element, the user agent should provide its own label (e.g. &amp;quot;Details&amp;quot;).&amp;quot;&lt;br /&gt;
  New details definition: &amp;quot;All child elements other than the first dlabel element, if there are any, represent the details. If there are no child elements besides the first dlabel, then there are no details.&lt;br /&gt;
  Update the examples appropriately.&lt;br /&gt;
  Update the suggested UA stylesheet in the Rendering section as appropriate.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Impact ===&lt;br /&gt;
&lt;br /&gt;
This proposal would have a potential negative impact on authors: it would introduce two new elements relative to the current spec.&lt;br /&gt;
&lt;br /&gt;
However, the positive impact is arguably greater. The new elements would be more readable, more intuitive, and more in line with the standard HTML design pattern for structured elements. Thus, despite the addition of more elements, the overall increase in cognitive load will be less. In addition, there is no need to use &amp;lt;div&amp;gt; or any other wonky workarounds to get it to work in legacy UAs.&lt;br /&gt;
&lt;br /&gt;
The impact on implementations is trivial. fcaption and dlabel are trivial to implement, and the appearance and behavior can be mostly defined via stylesheet. This is not significantly more work than altering the rendering of dt and dd inside figure and details; in fact it may be less work in some implementations.&lt;br /&gt;
&lt;br /&gt;
The impact on conformance checkers and authoring tools is also trivial; neither approach is easier or harder to validate or generate.&lt;br /&gt;
&lt;br /&gt;
There is no direct impact on users either way.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3b (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;figcaption&amp;gt;...&amp;lt;/figcaption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dsummary&amp;gt;...&amp;lt;/dsummary&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
Same as proposal 3, but with the element names &amp;quot;figcaption&amp;quot; and &amp;quot;dsummary&amp;quot; respectively.&lt;br /&gt;
&lt;br /&gt;
Reasoning: &amp;quot;figcaption&amp;quot; is more memorable. &amp;quot;dsummary&amp;quot; more accurately describes what the &amp;quot;label&amp;quot; of a &amp;lt;details&amp;gt; element is.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;amp;lt;caption&amp;gt;...&amp;amp;lt;/caption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;amp;lt;label&amp;gt;...&amp;amp;lt;/label&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
CON: &amp;quot;caption&amp;quot; has significant unsolved parsing problems.&lt;br /&gt;
&lt;br /&gt;
CON: &amp;quot;label&amp;quot; use in &amp;lt;details&amp;gt; would prevent the summary of a &amp;lt;details&amp;gt; from containing a labeled &amp;lt;progress&amp;gt; element, which is common, and would make the content model ambiguous (since the contents of a &amp;lt;details&amp;gt; can itself contain labels).&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;amp;lt;h1&amp;gt;...&amp;amp;lt;/h1&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;amp;lt;h1&amp;gt;...&amp;amp;lt;/h1&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
CON: Styling issues in legacy UAs.&lt;br /&gt;
&lt;br /&gt;
CON: Content model would be ambiguous.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;amp;lt;p caption&amp;gt;...&amp;lt;/p&amp;gt;...&amp;lt;/figure&amp;gt;&amp;lt;/code&amp;gt;)==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure to denote the contents of that element as being the caption. This proposal does not address the details element.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prose (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
* &amp;quot;caption&amp;quot; added to the list of global attributes in the &amp;quot;Global Attributes&amp;quot; section.  In its section it should contain roughly: &amp;quot;All HTML elements in the Flow Content category may have the caption content attribute set. The caption attribute is a boolean attribute.  When caption is set on an element that is a child of a figure element, the first such element defines the caption for that figure element.  It is invalid for a figure to have multiple child elements with the caption attribute set; in such a case, the first such element is the caption for the figure and the caption attribute is invalid and has no effect on subsequent elements.  The caption attribute is invalid and has no effect on any element that is not a direct child of a figure element.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;br /&gt;
&lt;br /&gt;
== Proposal 7 (&amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;fcaption&amp;gt;...&amp;lt;/fcaption&amp;gt;...&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dlabel&amp;gt;...&amp;lt;/dlabel&amp;gt;...&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;&amp;lt;figure&amp;gt;&amp;lt;fcaption&amp;gt;...&amp;lt;/fcaption&amp;gt;&amp;lt;fbody&amp;gt;...&amp;lt;/fbody&amp;gt;&amp;lt;/figure&amp;gt;; &amp;lt;details&amp;gt;&amp;lt;dlabel&amp;gt;...&amp;lt;/dlabel&amp;gt;&amp;lt;dbody&amp;gt;...&amp;lt;/dbody&amp;gt;&amp;lt;/details&amp;gt;&amp;lt;/code&amp;gt;) ==&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details to replace dt. In addition, it proposes an optional fbody element for use inside figure, and an optional dbody element for use inside details, to mark up the content/body and replace dd.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4365</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4365"/>
		<updated>2010-01-11T22:09:04Z</updated>

		<summary type="html">&lt;p&gt;Mjs: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults. It is true that eventually UA stylesheets may have special rules for &amp;quot;figure &amp;gt; dt&amp;quot; and the like, but during the transition period it will be extra work to remove inappropriate default styles.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
=== Aesthetics ===&lt;br /&gt;
Aesthetics is not necessarily the sole or most important concern. However, many authors seem to find the novel use of dt and dd unpleasant to read. dt and dd are relatively obscure elements, they are very short abbreviations, and their meaning in context is unclear, especially in figure. In particular, the following markup seems mysterious and strikes many as ugly and unintuitive:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dt&amp;amp;gt;A Pair of Cats&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
  &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This seems to trigger a &amp;quot;yuck factor&amp;quot;, and it would be wise to avoid that. Aesthetics may seem like a relatively unimportant factor; however, the desire to avoid introducing new elements that led to dt/dd being used is itself largely an aesthetic concern.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Proposal 1 ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 ==&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details. The content portions of these elements (as opposed to the caption or label) would not have any special markup, they would be nested directly inside the figure or details element.&lt;br /&gt;
&lt;br /&gt;
=== Additional Rationale ===&lt;br /&gt;
&lt;br /&gt;
In addition to the rationale relative to the status quo in the spec, this proposal is better than some of the proposed alternatives.&lt;br /&gt;
&lt;br /&gt;
==== Follows HTML Precedent for Structured Elements ====&lt;br /&gt;
&lt;br /&gt;
Some HTML elements have relatively free content models, while others are &amp;quot;structured&amp;quot; - there are some or all child elements that have special meaning. Structured elements typically have helper elements that are specific to one element, or to a small family of related elements, to express their internal structure. Examples, from past versions of HTML, new in HTML5, and proposed for future versions of HTML:&lt;br /&gt;
&lt;br /&gt;
* table has thead, tfoot, tbody, td, th, tr, caption, col and colgroup.&lt;br /&gt;
* ul, ol and menu have li.&lt;br /&gt;
* fieldset has legend.&lt;br /&gt;
* applet and object have param.&lt;br /&gt;
* video and audio have source.&lt;br /&gt;
* dl has dt and dd.&lt;br /&gt;
* select and datalist have option and optgroup.&lt;br /&gt;
* ruby has rp and rt.&lt;br /&gt;
* datagrid was proposed to have a number of specialized child elements.&lt;br /&gt;
&lt;br /&gt;
In some cases (such as table or the list elements), the structured element can &#039;&#039;only&#039;&#039; have its specialized children. In other cases (fieldset, applet/object, or audio/video), the structured element can have relatively free content in addition to its specialized children.&lt;br /&gt;
&lt;br /&gt;
Thus, when introducing new structured elements such as figure and details, the normal design pattern for HTML is to introduce new specialized child elements to represent their structure. It is not the norm to reuse a very common element such as &amp;quot;h1&amp;quot; to represent specialized structure in a certain context. It is not the norm to reuse specialized child elements in a way that differs from their established content and meaning, as with dt/dd or legend. And it is unprecedented to use an attribute that can occur on any element to represent specialized structure, as with the proposed caption attribute. Furthermore, details and figure are not particularly closely related in purpose. One is a UI control, the other is a representation of the structure of prose documents. So it does not make sense for them to share a specialized child element. &lt;br /&gt;
&lt;br /&gt;
Applying a different design pattern for internal element structure to figure and details is likely to be confusing. The confusion of deviating from the usual HTML design pattern for this is likely to be greater than the cognitive cost of introducing no or fewer new elements.&lt;br /&gt;
&lt;br /&gt;
==== Avoids Clunky or Inappropriate Names ====&lt;br /&gt;
&lt;br /&gt;
The new element fltcap, suggested by another Change Proposal, appears confusing and mysterious. No one seems to get what it means on first reading. The expansion as &amp;quot;floating caption&amp;quot; seems confusing and semantically wrong. First, &amp;quot;floating caption&amp;quot; is not a very common term of art in publishing, but whenever it is used, it seems to refer to [http://www.google.com/search?client=safari&amp;amp;rls=en&amp;amp;q=floating+caption&amp;amp;ie=UTF-8&amp;amp;oe=UTF-8 captions overlayed on top of the image], not figure captions in general. Furthermore, a details control does not in general have a &amp;quot;caption&amp;quot;, floating or otherwise, rather it is a UI control and therefore is normally considered to have a &amp;quot;label&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The new element c is an extremely short and mysterious name. There is a limit to how many one-letter identifiers one can have in a language without rendering it unreadable or confusing, and they should be reserved for extremely common elements. Captions do not make the cut.&lt;br /&gt;
&lt;br /&gt;
Reusing legend does not seem like a good semantic fit for either figure or details. While a figure&#039;s caption is sometimes called a legend, the term &amp;quot;legend&amp;quot; in this context more often refers to the key next to a map or chart explaining how to read various visual elements. A details element is a UI element and those aren&#039;t ordinarily referred to as having a legend.&lt;br /&gt;
&lt;br /&gt;
h1 connotes &amp;quot;header&amp;quot;, which is not quite right for either figure or details.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;caption&amp;quot; and &amp;quot;label&amp;quot;, or variations thereof, are the most semantically appropriate names for the caption and label respectively on figure and details.&lt;br /&gt;
&lt;br /&gt;
==== Does Not Introduce Compatibility Problems ====&lt;br /&gt;
&lt;br /&gt;
Reuse of almost any existing element in an unrelated context introduces compatibility problems, whether &amp;quot;hard&amp;quot; problems with parsing or behavior, or &amp;quot;soft&amp;quot; problems with pre-existing author styles. This Change Proposal uses brand new elements and thus avoids all these problems, unlike the use of dt/dd, legend, label, caption, or h1. All of those are known to have some lesser or greater technical issues.&lt;br /&gt;
&lt;br /&gt;
=== Proposal Details ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Impact ===&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure to denote the contents of that element as being the caption. This proposal does not address the details element.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prose (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
* &amp;quot;caption&amp;quot; added to the list of global attributes in the &amp;quot;Global Attributes&amp;quot; section.  In its section it should contain roughly: &amp;quot;All HTML elements in the Flow Content category may have the caption content attribute set. The caption attribute is a boolean attribute.  When caption is set on an element that is a child of a figure element, the first such element defines the caption for that figure element.  It is invalid for a figure to have multiple child elements with the caption attribute set; in such a case, the first such element is the caption for the figure and the caption attribute is invalid and has no effect on subsequent elements.  The caption attribute is invalid and has no effect on any element that is not a direct child of a figure element.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Proposal 7 ==&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details to replace dt. In addition, it proposes an fbody element for use inside figure, and a dbody element for use inside details, to mark up the content/body and replace dd.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4363</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4363"/>
		<updated>2010-01-11T18:01:10Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Follows HTML Precedent for Structured Elements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults. It is true that eventually UA stylesheets may have special rules for &amp;quot;figure &amp;gt; dt&amp;quot; and the like, but during the transition period it will be extra work to remove inappropriate default styles.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
=== Aesthetics ===&lt;br /&gt;
Aesthetics is not necessarily the sole or most important concern. However, many authors seem to find the novel use of dt and dd unpleasant to read. dt and dd are relatively obscure elements, they are very short abbreviations, and their meaning in context is unclear, especially in figure. In particular, the following markup seems mysterious and strikes many as ugly and unintuitive:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dt&amp;amp;gt;A Pair of Cats&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
  &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This seems to trigger a &amp;quot;yuck factor&amp;quot;, and it would be wise to avoid that. Aesthetics may seem like a relatively unimportant factor; however, the desire to avoid introducing new elements that led to dt/dd being used is itself largely an aesthetic concern.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Proposal 1 ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 ==&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details. The content portions of these elements (as opposed to the caption or label) would not have any special markup, they would be nested directly inside the figure or details element.&lt;br /&gt;
&lt;br /&gt;
=== Additional Rationale ===&lt;br /&gt;
&lt;br /&gt;
In addition to the rationale relative to the status quo in the spec, this proposal is better than some of the proposed alternatives.&lt;br /&gt;
&lt;br /&gt;
==== Follows HTML Precedent for Structured Elements ====&lt;br /&gt;
&lt;br /&gt;
Some HTML elements have relatively free content models, while others are &amp;quot;structured&amp;quot; - there are some or all child elements that have special meaning. Structured elements typically have helper elements that are specific to one element, or to a small family of related elements, to express their internal structure. Examples, from past versions of HTML, new in HTML5, and proposed for future versions of HTML:&lt;br /&gt;
&lt;br /&gt;
* table has thead, tfoot, tbody, td, th, tr, caption, col and colgroup.&lt;br /&gt;
* ul, ol and menu have li.&lt;br /&gt;
* fieldset has legend.&lt;br /&gt;
* applet and object have param.&lt;br /&gt;
* video and audio have source.&lt;br /&gt;
* dl has dt and dd.&lt;br /&gt;
* select and datalist have option and optgroup.&lt;br /&gt;
* ruby has rp and rt.&lt;br /&gt;
* datagrid was proposed to have a number of specialized child elements.&lt;br /&gt;
&lt;br /&gt;
In some cases (such as table or the list elements), the structured element can &#039;&#039;only&#039;&#039; have its specialized children. In other cases (fieldset, applet/object, or audio/video), the structured element can have relatively free content in addition to its specialized children.&lt;br /&gt;
&lt;br /&gt;
Thus, when introducing new structured elements such as figure and details, the normal design pattern for HTML is to introduce new specialized child elements to represent their structure. It is not the norm to reuse a very common element such as &amp;quot;h1&amp;quot; to represent specialized structure in a certain context. It is not the norm to reuse specialized child elements in a way that differs from their established content and meaning, as with dt/dd or legend. And it is unprecedented to use an attribute that can occur on any element to represent specialized structure, as with the proposed caption attribute. Furthermore, details and figure are not particularly closely related in purpose. One is a UI control, the other is a representation of the structure of prose documents. So it does not make sense for them to share a specialized child element. &lt;br /&gt;
&lt;br /&gt;
Applying a different design pattern for internal element structure to figure and details is likely to be confusing. The confusion of deviating from the usual HTML design pattern for this is likely to be greater than the cognitive cost of introducing no or fewer new elements.&lt;br /&gt;
&lt;br /&gt;
==== Avoids Clunky or Inappropriate Names ====&lt;br /&gt;
&lt;br /&gt;
The new element fltcap, suggested by another Change Proposal, appears confusing and mysterious. No one seems to get what it means on first reading. The expansion as &amp;quot;floating caption&amp;quot; seems confusing and semantically wrong. First, &amp;quot;floating caption&amp;quot; is not a very common term of art in publishing, but whenever it is used, it seems to refer to [http://www.google.com/search?client=safari&amp;amp;rls=en&amp;amp;q=floating+caption&amp;amp;ie=UTF-8&amp;amp;oe=UTF-8 captions overlayed on top of the image], not figure captions in general. Furthermore, a details control does not in general have a &amp;quot;caption&amp;quot;, floating or otherwise, rather it is a UI control and therefore is normally considered to have a &amp;quot;label&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The new element c is an extremely short and mysterious name. There is a limit to how many one-letter identifiers one can have in a language without rendering it unreadable or confusing, and they should be reserved for extremely common elements. Captions do not make the cut.&lt;br /&gt;
&lt;br /&gt;
Reusing legend does not seem like a good semantic fit for either figure or details. While a figure&#039;s caption is sometimes called a legend, the term &amp;quot;legend&amp;quot; in this context more often refers to the key next to a map or chart explaining how to read various visual elements. A details element is a UI element and those aren&#039;t ordinarily referred to as having a legend.&lt;br /&gt;
&lt;br /&gt;
h1 connotes &amp;quot;header&amp;quot;, which is not quite right for either figure or details.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;caption&amp;quot; and &amp;quot;label&amp;quot;, or variations thereof, are the most semantically appropriate names for the caption and label respectively on figure and details.&lt;br /&gt;
&lt;br /&gt;
==== Does Not Introduce Compatibility Problems ====&lt;br /&gt;
&lt;br /&gt;
Reuse of almost any existing element in an unrelated context introduces compatibility problems, whether &amp;quot;hard&amp;quot; problems with parsing or behavior, or &amp;quot;soft&amp;quot; problems with pre-existing author styles. This Change Proposal uses brand new elements and thus avoids all these problems, unlike the use of dt/dd, legend, label, caption, or h1. All of those are known to have some lesser or greater technical issues.&lt;br /&gt;
&lt;br /&gt;
=== Proposal Details ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Impact ===&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure to denote the contents of that element as being the caption. This proposal does not address the details element.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prose (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
* &amp;quot;caption&amp;quot; added to the list of global attributes in the &amp;quot;Global Attributes&amp;quot; section.  In its section it should contain roughly: &amp;quot;All HTML elements in the Flow Content category may have the caption content attribute set. The caption attribute is a boolean attribute.  When caption is set on an element that is a child of a figure element, the first such element defines the caption for that figure element.  It is invalid for a figure to have multiple child elements with the caption attribute set; in such a case, the first such element is the caption for the figure and the caption attribute is invalid and has no effect on subsequent elements.  The caption attribute is invalid and has no effect on any element that is not a direct child of a figure element.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4362</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4362"/>
		<updated>2010-01-11T18:00:32Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Follows HTML Precedent for Structured Elements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults. It is true that eventually UA stylesheets may have special rules for &amp;quot;figure &amp;gt; dt&amp;quot; and the like, but during the transition period it will be extra work to remove inappropriate default styles.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
=== Aesthetics ===&lt;br /&gt;
Aesthetics is not necessarily the sole or most important concern. However, many authors seem to find the novel use of dt and dd unpleasant to read. dt and dd are relatively obscure elements, they are very short abbreviations, and their meaning in context is unclear, especially in figure. In particular, the following markup seems mysterious and strikes many as ugly and unintuitive:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dt&amp;amp;gt;A Pair of Cats&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
  &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This seems to trigger a &amp;quot;yuck factor&amp;quot;, and it would be wise to avoid that. Aesthetics may seem like a relatively unimportant factor; however, the desire to avoid introducing new elements that led to dt/dd being used is itself largely an aesthetic concern.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Proposal 1 ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 ==&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details. The content portions of these elements (as opposed to the caption or label) would not have any special markup, they would be nested directly inside the figure or details element.&lt;br /&gt;
&lt;br /&gt;
=== Additional Rationale ===&lt;br /&gt;
&lt;br /&gt;
In addition to the rationale relative to the status quo in the spec, this proposal is better than some of the proposed alternatives.&lt;br /&gt;
&lt;br /&gt;
==== Follows HTML Precedent for Structured Elements ====&lt;br /&gt;
&lt;br /&gt;
Some HTML elements have relatively free content models, while others are &amp;quot;structured&amp;quot; - there are some or all child elements that have special meaning. Structured elements typically have helper elements that are specific to one element, or to a small family of related elements, to express their internal structure. Examples, from past versions of HTML, new in HTML5, and proposed for future versions of HTML:&lt;br /&gt;
&lt;br /&gt;
* table has thead, tfoot, tbody, td, th, tr, caption, col and colgroup.&lt;br /&gt;
* ul, ol and menu have li.&lt;br /&gt;
* fieldset has legend.&lt;br /&gt;
* applet and object have param.&lt;br /&gt;
* video and audio have source.&lt;br /&gt;
* dl has dt and dd.&lt;br /&gt;
* select and datalist have option and optgroup.&lt;br /&gt;
* ruby has rp and rt.&lt;br /&gt;
* datagrid was proposed to have a number of specialized child elements.&lt;br /&gt;
&lt;br /&gt;
In some cases (such as table or the list elements), the structured element can *only* have its specialized children. In other cases (fieldset, applet/object, or audio/video), the structured element can have relatively free content in addition to its specialized children.&lt;br /&gt;
&lt;br /&gt;
Thus, when introducing new structured elements such as figure and details, the normal design pattern for HTML is to introduce new specialized child elements to represent their structure. It is not the norm to reuse a very common element such as &amp;quot;h1&amp;quot; to represent specialized structure in a certain context. It is not the norm to reuse specialized child elements in a way that differs from their established content and meaning, as with dt/dd or legend. And it is unprecedented to use an attribute that can occur on any element to represent specialized structure, as with the proposed caption attribute. Furthermore, details and figure are not particularly closely related in purpose. One is a UI control, the other is a representation of the structure of prose documents. So it does not make sense for them to share a specialized child element. &lt;br /&gt;
&lt;br /&gt;
Applying a different design pattern for internal element structure to figure and details is likely to be confusing. The confusion of deviating from the usual HTML design pattern for this is likely to be greater than the cognitive cost of introducing no or fewer new elements.&lt;br /&gt;
&lt;br /&gt;
==== Avoids Clunky or Inappropriate Names ====&lt;br /&gt;
&lt;br /&gt;
The new element fltcap, suggested by another Change Proposal, appears confusing and mysterious. No one seems to get what it means on first reading. The expansion as &amp;quot;floating caption&amp;quot; seems confusing and semantically wrong. First, &amp;quot;floating caption&amp;quot; is not a very common term of art in publishing, but whenever it is used, it seems to refer to [http://www.google.com/search?client=safari&amp;amp;rls=en&amp;amp;q=floating+caption&amp;amp;ie=UTF-8&amp;amp;oe=UTF-8 captions overlayed on top of the image], not figure captions in general. Furthermore, a details control does not in general have a &amp;quot;caption&amp;quot;, floating or otherwise, rather it is a UI control and therefore is normally considered to have a &amp;quot;label&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The new element c is an extremely short and mysterious name. There is a limit to how many one-letter identifiers one can have in a language without rendering it unreadable or confusing, and they should be reserved for extremely common elements. Captions do not make the cut.&lt;br /&gt;
&lt;br /&gt;
Reusing legend does not seem like a good semantic fit for either figure or details. While a figure&#039;s caption is sometimes called a legend, the term &amp;quot;legend&amp;quot; in this context more often refers to the key next to a map or chart explaining how to read various visual elements. A details element is a UI element and those aren&#039;t ordinarily referred to as having a legend.&lt;br /&gt;
&lt;br /&gt;
h1 connotes &amp;quot;header&amp;quot;, which is not quite right for either figure or details.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;caption&amp;quot; and &amp;quot;label&amp;quot;, or variations thereof, are the most semantically appropriate names for the caption and label respectively on figure and details.&lt;br /&gt;
&lt;br /&gt;
==== Does Not Introduce Compatibility Problems ====&lt;br /&gt;
&lt;br /&gt;
Reuse of almost any existing element in an unrelated context introduces compatibility problems, whether &amp;quot;hard&amp;quot; problems with parsing or behavior, or &amp;quot;soft&amp;quot; problems with pre-existing author styles. This Change Proposal uses brand new elements and thus avoids all these problems, unlike the use of dt/dd, legend, label, caption, or h1. All of those are known to have some lesser or greater technical issues.&lt;br /&gt;
&lt;br /&gt;
=== Proposal Details ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Impact ===&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure to denote the contents of that element as being the caption. This proposal does not address the details element.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prose (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
* &amp;quot;caption&amp;quot; added to the list of global attributes in the &amp;quot;Global Attributes&amp;quot; section.  In its section it should contain roughly: &amp;quot;All HTML elements in the Flow Content category may have the caption content attribute set. The caption attribute is a boolean attribute.  When caption is set on an element that is a child of a figure element, the first such element defines the caption for that figure element.  It is invalid for a figure to have multiple child elements with the caption attribute set; in such a case, the first such element is the caption for the figure and the caption attribute is invalid and has no effect on subsequent elements.  The caption attribute is invalid and has no effect on any element that is not a direct child of a figure element.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4360</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4360"/>
		<updated>2010-01-11T16:40:24Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Summary */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults. It is true that eventually UA stylesheets may have special rules for &amp;quot;figure &amp;gt; dt&amp;quot; and the like, but during the transition period it will be extra work to remove inappropriate default styles.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
=== Aesthetics ===&lt;br /&gt;
Aesthetics is not necessarily the sole or most important concern. However, many authors seem to find the novel use of dt and dd unpleasant to read. dt and dd are relatively obscure elements, they are very short abbreviations, and their meaning in context is unclear, especially in figure. In particular, the following markup seems mysterious and strikes many as ugly and unintuitive:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dt&amp;amp;gt;A Pair of Cats&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
  &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This seems to trigger a &amp;quot;yuck factor&amp;quot;, and it would be wise to avoid that. Aesthetics may seem like a relatively unimportant factor; however, the desire to avoid introducing new elements that led to dt/dd being used is itself largely an aesthetic concern.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Proposal 1 ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 ==&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details. The content portions of these elements (as opposed to the caption or label) would not have any special markup, they would be nested directly inside the figure or details element.&lt;br /&gt;
&lt;br /&gt;
=== Additional Rationale ===&lt;br /&gt;
&lt;br /&gt;
In addition to the rationale relative to the status quo in the spec, this proposal is better than some of the proposed alternatives.&lt;br /&gt;
&lt;br /&gt;
==== Follows HTML Precedent for Structured Elements ====&lt;br /&gt;
&lt;br /&gt;
Some HTML elements have relatively free content models, while others are &amp;quot;structured&amp;quot; - there are some or all child elements that have special meaning. Structured elements typically have helper elements that are specific to one element, or to a small family of related elements, to express their internal structure. Examples, from past versions of HTML, new in HTML5, and proposed for future versions of HTML:&lt;br /&gt;
&lt;br /&gt;
 * table has thead, tfoot, tbody, td, th, tr, caption, col and colgroup.&lt;br /&gt;
 * ul, ol and menu have li.&lt;br /&gt;
 * fieldset has legend.&lt;br /&gt;
 * applet and object have param.&lt;br /&gt;
 * video and audio have source.&lt;br /&gt;
 * dl has dt and dd.&lt;br /&gt;
 * select and datalist have option and optgroup.&lt;br /&gt;
 * ruby has rp and rt.&lt;br /&gt;
 * datagrid was proposed to have a number of specialized child elements.&lt;br /&gt;
&lt;br /&gt;
In some cases (such as table or the list elements), the structured element can *only* have its specialized children. In other cases (fieldset, applet/object, or audio/video), the structured element can have relatively free content in addition to its specialized children.&lt;br /&gt;
&lt;br /&gt;
Thus, when introducing new structured elements such as figure and details, the normal design pattern for HTML is to introduce new specialized child elements to represent their structure. It is not the norm to reuse a very common element such as &amp;quot;h1&amp;quot; to represent specialized structure in a certain context. It is not the norm to reuse specialized child elements in a way that differs from their established content and meaning, as with dt/dd or legend. And it is unprecedented to use an attribute that can occur on any element to represent specialized structure, as with the proposed caption attribute. Furthermore, details and figure are not particularly closely related in purpose. One is a UI control, the other is a representation of the structure of prose documents. So it does not make sense for them to share a specialized child element. &lt;br /&gt;
&lt;br /&gt;
Applying a different design pattern for internal element structure to figure and details is likely to be confusing. The confusion of deviating from the usual HTML design pattern for this is likely to be greater than the cognitive cost of introducing no or fewer new elements.&lt;br /&gt;
&lt;br /&gt;
==== Avoids Clunky or Inappropriate Names ====&lt;br /&gt;
&lt;br /&gt;
The new element fltcap, suggested by another Change Proposal, appears confusing and mysterious. No one seems to get what it means on first reading. The expansion as &amp;quot;floating caption&amp;quot; seems confusing and semantically wrong. First, &amp;quot;floating caption&amp;quot; is not a very common term of art in publishing, but whenever it is used, it seems to refer to [http://www.google.com/search?client=safari&amp;amp;rls=en&amp;amp;q=floating+caption&amp;amp;ie=UTF-8&amp;amp;oe=UTF-8 captions overlayed on top of the image], not figure captions in general. Furthermore, a details control does not in general have a &amp;quot;caption&amp;quot;, floating or otherwise, rather it is a UI control and therefore is normally considered to have a &amp;quot;label&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The new element c is an extremely short and mysterious name. There is a limit to how many one-letter identifiers one can have in a language without rendering it unreadable or confusing, and they should be reserved for extremely common elements. Captions do not make the cut.&lt;br /&gt;
&lt;br /&gt;
Reusing legend does not seem like a good semantic fit for either figure or details. While a figure&#039;s caption is sometimes called a legend, the term &amp;quot;legend&amp;quot; in this context more often refers to the key next to a map or chart explaining how to read various visual elements. A details element is a UI element and those aren&#039;t ordinarily referred to as having a legend.&lt;br /&gt;
&lt;br /&gt;
h1 connotes &amp;quot;header&amp;quot;, which is not quite right for either figure or details.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;caption&amp;quot; and &amp;quot;label&amp;quot;, or variations thereof, are the most semantically appropriate names for the caption and label respectively on figure and details.&lt;br /&gt;
&lt;br /&gt;
==== Does Not Introduce Compatibility Problems ====&lt;br /&gt;
&lt;br /&gt;
Reuse of almost any existing element in an unrelated context introduces compatibility problems, whether &amp;quot;hard&amp;quot; problems with parsing or behavior, or &amp;quot;soft&amp;quot; problems with pre-existing author styles. This Change Proposal uses brand new elements and thus avoids all these problems, unlike the use of dt/dd, legend, label, caption, or h1. All of those are known to have some lesser or greater technical issues.&lt;br /&gt;
&lt;br /&gt;
=== Proposal Details ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Impact ===&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure to denote the contents of that element as being the caption. This proposal does not address the details element.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prose (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
* &amp;quot;caption&amp;quot; added to the list of global attributes in the &amp;quot;Global Attributes&amp;quot; section.  In its section it should contain roughly: &amp;quot;All HTML elements may have the caption content attribute set. The caption attribute is a boolean attribute.  When caption is set on an element that is a child of a figure element, the first such element defines the caption for that figure element.  It is invalid for a figure to have multiple child elements with the caption attribute set; in such a case, the first such element is the caption for the figure and the caption attribute is invalid and has no effect on subsequent elements.  The caption attribute is invalid and has no effect on any element that is not a direct child of a figure element.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4359</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4359"/>
		<updated>2010-01-11T16:38:27Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Avoids Clunky or Inappropriate Names */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults. It is true that eventually UA stylesheets may have special rules for &amp;quot;figure &amp;gt; dt&amp;quot; and the like, but during the transition period it will be extra work to remove inappropriate default styles.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
=== Aesthetics ===&lt;br /&gt;
Aesthetics is not necessarily the sole or most important concern. However, many authors seem to find the novel use of dt and dd unpleasant to read. dt and dd are relatively obscure elements, they are very short abbreviations, and their meaning in context is unclear, especially in figure. In particular, the following markup seems mysterious and strikes many as ugly and unintuitive:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dt&amp;amp;gt;A Pair of Cats&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
  &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This seems to trigger a &amp;quot;yuck factor&amp;quot;, and it would be wise to avoid that. Aesthetics may seem like a relatively unimportant factor; however, the desire to avoid introducing new elements that led to dt/dd being used is itself largely an aesthetic concern.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Proposal 1 ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 ==&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details. The body parts of these elements would not have any additional markup.&lt;br /&gt;
&lt;br /&gt;
=== Additional Rationale ===&lt;br /&gt;
&lt;br /&gt;
In addition to the rationale relative to the status quo in the spec, this proposal is better than some of the proposed alternatives.&lt;br /&gt;
&lt;br /&gt;
==== Follows HTML Precedent for Structured Elements ====&lt;br /&gt;
&lt;br /&gt;
Some HTML elements have relatively free content models, while others are &amp;quot;structured&amp;quot; - there are some or all child elements that have special meaning. Structured elements typically have helper elements that are specific to one element, or to a small family of related elements, to express their internal structure. Examples, from past versions of HTML, new in HTML5, and proposed for future versions of HTML:&lt;br /&gt;
&lt;br /&gt;
 * table has thead, tfoot, tbody, td, th, tr, caption, col and colgroup.&lt;br /&gt;
 * ul, ol and menu have li.&lt;br /&gt;
 * fieldset has legend.&lt;br /&gt;
 * applet and object have param.&lt;br /&gt;
 * video and audio have source.&lt;br /&gt;
 * dl has dt and dd.&lt;br /&gt;
 * select and datalist have option and optgroup.&lt;br /&gt;
 * ruby has rp and rt.&lt;br /&gt;
 * datagrid was proposed to have a number of specialized child elements.&lt;br /&gt;
&lt;br /&gt;
In some cases (such as table or the list elements), the structured element can *only* have its specialized children. In other cases (fieldset, applet/object, or audio/video), the structured element can have relatively free content in addition to its specialized children.&lt;br /&gt;
&lt;br /&gt;
Thus, when introducing new structured elements such as figure and details, the normal design pattern for HTML is to introduce new specialized child elements to represent their structure. It is not the norm to reuse a very common element such as &amp;quot;h1&amp;quot; to represent specialized structure in a certain context. It is not the norm to reuse specialized child elements in a way that differs from their established content and meaning, as with dt/dd or legend. And it is unprecedented to use an attribute that can occur on any element to represent specialized structure, as with the proposed caption attribute. Furthermore, details and figure are not particularly closely related in purpose. One is a UI control, the other is a representation of the structure of prose documents. So it does not make sense for them to share a specialized child element. &lt;br /&gt;
&lt;br /&gt;
Applying a different design pattern for internal element structure to figure and details is likely to be confusing. The confusion of deviating from the usual HTML design pattern for this is likely to be greater than the cognitive cost of introducing no or fewer new elements.&lt;br /&gt;
&lt;br /&gt;
==== Avoids Clunky or Inappropriate Names ====&lt;br /&gt;
&lt;br /&gt;
The new element fltcap, suggested by another Change Proposal, appears confusing and mysterious. No one seems to get what it means on first reading. The expansion as &amp;quot;floating caption&amp;quot; seems confusing and semantically wrong. First, &amp;quot;floating caption&amp;quot; is not a very common term of art in publishing, but whenever it is used, it seems to refer to [http://www.google.com/search?client=safari&amp;amp;rls=en&amp;amp;q=floating+caption&amp;amp;ie=UTF-8&amp;amp;oe=UTF-8 captions overlayed on top of the image], not figure captions in general. Furthermore, a details control does not in general have a &amp;quot;caption&amp;quot;, floating or otherwise, rather it is a UI control and therefore is normally considered to have a &amp;quot;label&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The new element c is an extremely short and mysterious name. There is a limit to how many one-letter identifiers one can have in a language without rendering it unreadable or confusing, and they should be reserved for extremely common elements. Captions do not make the cut.&lt;br /&gt;
&lt;br /&gt;
Reusing legend does not seem like a good semantic fit for either figure or details. While a figure&#039;s caption is sometimes called a legend, the term &amp;quot;legend&amp;quot; in this context more often refers to the key next to a map or chart explaining how to read various visual elements. A details element is a UI element and those aren&#039;t ordinarily referred to as having a legend.&lt;br /&gt;
&lt;br /&gt;
h1 connotes &amp;quot;header&amp;quot;, which is not quite right for either figure or details.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;caption&amp;quot; and &amp;quot;label&amp;quot;, or variations thereof, are the most semantically appropriate names for the caption and label respectively on figure and details.&lt;br /&gt;
&lt;br /&gt;
==== Does Not Introduce Compatibility Problems ====&lt;br /&gt;
&lt;br /&gt;
Reuse of almost any existing element in an unrelated context introduces compatibility problems, whether &amp;quot;hard&amp;quot; problems with parsing or behavior, or &amp;quot;soft&amp;quot; problems with pre-existing author styles. This Change Proposal uses brand new elements and thus avoids all these problems, unlike the use of dt/dd, legend, label, caption, or h1. All of those are known to have some lesser or greater technical issues.&lt;br /&gt;
&lt;br /&gt;
=== Proposal Details ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Impact ===&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure to denote the contents of that element as being the caption. This proposal does not address the details element.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prose (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
* &amp;quot;caption&amp;quot; added to the list of global attributes in the &amp;quot;Global Attributes&amp;quot; section.  In its section it should contain roughly: &amp;quot;All HTML elements may have the caption content attribute set. The caption attribute is a boolean attribute.  When caption is set on an element that is a child of a figure element, the first such element defines the caption for that figure element.  It is invalid for a figure to have multiple child elements with the caption attribute set; in such a case, the first such element is the caption for the figure and the caption attribute is invalid and has no effect on subsequent elements.  The caption attribute is invalid and has no effect on any element that is not a direct child of a figure element.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4358</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4358"/>
		<updated>2010-01-11T16:21:40Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Additional Rationale */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults. It is true that eventually UA stylesheets may have special rules for &amp;quot;figure &amp;gt; dt&amp;quot; and the like, but during the transition period it will be extra work to remove inappropriate default styles.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
=== Aesthetics ===&lt;br /&gt;
Aesthetics is not necessarily the sole or most important concern. However, many authors seem to find the novel use of dt and dd unpleasant to read. dt and dd are relatively obscure elements, they are very short abbreviations, and their meaning in context is unclear, especially in figure. In particular, the following markup seems mysterious and strikes many as ugly and unintuitive:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dt&amp;amp;gt;A Pair of Cats&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
  &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This seems to trigger a &amp;quot;yuck factor&amp;quot;, and it would be wise to avoid that. Aesthetics may seem like a relatively unimportant factor; however, the desire to avoid introducing new elements that led to dt/dd being used is itself largely an aesthetic concern.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Proposal 1 ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 ==&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details. The body parts of these elements would not have any additional markup.&lt;br /&gt;
&lt;br /&gt;
=== Additional Rationale ===&lt;br /&gt;
&lt;br /&gt;
In addition to the rationale relative to the status quo in the spec, this proposal is better than some of the proposed alternatives.&lt;br /&gt;
&lt;br /&gt;
==== Follows HTML Precedent for Structured Elements ====&lt;br /&gt;
&lt;br /&gt;
Some HTML elements have relatively free content models, while others are &amp;quot;structured&amp;quot; - there are some or all child elements that have special meaning. Structured elements typically have helper elements that are specific to one element, or to a small family of related elements, to express their internal structure. Examples, from past versions of HTML, new in HTML5, and proposed for future versions of HTML:&lt;br /&gt;
&lt;br /&gt;
 * table has thead, tfoot, tbody, td, th, tr, caption, col and colgroup.&lt;br /&gt;
 * ul, ol and menu have li.&lt;br /&gt;
 * fieldset has legend.&lt;br /&gt;
 * applet and object have param.&lt;br /&gt;
 * video and audio have source.&lt;br /&gt;
 * dl has dt and dd.&lt;br /&gt;
 * select and datalist have option and optgroup.&lt;br /&gt;
 * ruby has rp and rt.&lt;br /&gt;
 * datagrid was proposed to have a number of specialized child elements.&lt;br /&gt;
&lt;br /&gt;
In some cases (such as table or the list elements), the structured element can *only* have its specialized children. In other cases (fieldset, applet/object, or audio/video), the structured element can have relatively free content in addition to its specialized children.&lt;br /&gt;
&lt;br /&gt;
Thus, when introducing new structured elements such as figure and details, the normal design pattern for HTML is to introduce new specialized child elements to represent their structure. It is not the norm to reuse a very common element such as &amp;quot;h1&amp;quot; to represent specialized structure in a certain context. It is not the norm to reuse specialized child elements in a way that differs from their established content and meaning, as with dt/dd or legend. And it is unprecedented to use an attribute that can occur on any element to represent specialized structure, as with the proposed caption attribute. Furthermore, details and figure are not particularly closely related in purpose. One is a UI control, the other is a representation of the structure of prose documents. So it does not make sense for them to share a specialized child element. &lt;br /&gt;
&lt;br /&gt;
Applying a different design pattern for internal element structure to figure and details is likely to be confusing. The confusion of deviating from the usual HTML design pattern for this is likely to be greater than the cognitive cost of introducing no or fewer new elements.&lt;br /&gt;
&lt;br /&gt;
==== Avoids Clunky or Inappropriate Names ====&lt;br /&gt;
&lt;br /&gt;
The new element fltcap, suggested by another Change Proposal, appears confusing and mysterious. No one seems to get what it means on first reading. The expansion as &amp;quot;floating caption&amp;quot; seems confusing and semantically wrong. First, &amp;quot;floating caption&amp;quot; is not a very common term of art in publishing, but whenever it is used, it seems to refer to &amp;lt;a href=&amp;quot;http://www.google.com/search?client=safari&amp;amp;rls=en&amp;amp;q=floating+caption&amp;amp;ie=UTF-8&amp;amp;oe=UTF-8&amp;quot;&amp;gt;captions overlayed on top of the image&amp;lt;/a&amp;gt;, not figure captions in general. Furthermore, a details control does not in general have a &amp;quot;caption&amp;quot;, floating or otherwise, rather it is a UI control and therefore is normally considered to have a &amp;quot;label&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
The new element c is an extremely short and mysterious name. There is a limit to how many one-letter identifiers one can have in a language without rendering it unreadable or confusing, and they should be reserved for extremely common elements. Captions do not make the cut.&lt;br /&gt;
&lt;br /&gt;
Reusing legend does not seem like a good semantic fit for either figure or details. While a figure&#039;s caption is sometimes called a legend, the term &amp;quot;legend&amp;quot; in this context more often refers to the key next to a map or chart explaining how to read various visual elements. A details element is a UI element and those aren&#039;t ordinarily referred to as having a legend.&lt;br /&gt;
&lt;br /&gt;
h1 connotes &amp;quot;header&amp;quot;, which is not quite right for either figure or details.&lt;br /&gt;
&lt;br /&gt;
&amp;quot;caption&amp;quot; and &amp;quot;label&amp;quot;, or variations thereof, are the most semantically appropriate names for the caption and label respectively on figure and details.&lt;br /&gt;
&lt;br /&gt;
==== Does Not Introduce Compatibility Problems ====&lt;br /&gt;
&lt;br /&gt;
Reuse of almost any existing element in an unrelated context introduces compatibility problems, whether &amp;quot;hard&amp;quot; problems with parsing or behavior, or &amp;quot;soft&amp;quot; problems with pre-existing author styles. This Change Proposal uses brand new elements and thus avoids all these problems, unlike the use of dt/dd, legend, label, caption, or h1. All of those are known to have some lesser or greater technical issues.&lt;br /&gt;
&lt;br /&gt;
=== Proposal Details ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Impact ===&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure to denote the contents of that element as being the caption. This proposal does not address the details element.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prose (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
* &amp;quot;caption&amp;quot; added to the list of global attributes in the &amp;quot;Global Attributes&amp;quot; section.  In its section it should contain roughly: &amp;quot;All HTML elements may have the caption content attribute set. The caption attribute is a boolean attribute.  When caption is set on an element that is a child of a figure element, the first such element defines the caption for that figure element.  It is invalid for a figure to have multiple child elements with the caption attribute set; in such a case, the first such element is the caption for the figure and the caption attribute is invalid and has no effect on subsequent elements.  The caption attribute is invalid and has no effect on any element that is not a direct child of a figure element.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4351</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4351"/>
		<updated>2010-01-11T15:51:50Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Aesthetics */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults. It is true that eventually UA stylesheets may have special rules for &amp;quot;figure &amp;gt; dt&amp;quot; and the like, but during the transition period it will be extra work to remove inappropriate default styles.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
=== Aesthetics ===&lt;br /&gt;
Aesthetics is not necessarily the sole or most important concern. However, many authors seem to find the novel use of dt and dd unpleasant to read. dt and dd are relatively obscure elements, they are very short abbreviations, and their meaning in context is unclear, especially in figure. In particular, the following markup seems mysterious and strikes many as ugly and unintuitive:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dt&amp;amp;gt;A Pair of Cats&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
  &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This seems to trigger a &amp;quot;yuck factor&amp;quot;, and it would be wise to avoid that. Aesthetics may seem like a relatively unimportant factor; however, the desire to avoid introducing new elements that led to dt/dd being used is itself largely an aesthetic concern.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Proposal 1 ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 ==&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details. The body parts of these elements would not have any additional markup.&lt;br /&gt;
&lt;br /&gt;
=== Additional Rationale ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Proposal Details ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Impact ===&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure and details to denote the contents of that element as being the caption.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prsoe (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4350</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4350"/>
		<updated>2010-01-11T15:44:26Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Proposal 3 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults. It is true that eventually UA stylesheets may have special rules for &amp;quot;figure &amp;gt; dt&amp;quot; and the like, but during the transition period it will be extra work to remove inappropriate default styles.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
=== Aesthetics ===&lt;br /&gt;
Aesthetics is not necessarily the sole or most important concern. However, many authors seem to find the novel use of dt and dd unpleasant to read. dt and dd are relatively obscure elements, they are very short abbreviations, and their meaning in context is unclear, especially in figure. In particular, the following markup seems mysterious and strikes many as ugly and unintuitive:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dt&amp;amp;gt;A Pair of Cats&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
  &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This seems to trigger a &amp;quot;yuck factor&amp;quot;, and it would be wise to avoid that.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Proposal 1 ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 ==&lt;br /&gt;
&lt;br /&gt;
=== Summary ===&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements. This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative. Specifically, the proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details. The body parts of these elements would not have any additional markup.&lt;br /&gt;
&lt;br /&gt;
=== Additional Rationale ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Proposal Details ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Impact ===&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure and details to denote the contents of that element as being the caption.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prsoe (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4349</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4349"/>
		<updated>2010-01-11T15:42:29Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Unnecessary Elements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults. It is true that eventually UA stylesheets may have special rules for &amp;quot;figure &amp;gt; dt&amp;quot; and the like, but during the transition period it will be extra work to remove inappropriate default styles.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
=== Aesthetics ===&lt;br /&gt;
Aesthetics is not necessarily the sole or most important concern. However, many authors seem to find the novel use of dt and dd unpleasant to read. dt and dd are relatively obscure elements, they are very short abbreviations, and their meaning in context is unclear, especially in figure. In particular, the following markup seems mysterious and strikes many as ugly and unintuitive:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dt&amp;amp;gt;A Pair of Cats&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
  &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This seems to trigger a &amp;quot;yuck factor&amp;quot;, and it would be wise to avoid that.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Proposal 1 ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 ==&lt;br /&gt;
The proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details.&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure and details to denote the contents of that element as being the caption.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prsoe (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4348</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4348"/>
		<updated>2010-01-11T15:39:58Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Rationale Against Using dt/dd for figure and details Elements */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults. It is true that eventually UA stylesheets may have special rules for &amp;quot;figure &amp;gt; dt&amp;quot; and the like, but during the transition period it will be extra work to remove inappropriate default styles.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dt&amp;amp;gt;A Pair of Cats&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
=== Aesthetics ===&lt;br /&gt;
Aesthetics is not necessarily the sole or most important concern. However, many authors seem to find the novel use of dt and dd unpleasant to read. dt and dd are relatively obscure elements, they are very short abbreviations, and their meaning in context is unclear, especially in figure. In particular, the following markup seems mysterious and strikes many as ugly and unintuitive:&lt;br /&gt;
&lt;br /&gt;
  &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
    &amp;amp;lt;dt&amp;amp;gt;A Pair of Cats&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
  &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This seems to trigger a &amp;quot;yuck factor&amp;quot;, and it would be wise to avoid that.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
== Proposal 1 ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 ==&lt;br /&gt;
The proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details.&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure and details to denote the contents of that element as being the caption.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prsoe (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4347</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4347"/>
		<updated>2010-01-11T15:33:29Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Default Styles */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults. It is true that eventually UA stylesheets may have special rules for &amp;quot;figure &amp;gt; dt&amp;quot; and the like, but during the transition period it will be extra work to remove inappropriate default styles.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
== Proposal 1 ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 ==&lt;br /&gt;
The proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details.&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure and details to denote the contents of that element as being the caption.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prsoe (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4346</id>
		<title>Change Proposal: figure and details</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Change_Proposal:_figure_and_details&amp;diff=4346"/>
		<updated>2010-01-11T15:32:41Z</updated>

		<summary type="html">&lt;p&gt;Mjs: /* Legacy Cruft */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Summary ==&lt;br /&gt;
The current HTML5 draft uses the dt and dd elements to markup the captions and content of the figure and details elements.  This change proposal explains why the dt and dd elements are a poor choice for these purposes and proposes an alternative.&lt;br /&gt;
----&lt;br /&gt;
== Rationale Against Using dt/dd for figure and details Elements ==&lt;br /&gt;
&lt;br /&gt;
=== Backwards Compatibility ===&lt;br /&gt;
Due to IE&#039;s legacy parsing issues, the dt and dd elements create problems for authors attempting to use and style these elements. The simplest workaround (wrapping both figure and details in an extra div) that authors would need to apply to avoid these issues is not intuitive, as clearly demonstrated by the wide range of alternative solutions that were attempted prior to its discovery.&lt;br /&gt;
&lt;br /&gt;
=== Legacy Cruft ===&lt;br /&gt;
The use of extra div elements may lead to a lot of confusion among authors, at least initially, and ultimately end up becoming extraneous markup that authors just include without really understanding why, even after the current generation of browsers are long since dead.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve seen this kind of problem before with authors, for example, frequently wrapping scripts with pseudo-HTML-comments initially intended to hide the script from what are now very ancient browsers, none of which have been in use for over a decade.&lt;br /&gt;
&lt;br /&gt;
=== Styling Clashes ===&lt;br /&gt;
In addition to the aforementioned styling bug in IE, many existing stylesheets already include styles for the dt and dd elements, used in description lists (dl elements).  Authors attempting to incorporate figure or details into their existing pages would have to take care to avoid unintended styling clashes caused by selectors that aren&#039;t specific enough.  i.e.  It&#039;s common for authors to simply use the selector as &amp;quot;dt&amp;quot; or &amp;quot;dd&amp;quot;, rather than &amp;quot;dl&amp;gt;dt&amp;quot; and &amp;quot;dl&amp;gt;dd&amp;quot;, as that is currently unnecessary.  Authors will then have to adjust their styles, which could potentially cause unintended side affects to to the change in specificity of the selectors.&lt;br /&gt;
&lt;br /&gt;
=== Default Styles ===&lt;br /&gt;
The default styles for dt and dd elements is not ideal for figures.  As the dd element is usually indented with margin and/or padding, authors will usually be required to remove this with their own stylesheets, rather than being able to rely on more sensible defaults.&lt;br /&gt;
&lt;br /&gt;
=== Structural Differences ===&lt;br /&gt;
Since authors are already familiar with the meanings and structure of dt and dd when used within dl, their very distinct meanings and structure when used within the figure and details may be confusing to authors.&lt;br /&gt;
&lt;br /&gt;
The dl element may contain multiple groups of dt and dd elements, wheres within figure and details, each element may only be used once.&lt;br /&gt;
&lt;br /&gt;
Within dl, a group must have one or more dt elements followed by one or more dd elements, whereas within figure, the elements may appear in any order.&lt;br /&gt;
&lt;br /&gt;
=== Semantic Differences ===&lt;br /&gt;
For the figure element, it&#039;s not very intuitive to determine which of either dt or dd represents the caption and which represents the content such as an image.  Some authors may interpret dd as being the description, which is what it means within dl, and thus assume that dd is meant for the caption, and the dt meant for the image or other content.  However, the spec defines these with the opposite meanings, with the understanding the dt, or title, is a synonym for caption.  Both alternatives points of view make some sense, but neither stands out as being obviously correct.  This will likely lead to a lot of authors using these elements in reverse.&lt;br /&gt;
&lt;br /&gt;
=== Unnecessary Elements ===&lt;br /&gt;
The dd element is completely unnecessary to distinguish it from the caption, which has its own element.  This combined with the extraneous div required for IE compatibility adds two extra elements that are not logically needed.  A previous iteration of the spec used the legend element for the caption, without any special wrapper just for the content.  This model seems much more intuitive and required less markup to use, and thus easier to get right.  Authors who do wish to have an extra wrapper around the content may use div if they choose, but should not be required to use it.&lt;br /&gt;
&lt;br /&gt;
When there is no caption, using figure then requires authors to use 3 extra elements, where they should only need one:&lt;br /&gt;
&lt;br /&gt;
 &amp;amp;lt;div&amp;amp;gt; &amp;amp;lt;!-- IE legacy workaround --&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;figure&amp;amp;gt;&lt;br /&gt;
     &amp;amp;lt;dd&amp;amp;gt;&amp;amp;lt;img src=&amp;amp;quot;image&amp;amp;quot; alt=&amp;amp;quot;...&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;/dd&amp;amp;gt;&lt;br /&gt;
   &amp;amp;lt;/figure&amp;amp;gt;&lt;br /&gt;
 &amp;amp;lt;/div&amp;amp;gt;&lt;br /&gt;
&lt;br /&gt;
This will be unappealing to authors who may, as a result of the complexity, opt not to use the figure element.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
== Proposal 1 ==&lt;br /&gt;
The proposal is to restore the use of the legend element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 2 ==&lt;br /&gt;
The proposal is to introduce a new c element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 3 ==&lt;br /&gt;
The proposal is to introduce a new fcaption element for marking up the caption within figure, and a dlabel element for use within details.&lt;br /&gt;
&lt;br /&gt;
== Proposal 4 ==&lt;br /&gt;
The proposal is to use the caption element within figure and the label element within details for marking up the captions.&lt;br /&gt;
&lt;br /&gt;
== Proposal 5 ==&lt;br /&gt;
The proposal is to repurpose the h1 element for marking up the captions within both figure and details elements.&lt;br /&gt;
&lt;br /&gt;
== Proposal 6==&lt;br /&gt;
===Summary===&lt;br /&gt;
The proposal is to introduce a caption attribute that may be used on an element within figure and details to denote the contents of that element as being the caption.&lt;br /&gt;
&lt;br /&gt;
===Rationale===&lt;br /&gt;
* This allows the most intuitive name to be used, without the problems caused by actually using &amp;amp;lt;caption&amp;gt; as an element name.  &lt;br /&gt;
* It roughly parallels the existing uses of attributes to tie together an element and some containing element with additional semantics, as seen in &amp;lt;time pubdate&amp;gt;.&lt;br /&gt;
* It does not alter the existing semantics of the element it is applied to; a &amp;amp;lt;ul caption&amp;gt; is still a &amp;amp;lt;ul&amp;gt;, a &amp;amp;lt;time caption&amp;gt; is still a &amp;amp;lt;time&amp;gt;, etc.&lt;br /&gt;
* It forgoes the need for a &#039;wrapper&#039; element when you just want to immediately apply a special element.  For example, if you are putting photographs in a figure, with the only caption being the time it was taken, it would be best if you could simply put in the &amp;amp;lt;time&amp;gt; without a wrapper.  That is, &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;time caption datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/figure&amp;gt; is preferable to &amp;amp;lt;figure&amp;gt;&amp;amp;lt;img src=foo&amp;gt;&amp;amp;lt;caption&amp;gt;&amp;amp;lt;time datetime=2010-01-11&amp;gt;January 11th, 2010&amp;amp;lt;/time&amp;gt;&amp;amp;lt;/caption&amp;gt;&amp;amp;lt;/figure&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Details===&lt;br /&gt;
* Figure content model should be changed to &amp;quot;Flow Content&amp;quot;.&lt;br /&gt;
* The third paragraph in the prose (explaining the use of the &amp;amp;lt;dt&amp;gt; element) should be changed to roughly: &amp;quot;The first child element with the caption attribute, if any, represents the caption of the figure element&#039;s contents. If there is no child element with the caption attribute, then there is no caption.&amp;quot;&lt;br /&gt;
* The fourth paragraph in the prsoe (explaining the use of the &amp;amp;lt;dd&amp;gt; element) should be changed to roughly: &amp;quot;Any additional contents of the element beyond the caption (defined above), if any, represents the element&#039;s contents. If there are no additional contents, then there are no contents.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===Impact===&lt;br /&gt;
Easy denotation of figure captions, without any compatibility hacks that may persist long into the future.&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
	<entry>
		<id>https://wiki.whatwg.org/index.php?title=Talk:Differences_from_HTML4&amp;diff=2184</id>
		<title>Talk:Differences from HTML4</title>
		<link rel="alternate" type="text/html" href="https://wiki.whatwg.org/index.php?title=Talk:Differences_from_HTML4&amp;diff=2184"/>
		<updated>2007-04-10T07:07:10Z</updated>

		<summary type="html">&lt;p&gt;Mjs: New page: Things to possibly add:  * new &amp;lt;input&amp;gt; types  * Miscellaneous new HTMLDocument APIs:  ** getElementsByClassName ** activeElement ** hasFocus  * Miscellaneous new HTMLElement APIs:  ** getE...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Things to possibly add:&lt;br /&gt;
&lt;br /&gt;
* new &amp;lt;input&amp;gt; types&lt;br /&gt;
&lt;br /&gt;
* Miscellaneous new HTMLDocument APIs:&lt;br /&gt;
&lt;br /&gt;
** getElementsByClassName&lt;br /&gt;
** activeElement&lt;br /&gt;
** hasFocus&lt;br /&gt;
&lt;br /&gt;
* Miscellaneous new HTMLElement APIs:&lt;br /&gt;
&lt;br /&gt;
** getElementsByClassName&lt;br /&gt;
** innerHTML&lt;br /&gt;
** classList&lt;br /&gt;
** click / blur / focus made global&lt;br /&gt;
&lt;br /&gt;
* Predefined class names&lt;br /&gt;
* Predefined link types&lt;br /&gt;
&lt;br /&gt;
* Miscellaneous new APIs on specific elements (only ones that aren&#039;t tied directly to new attributes and aren&#039;t already listed)&lt;br /&gt;
&lt;br /&gt;
** relList on HTMLLinkElement, HTMLAElement&lt;br /&gt;
&lt;br /&gt;
* Auto-linking to term definitions&lt;br /&gt;
* Sectioning&lt;br /&gt;
* Scoped styles&lt;/div&gt;</summary>
		<author><name>Mjs</name></author>
	</entry>
</feed>