vorheriges Element
Linuchs
- css
0 T-Rex0 ChrisB0 Matthias Apsel0 Linuchs0 Matthias Apsel0 ChrisB
0 Matthias Apsel
Hallo,
wie wird das vorherige Element angesprochen? Ich habe
div#inhalt p:nth-child(odd) {
float: right;
}
div#inhalt p.linie:first-letter {
color: #f00;
font-size: 110%;
}
und
<p>xx</p><p class=linie>Aber dich gibt's nur einmal für mich</p>
<p>xx</p><p>Am Strande der Donau</p>
Ich möchte vor <p class=linie> ein margin-top haben, das müsste ich ja dem vorangehenden <p> zuordnen. Wie geht das?
Linuchs
Gar nicht. Mittels CSS kannst du im DOM Baum nicht zurück gehen.
Alternative wäre eine andere HTML Struktur oder JS.
Gruß
MRT-Rex
Moin,
Gar nicht. Mittels CSS kannst du im DOM Baum nicht zurück gehen.
Schönes Zitat dazu vom WebKit-Entwickler Dave Hyatt:
"With parent selectors it becomes extremely easy to accidentally cause a document-wide grovel. People can and will misuse this selector. Supporting it is giving people a whole lot of rope to hang themselves with."
Grüße Marco
@@misterunknown:
nuqneH
Gar nicht. Mittels CSS kannst du im DOM Baum nicht zurück gehen.
Noch nicht.
Schönes Zitat dazu vom WebKit-Entwickler Dave Hyatt:
"With parent selectors it becomes extremely easy to accidentally cause a document-wide grovel. People can and will misuse this selector. Supporting it is giving people a whole lot of rope to hang themselves with."
Dennoch ist der Strick in Selectors Level 4 vorgesehen.
Qapla'
Hi,
<p>xx</p><p class=linie>Aber dich gibt's nur einmal für mich</p>
<p>xx</p><p>Am Strande der Donau</p>
>
> Ich möchte vor <p class=linie> ein margin-top haben, das müsste ich ja dem vorangehenden <p> zuordnen.
Wieso? Wenn p.linie ein margin-top haben soll, dann gibst du p.linie ein margin-top …
MfG ChrisB
--
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
Om nah hoo pez nyeetz, ChrisB!
Wieso? Wenn p.linie ein margin-top haben soll, dann gibst du p.linie ein margin-top …
Das wird wahrscheinlich ein float-problem sein.
Matthias
Hi,
<p>xx</p><p class=linie>Aber dich gibt's nur einmal für mich</p>
<p>xx</p><p>Am Strande der Donau</p>
> Wieso? Wenn p.linie ein margin-top haben soll, dann gibst du p.linie ein margin-top …
Nöö, die zugehörige Seitrenzahl xx hat diesen margin-top dann nicht.
Linuchs
Om nah hoo pez nyeetz, Linuchs!
Wieso? Wenn p.linie ein margin-top haben soll, dann gibst du p.linie ein margin-top …
Nöö, die zugehörige Seitrenzahl xx hat diesen margin-top dann nicht.
Im Normalfall sind p-Elemente Blockelemente. Das heißt, sie stehen untereinander. Abstand zwischen ihnen kannst du erreichen mit margin-top für den unteren oder margin-bottom für den oberen. Bei dir ist aber float im Spiel.
Also: Zeig mal.
Matthias
Hi,
Hi,
<p>xx</p><p class=linie>Aber dich gibt's nur einmal für mich</p>
<p>xx</p><p>Am Strande der Donau</p>
>
> > Wieso? Wenn p.linie ein margin-top haben soll, dann gibst du p.linie ein margin-top …
>
> Nöö, die zugehörige Seitrenzahl xx hat diesen margin-top dann nicht.
Abgesehen davon, dass du diesen Zusammenhang nicht erwähntest – \*warum\* steht die Seitenzahl in einem P-Element?
MfG ChrisB
--
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
Om nah hoo pez nyeetz, Linuchs!
div#inhalt
div#inhalt
sollte überspezifiziert sein, es sei denn du verwendest dieses stylesheet auch für eine Seite, auf der es ein p#inhalt
gibt.
⇒ #inhalt
sollte reichen
Du solltest für ein neues Projekt statt <div id="inhalt">
<main role="main">
verwenden.
⇒ main
sollte reichen
Matthias