2012-12-05 9 views
8

Ist es semantisch für ein Element <figure>, das nur eine <figcaption> enthält? Es tut validate ...Kann ein <figure> Element nur ein <figcaption> ohne Bild enthalten?

<figure> 
    <img src="example.jpg"> 
    <figcaption>Image and caption</figcaption> 
</figure> 

<figure> 
    <figcaption>Caption only</figcaption> 
</figure> 

In diesem Zusammenhang würde es haben Folgen für CSS Styling:

figure figcaption { color: red; } 

Antwort

7

Ein img nicht in einem figure Element erforderlich ist, geschieht es nur gemeinsam, und die meisten Beispiele, die figcaption haben ein Bild auch verwenden.

http://dev.w3.org/html5/spec/single-page.html#the-figure-element

Das <figure> Element kann somit verwendet werden, Bilder, Grafiken, Fotos, Codebeispiele zu annotieren, usw., die auf dem Hauptinhalt des Dokuments bezeichnet werden, aber das konnte, ohne dass diese Auswirkungen der Ablauf des Dokuments kann von diesem primären Inhalt, z auf der Seite von die Seite, zu dedizierten Seiten oder zu einem Anhang.

http://dev.w3.org/html5/spec/single-page.html#the-figcaption-element

<figcaption> Das Element stellt eine Beschriftung oder eine Legende für den Rest der Inhalt des Elternfigur Elements figcaption Element, wenn jede.

Beachten Sie die „falls vorhanden“ Teil, der mir den Inhalt anders als die figcaption führt zu glauben, kann nicht existieren, und es wird nach wie vor gültig. Wie Alochi bemerkt, deutet dies jedoch auf einen Missbrauch des Elements hin, da für die Beschriftung kein Inhalt zu beschreiben ist.

Es ist ein Beispiel in der aktuellen Spezifikation Beispiel für Nicht-Bildinhalt von einem figcaption begleitet, so dass ich denke, es ist fair, es ist vollkommen in Ordnung zu übernehmen, um nicht ein Bild haben:

Hier Ein Teil eines Gedichtes wird mit Abbildung markiert.

<figure> 
    <p>'Twas brillig, and the slithy toves<br> 
    Did gyre and gimble in the wabe;<br> 
    All mimsy were the borogoves,<br> 
    And the mome raths outgrabe.</p> 
    <figcaption> 
    <cite>Jabberwocky</cite> (first verse). 
    Lewis Carroll, 1832-> 98 
    </figcaption> 
</figure> 
2

Zulässige Inhalte für Abbildung:

  • ein figcaption Element, gefolgt von Fluss Inhalt
  • Flow-Inhalt gefolgt von einem optionalen figcaption Element

(c) w3c/figure

+0

Der Teil "gefolgt von Flow-Inhalt" ist auf dem W3C ausgegraut - neugierig, wenn es so klar ist ... – Baumr

4

Als Michael Malinovskij, ein Element Figur beantwortet sollte "flow Inhalt" sowie eine figcaption enthalten.

The HTML5 spec has this to say about flow content

Als allgemeine Regel gilt, Elemente, deren Content-Modell ermöglicht es jedem Fluss Inhalt oder Phrasierung Inhalt sollte mindestens ein Kind Knoten haben, dass ist spürbar Inhalt und das muss nicht das ausgeblendete Attribut angegeben .

Diese Anforderung ist nicht eine harte Anforderung jedoch, da es viele Fälle, in denen ein Element berechtigterweise leer sein kann, zum Beispiel, wenn es als Platzhalter verwendet wird, die später von einem Skript ausgefüllt werden, oder wenn das Element Teil einer Vorlage ist und auf den meisten Seiten ausgefüllt wäre, aber auf einigen Seiten nicht relevant ist.

hat, so nichts anderes als die figcaption gelten, aber wenn Sie später in Inhalt zu füllen beabsichtigen, ist es wahrscheinlich nicht sinnvoll oder richtige Bedeutung Förder, die als nicht semantische charakterisiert werden .

+0

Oh, richtig, ich habe mich zu sehr in den "ohne ein Bild" Teil verfangen. Eine Einzelfigur ohne Inhalt macht keinen Sinn, oder? –

+0

@WesleyMurch - Es ist schwer zu sehen, wann es Sinn machen würde, ja. – Alohci

+0

Es ist seltsam, dass die Spezifikation sagt "eine Beschriftung für den Rest des Inhalts des Elternelements Element des Figaction Elements, *** wenn ***" ... klingt wie es in Betracht gezogen wurde und es ist faires Spiel, keinen Inhalt zu haben als eine figcaption. Ich kann nicht sehen, wie das Sinn machen würde. –