CSS Ajutor - Cum poate un DIV ignora set css anterior pe pagina?

voturi
1

Sunt folosind AjaxControlToolkit CalendarExtender. Unele regulă anterioară în stylesheet mea afectează div în cadrul calendarului.

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

Există în calendarul DIV care sunt obligate la 49%. Cum pot fi calendarul ignora setările anterioare și de a folosi stilurile care vin cu calendarul? Este posibil? Mi-e teamă să schimbe regula actuală, dar cred că, probabil, trebuie să fie, cu toate acestea multe alte divuri pe acest control se bazează pe ea. Ce simbolul> face pentru o regulă css. De exemplu

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

Poate că va ajuta? Sunt deschis pentru orice sugestii. Mulțumesc, ~ ck în San Diego

Întrebat 26/08/2009 la 22:40
sursa de către utilizator
În alte limbi...                            


3 răspunsuri

voturi
2

Teoretic , >simbolul va selecta numai divs , care sunt copii imediate ale #paymentRegion. Un divjos mai departe cuibărit ar fi afectate. Cu toate acestea , nu toate browserele interpreta în mod corect, deci nu este ceva ce se poate utiliza în mod fiabil.

O soluție mai directă este să -și încheie calendarul într - o <div id="calendar">și apoi scrie o regulă imperativ:

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

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

Acum , chiar dacă majoritatea div s interiorul #paymentRegion vor fi plutit, în interiorul divs #calendar nu va fi!

Publicat 26/08/2009 la 22:46
sursa de către utilizator

voturi
1

VoteyDisciple are dreptate, deoarece regula soluția lui propusă are o specificitate mai mare decât cel actual.

Mai multe informații despre calcularea normelor de specificitate .

Publicat 26/08/2009 la 22:58
sursa de către utilizator

voturi
0

Este dificil să știi ce să sugereze , fără nici HTML. Ne puteți spune structura de bază? De exemplu, este divfaptul că este vizat în prima regulă un copil direct #paymentRegion?

În cazul în care este cel mai înalt nivel div(nu neapărat un copil direct), precum și toate celelalte divuri sunt mai jos ca unul, puteți încerca acest lucru:

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

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

Cu toate acestea, cel mai bun pariu ar fi să se stabilească o clasă / ID - ul pe care mysery div, dacă aveți posibilitatea să modificați codul HTML.

div#paymentRegion div#uniqueID {
    float: left;
    width: 49%;
}
Publicat 26/08/2009 la 23:13
sursa de către utilizator

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