Witam!
Pozycjonuje obrazek lub tekst na stronie, wykorzystując kaskadowe arkusze stylów. W IE pozycja elementu jest zgodna z zapisem, natomiast w Operze element jest przesunięty w inne miejsce. W3C Valid nie wykazuje błędu. Czy ja coś źle robię czy Opera, jak piękna kobieta jest kapryśna i pełna niespodzianek?
Pzdr.
Re: Błąd pozycjionowania w Operze?
Originally posted by Janko
Czy ja coś źle robię
A jak to niby mamy sprawdzić?
Moja czarodziejska kula leży gdzieś zakurzona i nie będę jej specjalnie szukał.
Re: Re: Błąd pozycjionowania w Operze?
andol napisał(a)
Moja czarodziejska kula leży gdzieś zakurzona i nie będę jej specjalnie szukał.
A powinieneś ją trzymać przy komputerze i regularnie odkurzać.
A tak na poważnie: skoro W3c Valid wykazuje brak błędu to dlaczego Opera "nie trawi" pozycjonowania i przesuwa element o kilkadziesiąt pixeli?
Pzdr
Re: Re: Re: Błąd pozycjionowania w Operze?
Originally posted by Janko
skoro W3c Valid wykazuje brak błędu to dlaczego Opera "nie trawi" pozycjonowania i przesuwa element o kilkadziesiąt pixeli?
Automat to nie wyrocznia. Jeśli nie znajduje błędów -- nie oznacza to wcale, że kod jest prawidłowy. Tak więc jeśli nie pochwalisz się swoim dziełem, nikt nie będzie w stanie Ci pomóc.
Re: Re: Re: Re: Błąd pozycjionowania w Operze?
andol napisał(a)
Automat to nie wyrocznia. Jeśli nie znajduje błędów -- nie oznacza to wcale, że kod jest prawidłowy. Tak więc jeśli nie pochwalisz się swoim dziełem, nikt nie będzie w stanie Ci pomóc.
Nie ma sie czym chwalić. To jest moja pierwsza strona, wykonana całkowicie samodzielnie i napewno zawiera błądy. Jednakże nie tylko W3C ale także weryfikacja składni dokumentu za pomocą Pajączka i EzHTML nie wykazują tych błędów. Myślałem, że problem jest znany, i dlatego nie podawałem linku. Skoro jednak nie znalazłeś tej czarodziejskiej kuli to podaję: http://members.chello.pl/tachmiel następnie klick na jachcik i na stronie sailing.html mamy tekst kóry jest przesunięty do dołu a koło sterowe wychodzi poza obrys. W IE jest dobrze. Oczekuję ostrej krytyki.
Pozdrawiam.
Re: Re: Re: Re: Re: Re: Błąd pozycjionowania w Operze?
andol napisał(a)
No, i nie wiem po co ta tabelka na górze?
andol, dziękuję za cenne rady .Poprawiłem tak jak sugerowałeś. Nie kojarzę tylko o jaką tabelkę chodzi.
Pozdrawiam
Re: Błąd pozycjionowania w Operze?
Załącz w Operze styl "Pokazuj elementy określające układ strony" i poszukaj znacznika <table>Originally posted by Janko
Nie kojarzę tylko o jaką tabelkę chodzi.
Re: Re: Re: Re: Re: Re: Błąd pozycjionowania w Operze?
Originally posted by andol
A dlaczego? Ano dlatego, że element span (który jest elementem inline) nie ma atrybutu width. Zamiast niego powinieneś zastosować div.
DIV tez nie ma width attribute.
M.
Re: Re: Re: Re: Re: Re: Re: Błąd pozycjionowania w Operze?
Originally posted by Janko
andol, dziękuję za cenne rady .Poprawiłem tak jak sugerowałeś.
No, ale nie możesz wstawiać bloku div pomiędzy znaczniki em!
Zamiast:
<em><div>...</div></em>
powinno być:
<div><em>...</em></div>
A to pozycjonowanie to trochę przekombinowane... Nie wygląda to na wynik przemyśleń, a raczej na efekt działań metodą prób i błędów
Zobacz jak się zachowuje strona, gdy zmniejszasz okno przeglądarki.
U mnie w Operze 7.60p1 nadal jest źle.
Ale żeby nie było, że może jeszcze nie poprawiłeś - z hotlistą czy bez, zawsze jest tak samo... źle. Używam rozdzielczości 800x600...
UPDATE: Źle = koło wychodzi poza stronę...
Originally posted by Moose
DIV tez nie ma width attribute.
Ha...
Heheh... moglibyście od razu wyjaśniać... bo sam na chwilę oniemiałem...
Naprawdę, to żadna pomoc, jak mówicie:
- zastosuj DIV, bo dla SPAN nie ma atrybutu width...
- DIV też nie ma...
- Racja...
Wniosek z tego taki, że szerokość trzeba określić za pomocą CSS, a nie atrybutem HTMLa... ale chyba nie każdy o tym wie, szczególnie ktoś początkujący, jak Janko, który pierwszy raz tworzy stronę - i już się pewnie trochę zniechęcił...
Re: Re: Re: Re: Re: Błąd pozycjionowania w Operze?
No więc strona z całą pewnością nie jest stworzona poprawnie.Wygląda ona niemal identycznie w Operze i w IE. I to tylko dlatego, że Opera przełącza się na niej do quirks mode i wyświetla stronę nieprawidłowo (czyli tak, jak IE).
Zgaduję, że powodem, dla którego na Twoim komputerze koło sterowe wychodzi poza obrys jest to, że w Operze masz włączoną hotlistę, a co za tym idzie -- obszar na którym wyświetlana jest strona jest węższy. Zmniejsz szerokość okna swojego IE, a zobaczysz, że w nim również koło sterowe wychodzi poza obrys.
Prawidłowo strona wyświetlana jest za to w Firefoksie i Mozilli. Prawidłowo, ale za to zupełnie niezgodnie z Twoimi oczekiwaniami.
A dlaczego? Ano dlatego, że element span (który jest elementem inline) nie ma atrybutu width. Zamiast niego powinieneś zastosować div.
Aby Opera nie przełączała się do quirks mode, musisz odpowiednio zdefiniować nagłówek.
Zamiast:
<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
wpisz:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
Strona będzie wówczas wyświetlona w Operze tak, jak w Firefoksie.
I nie tylko w Operze - również w IE6.
A gdy już zobaczysz efekt, będziesz mógł pomyśleć nad jej przeprojektowaniem. W każdym razie mam nadzieję, że przekonałem Cię, że w przypadku Twojej strony nie ma mowy o żadnym błędzie pozycjonowania w Operze... Jest za to nieprawidłowe użycie span oraz niezbyt przemyślany sposób umieszczenia obrazka z kołem sterowym.
No, i nie wiem po co ta tabelka na górze?
quiris: złamałem DTD, bo okienko się rozjeżdżało