2009-06-24 18 views
55

Sembra intercambiabile?quando utilizzare UL o OL in html?

+3

Avrebbero davvero dovuto scegliere nomi diversi, poiché quando stai imparando per la prima volta su questo è confuso poiché una lista visiva verrà ovviamente visualizzata in un certo ordine. Avrebbero dovuto chiamarlo qualcosa come (per elenco puntato) e (per elenco numerato). –

risposta

72

UL significa "lista non ordinata". OL significa "elenco ordinato".

UL si ottiene punti elenco. OL ti fa i numeri.

Sicuramente non intercambiabili.

+14

Bene, tecnicamente è possibile modificare la modalità di visualizzazione dell'elenco con CSS (stile elenco). Ma sì, semanticalmente, UL dovrebbe essere usato per i dati non ordinati e OL per ordinato. – jimr

+0

Molto vero. CSS è solo la visualizzazione dei dati; è la differenza semantica che è importante, IMO. – Randolpho

+0

-1 - Il fatto che la visualizzazione predefinita sia diversa non dovrebbe incidere su quale scegliere. Annullerò il downvote se il bit sul display viene rimosso o chiarito. –

13

OL:

  1. elemento lista 1
  2. voce dell'Elenco 2

UL:

  • elemento lista 1
  • elemento lista 2

OL è lista ordinata, UL è lista ordinata

+0

Per OL, il numero è possibile nascondere? – omg

+0

Come menzionato negli altri post puoi usare css list-style: none; per nasconderlo. Puoi anche usare list-style-type per pasticciare l'aspetto. Se hai intenzione di downvotare, lascia un motivo. – Zach

+0

Capito. E se volessi impostare il margine tra ogni elemento UL? – omg

25

si comanda lista (OL), è per cose che hanno un ordine definito e distinto. C'è una ragione dietro perché sono organizzati.

L'altro (UL) è l'elenco non ordinato, che è solo una raccolta di elementi in un ordine non specificato. La loro organizzazione è banale.

+9

Sì. Quello che gli altri non menzionano è che i numeri o le pallottole sono solo la formattazione predefinita. Il significato semantico è la cosa principale. –

+1

BTW, come nascondere i proiettili di UL da css? – omg

+9

stile elenco: nessuno; –

7

Penso che sia un problema sematico, dato che i punti di numerazione/punti elenco possono essere modificati dai CSS.

Gli elenchi ordinati devono essere istruzioni simili o qualsiasi informazione sequenziale.

Gli elenchi non ordinati devono essere tutto il resto.

+2

Mi picchia. Grazie per aver tirato fuori la semantica. –

44

Con <ol> l'ordine dei dati è importante e verrà visualizzato (per impostazione predefinita) mentre con <ul>, l'ordine non è così importante. Esempio:

<p>Tomorrow I will</p> 
<ol> 
<li>Wake up</li> 
<li>Have breakfast</li> 
<li>Go to sleep</li> 
</ol> 
<p>During breakfast, I will eat</p> 
<ul> 
<li>Butter</li> 
<li>Eggs</li> 
<li>Bacon</li> 
</ul> 
3

Usa OL quando si è messa in vendita di passi che devono essere fatto in un certo ordine. Utilizzare UL quando si elencano gli articoli senza un ordine particolare di importanza.

17

Haha, così tante risposte!

Quando HTML è uscito prima, c'erano OL e UL, che, come tutti gli altri utenti hanno detto, significava ordinato elenco e lista non ordinata.

la differenza era facile. OL visualizzati ... un numero accanto a loro. O un numero romano o una lettera! Potresti anche controllare se utilizzava simboli maiuscoli o minuscoli! Freddo!

UL ti ha dato proiettili. 3 tipi di proiettili, anche - dischi (cerchi vuoti), quadrati (quadrati pieni), cerchi (cerchi pieni).

Non c'era il CSS. Al di là di questi attributi, non c'era davvero un modo per personalizzare i formati di lista (e margini e rientri e tutto il resto). Quindi, questa distinzione era importante.

