Quali sono gli svantaggi pratici nell'utilizzare elementi di presentazione validi del W3C, che non sono elencati come deprecati?

StackOverflow https://stackoverflow.com/questions/2235672

Domanda

Quali sono gli svantaggi pratici nell'utilizzare elementi di presentazione validi del W3C, che non sono elencati come deprecati

  • per gli sviluppatori XHTML-CSS,
  • Utenti finali vedenti del sito,
  • e per gli utenti di lettori di schermo, ?

Piace <b> , <i>, <br>, <hr>, <small> Se utilizzo questi tag per scopi di presentazione.(Nota: questi sono supportati anche in HTML 5)

Per esempio:

  1. Se uso <b> al posto di <span style="font-weight: bold">
  2. Se uso <i> al posto di <span style="font-style: italic">
  3. Se uso <br> per interrompere la riga nel paragrafo per non fare spazio
  4. Se uso <hr> al posto di <div style="border-bottom: 1px solid #666">
  5. Se uso <small> al posto di <span style="font-size: 9px">

Conosco la differenza tra <strong> E <b>.La mia domanda non riguarda <strong> contro <b>

È stato utile?

Soluzione

Non c'è un "contro" nell'usarli di per sé.C'è un "contro" nell'usarli per la cosa sbagliata.In passato sono stati spesso utilizzati per la cosa sbagliata nelle pagine web, ma ciò non significa che non esista la cosa giusta.

<i> è semanticamente equivalente a <span style="font-style: italic">:vale a dire, non esiste contenuto semantico.Una parola dentro <i>...</i> non è più importante;un convertitore di sintesi vocale di una pagina web non dovrebbe(*) leggere quella parola con un tono di voce enfatizzato.

Quando vuoi enfatizzare una parola, come "sicuramente" in questa frase, dovresti decisamente utilizzo <em>.Questo è il caso comune.Ma quando vuoi semplicemente un dettaglio tipografico, come scrivere in corsivo un blocco di testo solo per scopi visivi, o stranezze tipografiche come riferirti sempre al tuo sito come "CoseMondo!”, <em> non è adatto e vorresti la versione priva di semantica (the <i> o il <span>).

Allo stesso modo, <strong> è adatto per "per la cosa sbagliata" sopra poiché è pensato per essere fortemente enfatizzato.Se volessi solo che parte del testo fosse resa in grassetto, senza implicare che sia più importante del testo circostante, utilizzeresti <b> o, ancora, stili su un altro elemento come <span> O <div>.

Un uso comune per <i> E <b> è quando prendi il testo da una fonte non semantica.In particolare, è comune importare contenuti da un elaboratore di testi o da un'applicazione simile in cui non esiste il concetto di enfasi in quanto tale, solo "corsivo" e "grassetto".In questo caso <i> E <b> (o gli equivalenti span) sono appropriati, perché non sai quale sia l'intento semantico dietro quegli stili di testo;quell'informazione è già persa.

Se hai convertito automaticamente tutto il corsivo in <em> come fanno molti strumenti, potresti contrassegnare il corsivo che non intende rappresentare l'enfasi.Ad esempio riferimenti ad altre opere, che sarebbe meglio contrassegnare <cite>, o parole/frasi di un'altra lingua come il latino o il francese, con cui sarebbe meglio contrassegnare <span lang> (e lo stile associato per descrivere le parole di un'altra lingua dovrebbe essere in corsivo).

<small> E <big> potrebbe teoricamente essere lo stesso caso, ma mentre il testo importato in grassetto/corsivo è comune, il testo con dimensioni importate non lo è.Di conseguenza nessuno usa questi tag e generalmente stai meglio con i normali stili di dimensione dei caratteri CSS.

<br> E <hr> probabilmente non sono presentazionali allo stesso modo dei tag di cui sopra.Un'interruzione di riga può essere una parte importante del contenuto (ad es.nel separare le righe in un indirizzo), e una riga orizzontale rappresenta una separazione più forte tra le sezioni di testo rispetto a un semplice paragrafo.Ovviamente se usi <br> per creare paragrafi falsi stai sbagliando (e sei David Siegel intorno al 1998) e usi un <hr> solo per ottenere una bella battuta che non va bene.

(*:esempio illustrativo;scoprire cosa fanno effettivamente i veri screen reader è lasciato come esercizio per il lettore.)

Altri suggerimenti

Per completezza qui è la Indice degli Elementi che le liste che sono obsoleti e che non sono (e lei ha ragione in loro affermando come non deprecato).

In generale, comunque la gente usa:

  • <strong> invece di <b>;
  • <em> invece di <i>;
  • <hr> e <br> perché non ci sono alternative;
  • <small> è nella mia esperienza raramente utilizzato, con uno stile CSS viene utilizzato al posto.

E 'importante capire che <strong> e <em> hanno significato semantico, ma <b> e <i> non quindi non ci sono casi di utilizzo valide per entrambi.

ore sono un dolore allo stile con i CSS, senza l'aggiunta più html

BRS mi infastidiscono in quanto non sono realmente necessari quando si hanno padding e margini di giocare con

Io tendo ad usare em o forti, piuttosto che i oppure b - entrambi questi implicano corsivo o grassetto mentre em o forti sono un po 'più astratto, quindi se si vuole dare un po 'em'phasis a qualche testo o fare un po 'di testo guardare un po 'più forte fanno più senso senza necessariamente essere grassetto o corsivo

I contro di utilizzare elementi <br> per indicare interruzioni di linea (e quindi non utilizzando elementi <p> per indicare paragrafi) è che si sta limitando la vostra sfera di controllo CSS sul documento. È molto più facile da gestire molti elementi <p> di testo, del testo inframmezzato da <br>s in un elemento tramite CSS.

Ogni volta che ho messo insieme sono documento HTML, io uso

  • <br> per indicare una pausa 'soft'. (Come sopra: preferisce utilizzare margini su elementi <p> per mostrare paragrafi.)
  • <hr> a indicare la divisione di due sezioni del documento, ad esempio tra i intestazione e la navigazione, o la navigazione e il contenuto. Quando un browser senza supporto CSS considera il documento, una divide chiaro è visibile. Ho poi nascondo le <hr>s tramite il CSS.

Dei tuoi 5 esempi, solo questo, credo, ha un significato: "# Se uso <small> al posto di <span style="font-size:9px>"

Small è relativo, mentre font-size:9px è assoluta. Dovremmo sempre usare unità relative, permettendo al navigatore di scegliere il proprio scala assoluta. <span style="font-size:small"> (o preferibilmente <span style="font-size:smaller">) sarebbe l'equivalente.

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