Ich vermute, der Plan ist, mit den „Element Queries“ aufzuhören und sie als „Container Queries“ zu bezeichnen und zu denken. Wir verfolgen diese Saga schon eine Weile. Element Queries haben einen ernsten Nachteil: Endlosschleifen.
.our-element:media(min-width: 500px) {
width: 499px;
}
Wie Mat Marquis, Mitglied der Responsive Issues Community Group, es ausdrückt:
Nun, da die Abfrage nicht mehr zutrifft, wird die neue Breite nicht mehr angewendet. Da diese neue Breite nie angewendet wird, würde die Elementabfrage wieder zutreffen, sodass die neue Breite angewendet würde, sodass die Abfrage nicht mehr zutreffen würde, sodass die neue Breite nicht angewendet würde – und so weiter bis ins Unendliche. Wir haben mit nur wenigen Zeilen CSS einen Paradoxon von TARDIS-Kaliber erreicht, und es gibt keine vorhersagbare Möglichkeit für den Browser, damit umzugehen.
Jon Neal hatte tatsächlich einige Ideen, wie Browser damit umgehen könnten.
Endlosschleifen würden beim problematischen Block einfrieren. Während Endlosschleifen bei Element-Media-Queries viel wahrscheinlicher sind, gibt es dieses Problem schon seit
:hover. Daher wäre eine klare Spezifikation doppelt nützlich.
Aber ach, vielleicht hilft es, die Abfragen auf ein Elternelement zu zwingen?
… wir müssen die Art und Weise, wie wir über eine mögliche Lösung sprechen, neu gestalten. Da eine Lösung einem Element nicht erlauben kann, sich selbst neu zu gestalten, können wir diese Einschränkung in die Spezifikation einbauen: Abfragen, die an ein Element angehängt sind, können nur die Gestaltung der Kinderelemente dieses Elements beeinflussen.
Ich glaube nicht, dass es das Problem der Endlosschleife vollständig löst, aber es macht es irgendwie einfacher zu handhaben?