Al giorno d'oggi, è tutto CSS.In effetti, le persone w3 vogliono che tu usi gli stili piuttosto che l'attributo "tipo" html che hai usato. Quindi, usare UL contro OL non ha molta importanza, se sei uno di questi utenti CSS nuovi.

CSS consente di modificare il tipo di proiettile, oppure di utilizzare un'immagine, o di modificare i margini/stili/rientranze, o di non visualizzare nemmeno un punto elenco.

Modifica di nuovo: questa risposta non è pensata per affrontare i meriti semantici di UL contro OL. Ma tecnicamente (lo sai, a bit e byte) il sopra delinea le differenze di comportamento.

+7

Il corretto è fare la distinzione perché non si sa come l'utente raggiungerà le informazioni. Forse il suo browser non supporta i CSS o sta usando uno screen reader, o qualsiasi altra cosa. Semanticamente non sono la stessa cosa, quindi devi distinguerli. – basaundi

46

In termini matematici (hey, perché no?), Un <ol> rappresenta una sequenza, mentre <ul> rappresenta un set. Riorganizzare gli oggetti in una lista ordinata cambia il significato della lista. Riorganizzandoli in una lista non ordinata no.

Questa è una buona regola per quale tipo di elenco utilizzare. Se la modifica dell'ordine degli articoli rende l'elenco errato, si desidera utilizzare <ol>. Se l'ordine non è importante, utilizzare <ul>.

+5

La sequenza rispetto al set è una metafora divertente, tranne per il fatto che un set matematico non consente ripetizioni mentre fa un elenco html non ordinato. – jtmoulia

+0

Penso che intendessi "ma" invece di "eccetto". Il fatto che "un set matematico non consente ripetizioni mentre una lista non ordinata in html fa", non cambia il fatto che "Sequence vs set è una metafora divertente". ratskin

1

ul significa elenco non ordinato. È per le liste in whick che non importa in che ordine si trovano le voci dell'elenco.

ol significa elenco ordinato. È per le liste che sono numerate o che in qualche modo mostrano che hanno un ordine specifico.

Per impostazione predefinita, si ottengono elenchi puntati e elenchi numerati, sebbene questo possa essere modificato in css.

7

Come la questione si chiede "quando usarli", ho pensato opportuno offrire esempi di quando, di solito decido di utilizzare OL quando voglio una serie di passaggi, e UL quando voglio offrire scelte:

ordinato elenco

Qui il passi sono critici per il business case, dobbiamo fare i passi in questo ordine, quindi un elenco ordinato viene utilizzato.

Checkout fasi su eCommerce, questi passaggi saranno in questo ordine.

<ol> 
    <li>shipping</li> 
    <li>billing</li> 
    <li>summary</li> 
    <li>confirmation</li> 
</ol> 

Elenco non ordinato

Un utente può decidere l'ordine in cui scelgono di interagire con questi scelte

<ul> 
    <li>Contact Us</li> 
    <li>Newsletter Signup</li> 
    <li>Terms</li> 
    <li>Log out</li> 
</ul> 
1

In alcuni casi (in particolare utilizzati dai lettori di schermo per le persone con esigenze particolari) potresti voler avere una lista ordinata ma non avere numeri associati a loro a causa del design visivo. Es. quando dici le istruzioni su una pagina per riempire un modulo e vuoi che gli screen reader utilizzino gli articoli ordinati nelle istruzioni, sarà utile. Per tutti gli scopi visivi possono essere fatti apparire esattamente uguali tramite CSS. È la semantica (non visiva, ma utile per screen reader) diversa e a volte utile.

1

http://techuap.com/category/tips/computer-programming-tips

Usa OL quando si è messa in vendita di passi che devono essere fatto in un certo ordine. Usa UL quando stai elencando gli articoli senza un particolare ordine di importanza. Per impostazione predefinita, si ottengono elenchi puntati e elenchi numerati, sebbene questo possa essere modificato in css. grazie ..

Problemi correlati