Domanda

Di solito, l'ho visto con i moduli, ma ho trovato utile raggruppare set di dati correlati (ad es. quando si hanno più tabelle su una pagina, usando un set di campi attorno a ogni tabella o gruppo di tabelle correlate per definire un significato visibile e un nome di gruppo (legenda)). Sta abusando del tag fieldset al punto in cui, nei miei usi, non ha più un significato semantico?

È stato utile?

Soluzione

Riesco a vedere vantaggi semantici nel bloccare il contenuto in set di campi con legende.

Sebbene il W3C associasse l'uso di set di campi e legende ai moduli, l'uso consentito al di fuori del tag del modulo apre nuovi confini alla sperimentazione. Potenzialmente simile all'elenco di definizioni in uso.

Personalmente non penso che il campo "quot" in fieldset è specifico per il campo modulo. Ha appena ereditato la relazione dall'uso all'interno del tag del modulo. campo è in riferimento al raggruppamento.

Immagina di andare nei tuoi parchi locali e divertirti a giocare a softball con i tuoi amici. Sono disponibili 3 campi. Tutti loro hanno segni sulla recinzione "SOLO BASEBALL" "

Preparate le valigie e tornate a casa?

l'etichettatura dell'uso di set di campi e legende al di fuori dell'abuso di tag del modulo è miope.

Nessun punto nella definizione menziona i moduli:

  

L'elemento FIELDSET consente agli autori di   raggruppare i controlli tematicamente correlati   ed etichette. Raggruppa i controlli ce la fa   più facile da capire per gli utenti   scopo mentre contemporaneamente   facilitando la navigazione nella tabulazione per   interpreti e utenti visivi   navigazione per utenti orientati al parlato   agenti. L'uso corretto di questo elemento   rende i documenti più accessibili.

Considero il controllo della formattazione dei tag xhtml. div p blockquote ecc.

<h1>The Big Book about Everything</h1>
<fieldset>
    <legend>Jokes</legend>
    <h2>30 pages of humorous Jokes</h2>
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
    <p>Cras nec diam eu lectus condimentum faucibus in et odio.</p>
</fieldset>
<fieldset>
    <legend>Poems</legend>
    <h2>20 pages of well written poems</h2>
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
    <p>Cras nec diam eu lectus condimentum faucibus in et odio.</p>
</fieldset>
<fieldset>
    <legend>Horror</legend>
    <h2>3 Short and scary stories</h2>
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
    <p>Cras nec diam eu lectus condimentum faucibus in et odio.</p>
</fieldset>
<fieldset>
    <legend>Mystery</legend>
    <h2>3 Short and mysterious stories</h2>
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
    <p>Cras nec diam eu lectus condimentum faucibus in et odio.</p>
</fieldset>

Altri suggerimenti

Credo che questo sarebbe un abuso. http://www.w3.org/TR/REC -html40 / interact / forms.html # h-17.10 afferma " L'elemento FIELDSET consente agli autori di raggruppare tematicamente correlati controlli ed etichette " ;.

Il campo " " bit nel nome fieldset si riferisce ai campi < form > .

L'uso di fieldset al di fuori di form per raggruppare i dati aribtrary è chiaramente un abuso semantico.

Tuttavia, il tuo codice HTML verrà convalidato e Dio non Kill a Kitten.

fieldset riguarda gruppo di controllo moduli . Raggruppando i controlli dei moduli correlati, gli autori possono dividere un modulo in parti più piccole e più gestibili, migliorando il disastro di usabilità che può colpire quando si confrontano gli utenti con troppi controlli dei moduli.

Ciò non significa che un fieldset raggruppa sempre i campi all'interno di un modulo , anche se le specifiche discutono fieldset solo nel contesto dell'interazione dell'utente con il modulo ...

Quindi il "quot" abuso " può derivare dal fatto che le specifiche HTML 4 e XHTML non richiedono che fieldset e legenda siano contenuti negli elementi del modulo. FIELDSET può persino essere il figlio dell'elemento BODY. È una sintassi valida per mettere i set di campi fuori dai moduli.

Ma quando descrivi qualcosa come un fieldset che non è in realtà un fieldset, causi solo confusione.

È meglio pensare ai tag HTML / XHTML come a descrivere il significato di un elemento piuttosto che come apparirà. Quindi puoi usare i CSS per rendere l'elemento simile a quello che vuoi.

Se si raggruppano i dati a scopo di presentazione, è possibile trovare qui bella alternativa CSS .

Per riferimento:

.fieldset {
border-right: 1px solid #75736E;
border-bottom: 1px solid #75736E;
border-left: 1px solid #F2F0EE;
border-top: 1px solid #F2F0EE;
padding: 10px 3px 3px 3px;

}

.outer {
border-left: 1px solid #75736E;
border-top: 1px solid #75736E;
border-right: 1px solid #F2F0EE;
border-bottom: 1px solid #F2F0EE;
width: 200px; /* CHANGE THIS FOR BOX SIZE */
} 

.legend {
float: left;
margin-left: 15px;
margin-top: -8px;
padding-left: 5px;
padding-right: 5px;
font-weight: bold;
background: #FFF;
} 

<div class="legend">Lipsum.com Is The Best</div>
<div class="outer">
<div class="fieldset">Lorem ipsum dolor sit amet, consectetuer adipiscing elit. 
Donec congue fermentum metus. Quisque vel ante. 
Cras purus metus, dignissim at, luctus et, sollicitudin eget, urna. 
Maecenas eget lacus. Aenean bibendum risus non erat mattis semper. 
Aliquam placerat nibh eget lacus. Sed blandit eleifend justo. Nam elit. 
Fusce feugiat orci id eros facilisis laoreet. 
Integer vestibulum condimentum purus. 
Proin vehicula congue lacus. Quisque placerat diam nec enim. 
Nunc lorem. Maecenas nec sem sed nulla tristique faucibus.</div></div>

Se si desidera raggruppare le tabelle, prendere in considerazione l'utilizzo di un elemento di intestazione appropriato (h1-h6) per ciascun gruppo. Le singole tabelle possono essere descritte usando la didascalia " 'elemento. L'attributo 'riepilogo' è disponibile anche per ogni tabella.

Dalle specifiche:

  

Ogni tabella può avere un associato   didascalia (vedi l'elemento CAPTION) che   fornisce una breve descrizione di   scopo del tavolo. Una descrizione più lunga   può anche essere fornito (tramite il riepilogo   attributo) a beneficio delle persone   utilizzando l'utente basato su parlato o Braille   agenti.

E per la cronaca, l'elemento 'fieldset' non deve essere utilizzato al di fuori dei moduli. E all'interno dei moduli, è destinato a raggruppare concettualmente campi di input simili, ad esempio "informazioni personali" o "indirizzo di fatturazione", ecc.

Ecco un articolo interessante che discute ciò che gli utenti di screen reader ascoltano durante la navigazione dei set di campi. http: // www .rnib.org.uk / wacblog / articoli / too-much-accessibilità / too-much-accessibilità-fieldset-leggende /

Il tag fieldset è anche utile per gli screen reader e alcune altre tecnologie assistive.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top