2015-09-22 6 views
8
verwenden

Gibt es ein HTML-Element, das ich verwenden kann, um "das ist, was ein Akronym bedeutet" in Fällen, in denen ich die vollständige Bedeutung im Text und nicht in einem Tooltip angezeigt werden soll ein <abbr> Element.Welches Element für die Rückseite von <abbr>

Zum Beispiel möchte ich die Definition von „CSS“ aufzuschreiben, und ich habe

<dt>CSS</dt> 
<dd>Short for <mark>Cascading Style Sheets</mark>. This is the name of 
    the language that stylesheets are written in.</dd> 

Welches Element kann ich, wo ich jetzt mark missbraucht?

PS können Sie erwägen, keine Markierung zu verwenden, aber ich möchte den Namen in Kursivschrift hervorheben, also brauche ich etwas!

+0

Was ist ''? –

+2

@JeroenBellemans Nein, ich meine nicht Betonung; das hätte eine andere Bedeutung! Wenn ich zum Beispiel die Seite durch einen Sprachsynthesizer führe, möchte ich nicht, dass der Sprecher seine Stimme erhebt, als ob die Phrase wichtiger wäre. –

+0

Was ist los mit 'mark' oder einfach' span' oder tatsächlich 'i'? – dfsq

Antwort

5

Leider HTML Es gibt kein dediziertes Element, das die erweiterte Form einer Abkürzung darstellt.

Dieses Beispiel von the HTML5 spec on abbr scheint zu Ihrem Anwendungsfall ziemlich nahe, mit Ausnahme der Abkürzung nach der Expansion in einem Abschnitt wird, nicht in einem dd Elemente nach einem dt die Abkürzung enthält. Das Beispiel zeigt, unter Verwendung eines dfn Element der Expansion zu markieren:

<p>The <dfn id=whatwg>Web Hypertext Application Technology 
Working Group</dfn> (<abbr 
title="Web Hypertext Application Technology Working Group">WHATWG</abbr>) 
is a loose unofficial collaboration of Web browser manufacturers and 
interested parties who wish to develop new technologies designed to 
allow authors to write and deploy Applications over the World Wide 
Web.</p> 

Basierend auf dem description of dfn, die sagt (Hervorhebung von mir):

Das dfn Element die definierende Instanz eines Begriffs darstellt. Der Absatz Beschreibung Liste Gruppe, oder Abschnitt, der der nächste Vorfahre des Elements dfn ist, muss auch die Definition (en) für den Begriff dfn Element enthalten.

Sie sollten in ähnlicher Weise Ihre Inhalte markieren können:

<dt><abbr title="Cascading Style Sheets">CSS</abbr></dt> 
<dd>Short for <dfn>Cascading Style Sheets</dfn>. This is the name of 
    the language that stylesheets are written in.</dd> 

Allerdings bin ich mir nicht sicher, ob es für eine dfn in einem dd erscheinen angemessen ist und nicht seine dt, assoziiert sogar innerhalb das gleiche dl.Wenn Sie das stört, ist die nächste nächste Alternative, ohne zu einem span zurückgreifen zu müssen, ist i:

<dt><abbr title="Cascading Style Sheets">CSS</abbr></dt> 
<dd>Short for <i>Cascading Style Sheets</i>. This is the name of 
    the language that stylesheets are written in.</dd> 

(und ich wahrscheinlich die dfn als Kind der dt und Eltern der abbr stattdessen auch hinzufügen möchte)

+0

Wusste nicht über '', scheint ein guter semantischer Vorschlag. –

+1

Gute Eins; Vielleicht benutze ich das am Ende. Es ist schade, dass 'dfn' kein Attribut' for' hat (wie Labels). Die Seite sagt zwar, dass 'title' auf diese Weise verwendet wird, aber der Titel ist immer noch ein Tooltip. Naja. –

+0

@Mr Lister: In der Tat, das ist eine Schande. – BoltClock

1

Entweder verwenden

<i></i> or </em></em> 

oder eine Spanne mit einem Datenattribut-Tag verwenden, z.B.

<dt>CSS</dt> 
<dd>Short for <span data-acronym>Cascading Style Sheets</mark>. This...</dd> 

oder

<dt>CSS</dt> 
<dd>Short for <span data-acronym="CSS">Cascading Style Sheets</mark>. This..</dd> 

Wenn dies für Akronyme ist, könnte man auch die "Short für" entfernen und nur noch

<dt>CSS</dt> 
<dd>Cascading Style Sheets</dd> 

und dann ein weiterer Eintrag

<dt>Cascading Style Sheets</dt> 
<dd>The language format that web stylesheets are written in.</dd> 
+0

Es ist nicht _just_ für eine Liste von Akronymen. Das ist überall ein Problem, dass ich den vollständigen Namen verwenden möchte, und ich möchte, dass das Markup zeigt, dass dies der vollständige Name ist. –

+0

Müssen '

' und '
' innerhalb einer '
' (Definitionsliste) liegen? –

+1

@William Turrell: Sie tun - ich gehe davon aus, dass die DL aus Gründen der Kürze weggelassen wird. – BoltClock

Verwandte Themen