2012-03-17 23 views
5

Mi chiedo perché a volte riesco a cambiare il colore di sfondo della pagina web ea volte non riesco. Ad esempio, in alcuni siti, digito semplicemente document.body.bgColor = "red" nella console di Chrome e il colore di sfondo è stato modificato temporaneamente. Tuttavia, negli altri siti come StackOverFlow, questo non funziona. Poiché il mio browser ha già caricato la pagina, dovrei essere in grado di cambiare la modalità di visualizzazione locale. Perchè no? Graziecambia colore di sfondo

risposta

8

In Chrome è possibile utilizzare DOM inspector per esaminare lo stile calcolato del corpo e anche l'ereditarietà/sovrascrittura delle regole CSS che risultano in questo stile calcolato.

Se si imposta document.body.style.backgroundColor (non la proprietà bgColor), si vedrà che è possibile modificare effettivamente il colore di sfondo qui. Tutto dipende dal fatto che ci sia un'altra regola da qualche altra parte con specificità più alta o meno. L'ispettore DOM ti dirà se questo è il caso.

+2

+1, che dovremmo proporre questo su meta dovremmo? 'document.body.style.background =" pink ";' – Jeroen

+0

@Jeroen In realtà non sembra troppo male. –

3

CSS è la tua risposta. Prova

document.body.style.background="red"; 

Gli stili CSS sostituiscono le proprietà degli elementi.

+0

Stai dicendo che facendo questo, il colore dello sfondo cambierà indipendentemente dall'implementazione css che sta usando il sito, perché è superante? –

+0

Beh, si. Lo sfondo della pagina cambierà colore. Questo potrebbe non cambiare il colore che vedi: molti, molti siti usano un div contenitore che ha il proprio colore di sfondo, o div all'interno di div che hanno colori di sfondo. – FrankieTheKneeMan

3

Se lo fai, lo sfondo cambierà anche qui. Ma come puoi vedere con un DOM Inspector, lo sfondo non è la cosa che vedi veramente. Questo è un div chiamato container. Se cambi lo sfondo di questo div, vedrai le modifiche

Modifica: Ohh vedo che il contenitore è transperente. Quindi utilizzare document.body.style.backgroundColor quindi funzionerà. :)

1

È sempre possibile impostare il colore dello sfondo del corpo. Tuttavia, ciò non riflette necessariamente lo sfondo della vista corrente. Inoltre, se esistono definizioni più specifiche per un elemento rispetto alla definizione che imponi, verranno comunque utilizzate. Quindi, non c'è "perché no" perché tu hai ragione: puoi sempre cambiare la pagina localmente.

-2
document.backgroundColor="red"; 
+1

Si prega di aggiungere una spiegazione del perché questo funzionerà. – Reg

0

È possibile modificare il colore di sfondo del corpo in html. usa la proprietà css come questo codice.

<html> 
<head> 
    <style> 
     body { 
      background-color: red 
     } 
    </style> 
</head> 
<body> 
</body> 

È possibile controllare più proprietà per cambiare il colore del corpo da questo link http://www.webclasses.in/css-background/

+0

Si noti che questa domanda riguarda la modifica del colore di sfondo a livello di codice tramite Javascript, non le proprietà CSS di base. –

Problemi correlati