InterNerw Explorer – stary błąd w nowszym wydaniu

by nbw on Marzec 3, 2006

O tym, że base potrafi mocno namieszać w drzewku DOM Internet Explorera, wie chyba każdy, kto trochę dłużej zajmuje się tworzeniem stron internetowych. Jeśli ktoś z czytających nie wie o co chodzi, to śpieszę wyjaśnić pobieżnie, że w stronie z base, body staje się dzieckiem tak base, jak i html.

Niestety, to nie koniec problemów.

Zastosowanie base sprawia, że IE zaczyna w bardzo dziwny sposób traktować zawartość elementów pozycjonowanych relatywnie (position: relative;). Stają się one „blokiem”, co utrudnia, bądź wręcz – uniemożliwia, zaznaczenie i skopiowanie tekstu.

By problem rozwiązać, wystarczy dopisać po base, </base>. A najlepiej – ująć to w komentarze warunkowe. Krótką charakterystykę z tym błędem „w akcji”, można znaleźć tutaj

3 comments

hehe, patrz: http://cssbeauty.com/skillshare/comments.php?DiscussionID=5 :)

ciekaw jestem jak Ty wpadłeś na to absurdalne rozwiązanie, jakim jest domknięcie elementu, którego wg spec nie wolno domykać? też intuicja? :)

by ffreak on 4 marca 2006 at 02:44. #

Hehe. Tak, dokładnie ten sam sposób. Miałem dwa kody. W jednym nie było BASE i wszystko działało, a w drugim BASE był i nie działało. Usunąłem najpierw doctype – zaczęło działać, ale zepsuł się box-model. Później usunąłem BASE i zaczęło działać.

Niestety, BASE w tamtym projekcie był więcej niż wymagany, więc dopisałem </base>.

:)

by nbw on 4 marca 2006 at 09:24. #

Na szczęście to pierwsza (i jedna z niewielu) rzeczy, którą przepisali w IE7.

by porneL on 6 marca 2006 at 15:46. #



More in web (42 of 46 articles)