È conforme agli standard per lo stile del nodo html?

3

Sto lavorando a un tema del sito web. Voglio utilizzare uno sfondo ripetuto sul nodo <html> in modo da avere un altro sfondo che si sovrappone al nodo <body> . In caso contrario, aggiungerei il primo sfondo al nodo <body> e quindi il secondo sfondo su un% co_de nidificato con 100% larghezza / altezza al suo interno. Vado per uno schema di ripetizione del browser completo che sarà visibile indipendentemente dal ridimensionamento del browser. Vedi i miei esempi.

desiderata:

<html> <!-- background: url("...") repeat; width: 100%; height: 100%; -->
  <body> <!-- background: url("...") repeat-x; width: 100%; height: 100%; -->

Non consentito dalle specifiche? Non è una buona idea a causa di stranezze del browser? Work-around:

<html> <!-- width: 100%; height: 100%; -->
  <body> <!-- background: url("...") repeat; width: 100%; height: 100%; -->
    <div> <!-- background: url("...") repeat-x; width: 100%; height: 100%; -->

Funziona in FF5 e IE7 / 8/9. Ma c'è una specifica che dice di non aggiungere uno stile al nodo <div> ? C'è un browser particolare che dovrei fare attenzione, come IE6, che mi farà tornare all'alternativa se provassi questo?

EDIT: Sto utilizzando una dichiarazione <html> corretta (XHTML 1.0 Tansitional). La larghezza / altezza sul nodo <!DOCTYPE html...> è principalmente per chiarezza delle intenzioni del mio pattern di sfondo. (Grazie a @veryfoolish)

EDIT 2: So che CSS3 supporta più sfondi per nodo e il commento di @ merryprankster mi mostra come simulare quello con CSS 2.1 (grazie!), ma ho davvero bisogno di sapere se HTML / CSS in base alla specifica limita qualsiasi cosa "visiva" sul nodo html , che in pratica viene generalmente utilizzato come una casella invisibile che circonda il tag <html> . C'è una ragione per cui nessuno sfrutta l'esistenza garantita del <body> nodo, applicando gli stili CSS (non solo le proprietà in cascata, come <html> )?

    
posta jimp 22.07.2011 - 01:22
fonte

1 risposta

3

L'uso di cose come html { height: 100%; } è tutto ma onnipresente; Non vedo alcun problema con questo utilizzo (e una rapida occhiata a vari consigli tecnici CSS suggeriscono che sia sintassi del suono).

E questo è ovvio, esp. poiché la tua domanda riguarda gli standard, ma assicurati di utilizzare un DTD (ad esempio <!DOCTYPE html> ) perché una rapida ricerca di Google con IE6 / 7 renderà i tag HTML stilizzati solo nella cosiddetta modalità standard.

    
risposta data 22.07.2011 - 02:25
fonte

Leggi altre domande sui tag