style Ich habe einige Elemente innerhalb einer DIV
, die je nach der Größe des Bildschirms neu geordnet werden. Ich möchte jedes dieser Elemente je nach ihrer Flex-Box-Reihenfolge unterschiedlich gestalten. Da sich die Medienabfragen in einem Framework befinden, möchte ich lieber keine eigenen Medienabfragen schreiben, da ich nicht daran denken möchte, meine Medienabfragen zu ändern, wenn das Framework die Unterbrechungspunkte für ihre Medienabfragen ändert. Ich habe versucht, mit der +
Geschwister Selektor, aber anscheinend gilt dies nur für die Reihenfolge der Elemente in der ursprünglichen Markup, nicht die Flexbox Renderreihenfolge. Gibt es eine Möglichkeit, ein Element basierend auf der Reihenfolge zu formatieren, in der es im gerenderten DOM angezeigt wird?Wie man ein Element basierend auf seiner Flex Box order
9
A
Antwort
0
Wie in den Kommentaren erwähnt, können Sie nth-child nicht verwenden, da die Stile auf die Reihenfolge des tatsächlichen DOM und nicht auf das gerenderte DOM angewendet werden.
Sie müssen dem Markup zusätzliche Klassen hinzufügen, um dies zu tun. Anstatt mit nth-child neu zu ordnen, ordnen Sie die Reihenfolge mit den zusätzlichen Klassen neu an.
<div class="flexGrid">
<div class="flexGrid__item flexGrid__item--alpha"></div>
<div class="flexGrid__item flexGrid__item--bravo"></div>
<div class="flexGrid__item flexGrid__item--charlie"></div>
<div class="flexGrid__item flexGrid__item--delta"></div>
</div>
Weitere Einzelheiten in dieser Geige: https://jsfiddle.net/pua5u8a4/1/
Verwandte Themen
- 1. Wie extrahiere ich ein HTML-Element basierend auf seiner Klasse?
- 2. Stil ein Element basierend auf seiner Position innerhalb einer Gruppe
- 3. , wie man ein Flex-Array-Element
- 4. Xpath Wie wählt man ein Element basierend auf einer Reihenfolge und abhängig von seiner Existenz
- 5. Wie übersetze ich ein Bild basierend auf seiner Höhe?
- 6. Flex-Box-Fußzeilenelement Zentriert
- 7. Flex-Box-Stretching-Problem
- 8. Wie stapelt man Gegenstände übereinander mit der Flex Box?
- 9. Wie man ein div basierend auf seiner Position relativ zu einem anderen div aktualisiert
- 10. Wie schrumpfe ich ein Flex-Element um eine Textumbruchspanne?
- 11. Ein Element jedes Mal relativ zu seiner aktuellen Position übersetzen?
- 12. flex-box: schrumpfen vor wrap
- 13. Flex Box außerhalb der Grenzen?
- 14. Wie erkennt man die Unterstützung von css "flex-box" und "flex-wrap"?
- 15. PriorityQueue.toString false element order
- 16. flex box Artikel Breite schrumpfen
- 17. Flex-Box: flex-schrumpfen und Flex-Wrap funktioniert nicht wie erwartet
- 18. Wie wird ein Element basierend auf einem 'type' Attributwert benötigt?
- 19. Wie bekomme ich ein Element basierend auf Koordinaten
- 20. Wie verbirg ich ein Element basierend auf partiellen HREF?
- 21. FLEX: Wie man ein 'href' Ereignis fängt
- 22. Order By in Combo Box funktioniert nicht
- 23. CSS flex box alternierende Zeilenfarben
- 24. Ein Element vertikal zentrieren
- 25. (Pygame/Python) Wie platziere ich ein Objekt auf meinem Bildschirm basierend auf der Mitte seiner Rect?
- 26. Flex Box überlappen auf IE11 und Safari auf IPhone
- 27. Element basierend auf Kindklasse auswählen
- 28. Get Element basierend auf String
- 29. Ziehen von Elementen basierend auf Prozentsatz auf Containment-Element
- 30. Wie kann man ein div (flex item) von Flexberechnungen ausschließen?
Nr CSS wählt Elemente ... nicht Stile. Es kann nicht feststellen, ob ein Element einen bestimmten Stil hat oder nicht. Du brauchst Javascript. –
möglich Duplikat von [CSS-Selektor nach Stilattribut] (http://stackoverflow.com/questions/8426882/css-selector-by-style-attribute) –
Ich suche nicht unbedingt nach einem CSS-Stilselektor. Ich weiß, wenn es einen Weg gibt, dies zuverlässig zu tun, würde das mein Problem lösen; Dies ist jedoch offensichtlich nicht möglich, also versuche ich zu sehen, ob es eine Möglichkeit gibt, ein Element basierend auf der Reihenfolge, in der es im gerenderten DOM erscheint, zu stylen. Ich werde die Frage aktualisieren, um dies zu klären. – Trevor