CSS Hilfe - Wie kann ein DIV ignorieren CSS zuvor auf der Seite eingestellt?

stimmen
1

Ich bin mit AjaxControlToolkit CalendarExtender. Einige frühere Regel in meinem Sheet beeinflusst divs innerhalb des Kalenders.

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

Es gibt DIVs im Kalender, der auf 49% gezwungen werden. Wie kann ich den Kalender haben die vorherigen Einstellungen ignorieren und die Stile verwenden, die mit dem Kalender kommen? Ist das möglich? Ich fürchte, die aktuelle Regel zu ändern, aber ich denke, es ist wahrscheinlich, aber viele andere divs auf dieser Kontrolle auf sie verlassen werden muss. Was bedeutet das Symbol>, um eine CSS-Regel tun. Beispielsweise

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

das wird vielleicht helfen? Ich bin für alle Vorschläge offen. Danke, ~ ck in San Diego

Veröffentlicht am 26/08/2009 um 22:40
quelle vom benutzer
In anderen Sprachen...                            


3 antworten

stimmen
2

Theoretisch , das >würde Symbol nur wählen divs , die sofortigen Kinder #paymentRegion sind. Eine divnested weiter unten wäre nicht betroffen. Allerdings sind nicht alle Browser interpretieren das richtig, so etwas ist es nicht , dass Sie zuverlässig nutzen können.

Eine direkte Lösung ist Ihren Kalender in einem wickeln <div id="calendar">und dann eine übergeordnete Regel schreiben:

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

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

Nun , obwohl die meisten div s innerhalb #paymentRegion wird geschwommen werden, die divs innerhalb #Kalender wird nicht sein!

Beantwortet am 26/08/2009 um 22:46
quelle vom benutzer

stimmen
1

VoteyDisciple ist richtig, da seine vorgeschlagene Lösung Regel eine höhere Spezifität als Ihr gegenwärtiges hat.

Weitere Informationen über die Spezifität Regeln Berechnung .

Beantwortet am 26/08/2009 um 22:58
quelle vom benutzer

stimmen
0

Es ist schwierig zu wissen , was ohne HTML vorzuschlagen. Können Sie uns die Grundstruktur sagen? Zum Beispiel ist die , divdie in der ersten Regel ein direktes Kind ausgerichtet ist #paymentRegion?

Wenn es das höchste Niveau ist div(nicht unbedingt ein direktes Kind), und alle andere divs unterhalb diesem ein, können Sie versuchen , diese:

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

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

Allerdings wäre die beste Wette eine Klasse / ID auf diesem Mysery zu setzen div, wenn Sie Ihre HTML ändern.

div#paymentRegion div#uniqueID {
    float: left;
    width: 49%;
}
Beantwortet am 26/08/2009 um 23:13
quelle vom benutzer

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