Heim >Web-Frontend >CSS-Tutorial >Warum rendern Chrome und Firefox die Höhen für Prozent- und „Auto'-Werte unterschiedlich?
In CSS wird die Höhe eines Elements auf Blockebene auf einen Prozentsatz oder „Auto“ festgelegt, ohne die Höhe des übergeordneten Elements anzugeben kann zu unterschiedlichen Höhenberechnungen in den verschiedenen Browsern führen. Chrome und Firefox zeigen beispielsweise unterschiedliche Verhaltensweisen.
In Ihrem Beispiel mit height: 1 %, berechnet Chrome die Höhe des Div als der Rand unten plus die Inhaltshöhe des p-Elements. Dies liegt daran, dass gemäß der CSS-Spezifikation „auto“ für Prozentsätze berechnet wird, wenn die Höhe des übergeordneten Elements nicht explizit festgelegt und das Element nicht absolut positioniert ist.
Andere Die Diskrepanz zwischen Chrome und Firefox liegt in der Handhabung der prozentualen Höhen in der Flexbox. Chrome und Safari priorisieren die flexible Höhe des übergeordneten Elements, während Firefox und IE11/Edge die Gesamthöhe des übergeordneten Elements priorisieren.
Die Sprache der CSS-Spezifikation in Bezug auf Höhenprozentsätze ist etwas vage und lässt Raum für Interpretationen von Browser-Herstellern. Herkömmliche Interpretationen erfordern einen festgelegten Höhenwert für das übergeordnete Element, dem Browser wie Chrome und Safari folgen. Allerdings haben Firefox und IE diese Interpretation um Flex-Höhen erweitert.
Um eine konsistente Höhendarstellung in allen Browsern sicherzustellen, ziehen Sie diese Alternativen in Betracht:
Das obige ist der detaillierte Inhalt vonWarum rendern Chrome und Firefox die Höhen für Prozent- und „Auto'-Werte unterschiedlich?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!