CSS Nápověda - Jak může DIV ignorovat css předem nastavit na stránce?

hlasů
1

Já používám AjaxControlToolkit CalendarExtender. Některé předchozí pravidlo v mém stylů ovlivňuje tagu Div v kalendáři.

div#paymentRegion div
{
    float:left;
    width:49%;
}

Existuje divs rámci kalendáře, které jsou nuceny k 49%. Jak mohu mít kalendář ignorovat předchozí nastavení a používat styly, které přicházejí s kalendářem? Je to možné? Obávám se, že změnit stávající pravidlo, ale myslím, že to asi musí být, nicméně mnoho dalších prvky div na této kontroly se na ně spoléhat. Co znamená symbol> dělat na pravidlo CSS. Například

div#paymentRegion > div
{
    float:left;
    width:49%;
}

Možná to pomůže? Jsem otevřen pro všechny návrhy. Díky, ~ ck v ​​San Diegu

Položena 26/08/2009 v 22:40
zdroj uživatelem
V jiných jazycích...                            


3 odpovědí

hlasů
2

Teoreticky je >symbol by se vybrat pouze divů, které jsou bezprostředními děti #paymentRegion. divVnořené hlouběji bude ovlivněn. Nicméně , ne všechny prohlížeče interpretovat, že správně, takže to není něco, co můžete bezpečně používat.

Více přímé řešením je zabalit svůj kalendář v <div id="calendar">a pak psát naléhavý pravidlo:

div#paymentRegion div {
    float: left;
    width: 49%;
}

div#calendar div {
    float: none;
    width: auto;
}

Nyní, i když většina div bude plaval s vnitřní #paymentRegion budou prvky div uvnitř #calendar nemůže být pravda!

Odpovězeno 26/08/2009 v 22:46
zdroj uživatelem

hlasů
1

VoteyDisciple je v pořádku, protože pravidlo jeho navrhované řešení je má vyšší specifičnost než váš aktuální.

Více informací o výpočtu pravidla specificitou .

Odpovězeno 26/08/2009 v 22:58
zdroj uživatelem

hlasů
0

Je těžké vědět, co naznačují, bez HTML. Můžete nám říci základní strukturu? Například, je div, že je zaměřen na první pravidlo přímá podřízená #paymentRegion?

Pokud se jedná o nejvyšší úroveň div(ne nutně přímá dítě), a všechny ostatní prvky div jsou pod touto jedna, můžete zkusit toto:

div#paymentRegion div {
    float: left;
    width: 49%;
}

div#paymentRegion div div {
    float: none;
    width: auto;
}

Nicméně, nejlepší sázka by bylo stanovit třídu / ID na tomto mysery div, pokud můžete změnit HTML.

div#paymentRegion div#uniqueID {
    float: left;
    width: 49%;
}
Odpovězeno 26/08/2009 v 23:13
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more