Rozważmy scenariusz, w którym atrybut CSS brakuje jednostkę (px, em, pt,%):awaryjna dla atrybutów CSS bez jednostki
<body>
<div
style= "width:170;
border:1 dotted PaleGreen;
background-color:MistyRose">
The quick brown
</div>
</body>
pytania:
- Dlaczego to awaryjne do px? Czy piksel jest zawsze preferowaną jednostką? Czy istnieje jakaś zasada zdefiniowana w roboczym projekcie lub zaleceniu W3C?
- Czy istnieje reguła, która nakłada na UA obowiązek powrotu do preferowanej jednostki?
- Biorąc pod uwagę powyższy przykład, które z następujących jest prawidłowe zachowanie:
- Internet Explorer: w trybie osobliwości (IE6,5,4 ..) szerokości i granica szerokości stosowane awaryjnej do pikseli. Od IE7 (do dziś, IE10RP) ignoruje całą regułę, jeśli brakuje jednostki. Dlatego obie zasady zostały zignorowane.
- Firefox 13: W powyższym przykładzie szerokość ma postać zastępczą px, ale szerokość krawędzi została zignorowana.
- Chrome 19, Opera 12, Safari 5.1.2: Zarówno szerokość, jak i szerokość ramki zastępują px.
Uwaga: W Microsoft Connect, mówili:
Kwestia zgłaszasz jest zgodne z projektem. IE10 w trybie standardowym ignoruje szerokość lub wysokość bez jednostki zgodnie ze standardami CSS. Urządzenie nie jest opcjonalne.
To jest poprawna odpowiedź. Kiedy użyłem doctype HTML5 '', wszystkie wyżej wymienione przeglądarki ignorują szerokość i obramowanie. Nigdy nie wiedziałem, że inne przeglądarki również zachowują się inaczej w trybie dziwactwa. Dziękuję Ci! –