2010-10-28 7 views

risposta

58

Sono elementi di blocco.

Se si guarda il codice HTML 4.01 Strict DTD:

<!ENTITY % heading "H1|H2|H3|H4|H5|H6"> 

<!ENTITY % block 
    "P | %heading; | %list; | %preformatted; | DL | DIV | NOSCRIPT | 
     BLOCKQUOTE | FORM | HR | TABLE | FIELDSET | ADDRESS"> 

Quindi, sono tutti definiti come %heading entità, che a loro volta fanno parte delle %block entità.

Per quanto riguarda la domanda per quanto riguarda se è possibile cambiare il colore - questo è solo lo stile e va bene, anche se mi piacerebbe farlo in un file CSS, non in linea:

H1, H2, H3, H4, H5, H6 
{ 
color: #ccccc; 
} 
+3

Mi piaceva il modo che hai aggiunto html DTD per spiegare l'answer.GR8 –

+0

Stavo solo cercando di mantenere il semplice esempio così abituati CSS in linea. Ho provato un po 'googling primo momento, ma non riuscivo a trovare la mia risposta dalla scrematura http://www.w3.org/TR/REC-html40/struct/global.html#h-7.5.5 –

+0

@ Chris S - nessun problema . Posso andare solo su ciò che è nella domanda, però;) – Oded

3

sì intestazioni sono a livello di blocco.

In un'altra nota, #ABAB non è un colore valido :)

0

La migliore pracktace è creare innanzitutto di stile CSS nel foglio di stile.

h1 { 
font-family: Georgia, "Times New Roman", Times, serif; 
font-size: 18px; 
font-weight: bold; 
color: #000000; 
} 
4

Sì Questo è il modo corretto, se si desidera utilizzare css in linea. In caso contrario, fare una classe di dire

<h1 class="title"><span>#500</span> Hello world</h1> 

ora il suo Css è:

h1.title span{ 
color:#ABABAB; 
} 

Anche in questo caso sì H1 a H6 è un livello di blocco.

0

Il colore altera il colore del carattere, non il colore dello sfondo, quindi tecnicamente è ugualmente corretto. Tuttavia, farlo in questo modo significa che per ogni intestazione che vuoi con questo stile devi specificare un tag span all'interno come hai fatto tu.

Meglio soluzione se si vuole avere sempre in vigore per tag H1 potrebbe essere quella di includere un foglio di stile con il seguente codice:

h1 { 
    color: #ABABAB 
} 
3

Sì, un span all'interno di un tag h1 è consentito. Come si può vedere sul W3C Reference page for the h1 tag:

contenuti consentiti: contenuti fraseggio

e contenuti fraseggio è un testo normale così come il vostro elemento span (e diversi altri elementi come si può vedere su questo reference page for phrasing content.

Oh sì, e le tag di intestazione sono elementi di blocco.

3

Il modo più semplice per scoprire se un elemento è a livello di blocco o inline elemen t è mettere un bordo intorno ad esso.

HTML

<h1> Heading 1 </h1> 
<span> Span </span> 

CSS

h1 { 
    border: 2px solid green; 

} 

span { 
    border: 2px solid blue; 
} 

Più esempi su jsFiddle.

+0

oh wowww così intelligente –

Problemi correlati