Sven Rautenberg: Maximaler z-index = 2147483647

Beitrag lesen

Moin!

Insbesondere beim z-index, bei dem man ja nicht mit den Zahlen rechnen muß, sondern sie lediglich zu vergleichen hat.

Das ist nicht korrekt.

Sondern? Wird ein Browser jemals in die Lage kommen, zwei z-index-Angaben zu addieren oder zu multiplizieren? Wohl eher nicht, weil CSS keine derartigen Operationen zuläßt (jedenfalls noch nicht).

Also auf deine Frage: Ja, warum sollte man das anders machen?

Weil der Browser bei z-index nicht mit einem String sonder mit einem Interger zu rechenen hat.
http://www.w3.org/TR/CSS21/visuren.html#z-index

"ein Integer" ist per Definition aber lediglich eine Ganzzahl, über deren Länge ist nichts ausgesagt. Und wenn es darum geht, beliebig lange Zahlen bis in die letzte Stelle genau zu speichern (denn der Unterschied zwischen z-index:100 und z-index:101 ist derselbe, wie zwischen z-index:1000000000000000000000 und z-index:1000000000000000000001 und muß folglich auch beachtet werden), dann kann man das natürlich in beliebig langen Binärzahlen tun, wenn man damit binäre Rechenoperationen vorhat, aber einfacher ist IMHO das Speichern als String. Weil das CSS ja ohnehin als String vorliegt.

PS: Wenn das mit dem Speichern als String so abwegig ist, warum wird das denn u.A. auch vom PHP-Modul bcmath benutzt? :)

- Sven Rautenberg