Autor Zpráva
niCe
Profil
Čaj, prosím vás o pomoc s css. Mějme následující situaci


<div id="Obal">
<p>Odstavec obalu</p>

<div class="Obsah">
<p>Odstavec obsahu</p>
</div>
</div>


a tyto css:

div#Obal p {color:black}
div.Obsah p {color:red}

Odstavec obsahu by měl být takto červený, ale bude černý, protože ho přebije definice odstavce v divu Obal. Šlo by nějak zapsat ty definice tak, aby se odstavci v divu Obsah nemusela přidávat extra třída? Třeba zápisem p.Obsah atp.

Předem děkuju za odpověď, pěkný den
Railbot
Profil
Třeba zápisem p.Obsah atp.
To bys právě dělal pro odstavec se třídou Obsah a to nechceš.

co třeba #Obal .Obsah p {color: red}
niCe
Profil
Takhle by to právě šlo, díky. Ale řeším problém s tím, že budu tisíckrát opisovat ten obalovací prvek, protože pro definici odkazů, odstavců, nadpisů je toho moc. Ale asi to je jediné řešení.

Nechal bych tomu Obsahu id, což by bylo pro zápis v css jednodušší, ale potřebuji class protože se na stránce opakuje. Nu což.

Ještě jednou díky, čaj
centi
Profil
div#Obal p {color:black}
div#Obal div.Obsah p {color:red}
Railbot
Profil
centi
"div" je tam úplně zbytečně a když si to odmyslíš, tak dostaneš to jediné řešení, co jsem psal já. Děkuji za zopakování.
centi
Profil
Railbot
Sorry, reakcie som moc nečítal a rovno napísal riešenie :-) A áno, v tomto konkrétnom riešení stačí #Obal, resp tvoj zápis.
ladik
Profil
Dvě jiná řešení:

1. zvaž, je-li nutné mít #Obal a ne .Obal pak:

.Obal p {color:black;}
.Obsah p {color:red;}

a text v .Obsah p bude červený:

2. pokud musíš nutně mít #Obal, tak zkus:

#Obal p {color:black;}
.Obsah p {color:red !important;}

v tomto případě bude také text v .Obsah p červený, ale s !important opatrně, může to dělat neplechu.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0