Autor |
Nachricht |
Twols
Threadersteller
Dabei seit: 18.02.2008
Ort: Hannover
Alter: 37
Geschlecht:
|
Verfasst Mo 30.06.2008 18:32
Titel Subklassen und IE |
|
|
Hallo, Leute!
Ich habe folgendes vor:
Code: |
<div class="box mybox box_german">
<div class="box_header">Headliner</div>
<div class="box_middle">Some content</div>
</div>
<div class="box mybox box_english">
<div class="box_header">Headliner</div>
<div class="box_middle">Some content</div>
</div>
<div class="box otherbox box_german">
<div class="box_header">Headliner</div>
<div class="box_middle">Some content</div>
</div>
<div class="box otherbox box_english">
<div class="box_header">Headliner</div>
<div class="box_middle">Some content</div>
</div>
|
Nun möchte ich dem Header der deutschen Box ein Style zuweisen.
Code: | .mybox.box_english .box_header /* spezielle Informationen zu der Box */
{
background-color:purple;
} |
Firefox macht das wunderbar und IE wendet das Stylesheet auf alle Boxen an, sprich mybox und otherbox. Beide haben in dem IE den lila Header.
Ich bin nicht so ein CSS-Profi und würde gerne wissen, ob man dieses Problem lösen kann! Google hat mir dabei nicht wirklich geholfen...
|
|
|
|
|
denise2302
Dabei seit: 12.09.2006
Ort: Leipzig
Alter: 34
Geschlecht:
|
Verfasst Di 01.07.2008 09:53
Titel
|
|
|
das einfachste wäre doch, wenn du headlines verschieden benennst, und dann so den wert definierst...
zum beispiel
Code: |
<div class="box mybox box_german">
<div class="myboxgerman_header">Headliner</div>
<div class="box_middle">Some content</div>
</div>
<div class="box otherbox box_german">
<div class="otherboxgerman_header">Headliner</div>
<div class="box_middle">Some content</div>
</div>
.....
</div>
|
und im css definierst du das dann halt so:
Code: |
.myboxgerman_header
{
background-color:purple;
}
.otherboxgerman_header
{
background-color:red;
}
...
|
|
|
|
|
|
Anzeige
|
|
|
pRiMUS
Dabei seit: 09.09.2003
Ort: Vienna
Alter: 48
Geschlecht:
|
Verfasst Di 01.07.2008 10:03
Titel
|
|
|
subklassen kannst du für den ie arbeitsfähig machen, indem du auf js zurückgreifst, sofern du das möchtest. hierfür eignet sich die IE7.js von dean edwards: http://ie7-js.googlecode.com/svn/test/index.html
|
|
|
|
|
Twols
Threadersteller
Dabei seit: 18.02.2008
Ort: Hannover
Alter: 37
Geschlecht:
|
Verfasst Di 01.07.2008 10:51
Titel
|
|
|
Danke, aber js ist kein Ausweg. Wenn der Benutzer js ausmacht, ist mein Layout im . Und wenn ich ein fallback einbaue, dann stehe ich vor dem gleichen Problem wieder.
Nun habe ich es auch verstanden, dass ie6 das gar nicht so richtig unterstützt. Ich werde es wohl irgendwie anders lösen müssen. Sehr schade, denn durch die Klassen kann man den CSS-Code schön kompakt gestalten. Nun hasse ich IE6 noch mehr.
|
|
|
|
|
denise2302
Dabei seit: 12.09.2006
Ort: Leipzig
Alter: 34
Geschlecht:
|
Verfasst Di 01.07.2008 10:57
Titel
|
|
|
denise2302 hat geschrieben: | das einfachste wäre doch, wenn du headlines verschieden benennst, und dann so den wert definierst...
zum beispiel
Code: |
<div class="box mybox box_german">
<div class="myboxgerman_header">Headliner</div>
<div class="box_middle">Some content</div>
</div>
<div class="box otherbox box_german">
<div class="otherboxgerman_header">Headliner</div>
<div class="box_middle">Some content</div>
</div>
.....
</div>
|
und im css definierst du das dann halt so:
Code: |
.myboxgerman_header
{
background-color:purple;
}
.otherboxgerman_header
{
background-color:red;
}
...
|
|
|
|
|
|
|
Twols
Threadersteller
Dabei seit: 18.02.2008
Ort: Hannover
Alter: 37
Geschlecht:
|
Verfasst Di 01.07.2008 11:06
Titel
|
|
|
Danke, aber da wäre ich auch drauf gekommen . aber wenn man viele boxen hat, dann wächst die größe der CSS ungemein (bei mehreren Sprachen) und man verliert den Überblick. Der Weg mit den Klassen ist viel besser, aber nicht machbar (scheiß IE6).
nun mache ich das wirklich so. oder so ähnlich:
Code: |
<div class="box mybox mybox-german"> |
damit kann ich alle Boxen, nur die MyBox oder nur die deutsche MyBox auswählen. Und über .box_header dann noch die einzelnen Unterelemente.
|
|
|
|
|
pRiMUS
Dabei seit: 09.09.2003
Ort: Vienna
Alter: 48
Geschlecht:
|
Verfasst Di 01.07.2008 11:20
Titel
|
|
|
und auch hier sag ichs immer wieder - du glaubst allen ernstes, das die, die den ie6 noch verwenden, tatsächlich wissen, was JS ist, geschweige denn, wie man es deaktiviert? ich würde auf den verschwindend geringen anteil der IE6 mit deaktiviertem JS scheissen. das ist unter 0,5% deiner besucher, da gehe ich jede wette ein.
wieso also mehr arbeit machen als nötig?
|
|
|
|
|
Twols
Threadersteller
Dabei seit: 18.02.2008
Ort: Hannover
Alter: 37
Geschlecht:
|
Verfasst Di 01.07.2008 11:32
Titel
|
|
|
Es sind noch so einige, den den 6. nutzen. Und wenn jemand von denen auf der guten Rat von irgendwelchen Idioten gehört hat, dass man JS ausschalten sollte, dann hat er Probleme mit der Darstellung. Und ich kann das einfach nicht riskieren. Es geht um Templates für Onlineshops und in eingen Branchen sind die Kunden eben die, die Null Ahnung von dem Ganzen haben und natürlich den IE6 nutzen. Aber man darf sie nicht verlieren.
|
|
|
|
|
|
|
|