HR style.margin i IFRAME

w dziale Strony WWW w Operze
_eP napisał(a):

Napotkałem dziwne zachowanie Opery: domyślne marginesy dla elementu HR tzn Top i Bottom ustawione są na 10px z tym że w oknie top są te ustawienia ignorowane tzn. faktyczne marginesy Operka robi tujta na 0px.
O tym że domyślne są ustawione na 10px można się jednak przekonać odczytując wartość z włąściwości currentStyle.margin elementu HR.

Ale żeby było zabawniej to w ramce elementu IFRAME te wartości domyślne są jednak wcielane w czyn i efekt tego jest taki że te same elementy HR mają różne marginesy w zależności od tego gdzie są one wyświetlane.
Problem dopiero znika gdy zdefiniuje się regułę która przykryje ustawienia domyślne.

Niby to taka drobnostka ale może napsuć trochę krwi początkującemu. W końcu to trochę niemiło gdy skryptera zmusza się do pisania dodatkowych reguł tylko po to by przykryć nimi fanaberie Operki.

Czy ktoś już to zauważył ? Na mój gust świadczy to trochę o niechlujstwie programistów za to odpowiedzialnych.
W końcu to przecież dotyczy podstawowej funkcji przeglądarki.

Pozdrawiam

Zajec napisał(a):

test-case możesz podrzucić?

Zaufany napisał(a):

A w której przeglądarce działa inaczej?

_eP napisał(a):

Napisałem taki prosty przykładzik, a trochę mi z tym zeszło bo znowu Operka pozwala i wymaga innego mechanizmu niż IE - to tak na marginesie (Jakby ktoś wiedział jak ten przykład można przerobić by w Operce wyglądał tak samo jak w IE to byłbym wdzięczny - sam próbowałem ale jak widać bez powodzenia tzn. chodzi mi o taki kod który bez sprawdzania tożsamości przeglądarki zadziała identycznie w obu: tzn w Operze oraz IE).
Co do meritum sprawy to wysokość elementów HR jest widoczna ( fioletowy kolor tła ) w IE tabela powtórzona w ramce ma element HR o tej samej wysokości jak w okienku top. Natomiast w Operce dla okienka top HR jest bez marginesów (brak tła ) a w ramce IFRAME z dosyć dużymi marginesami.

Pozdrowienia. 2HR-test_case.htm

Zaufany napisał(a):

Słowem wstępu: to układ tabelaryczny i strona bez doctype, czyli to ma prawo w Operze nie działać tak, jak w innych przeglądarkach. Cóż, sprawdziłem ów kod w 3 różnych, linuksowych przeglądarkach i za każdym razem efekt wyglądał inaczej.

W każdym razie sprawdź wymuszenie na stałe wysokości komórki, w której umieszczony jest element hr.