Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][CSS]Problem z wyswietlaniem na IE, na Firefox jest ok.
Forum PHP.pl > Forum > Przedszkole
gadhet
Witam,

Mam taka stronę: http://www.historie-sukcesu.pl/index.php?show=2

Którą wczoraj trochę przerobiłem głównie wyświetlanie tych dodawanych artykułów. I na Firefoxie jest wszystko OK, natomiast na IE rozjezdza się, czy ktoś może mi pomóc z tym dlaczego tak jest?

Dzięki za pomoc.
crocodillo
W chrome też się rozjeżdża, nie patrzyłem w FF.
Nie sprawdzałem dokładnie, ale te pierwsze pozycje masz jęte w <div class="lista_int"> ... </div> i jest tam jeszcze jeden div który chyba kasuje float <div class="clear">

Później już to pomijasz. Spróbuj to poprawić, powinno pomóc.
lobopol
Powiem tak, masz nieziemski burdel w kodzie, 3 razy otwierasz html i dajesz nagłówki, tak samo body. Zerknij na walidator w3c
gadhet
Z tym "burdelem" to wiem, uczę się na tej stronie dlatego to niestety tak wygląda.

A jakieś sugestie odnośnie tego wyświetlania na IE? Zaraz spróbuje wcześniejszą wskazówkę.

PS. Niestety Sposób crocodillo nie działa sad.gif . Pomóżcie, bo nie wiem co robić sad.gif
lobopol
Mówię napraw kod pozbądź się podwójnych html/body, a przede wszystkim przeczytaj jakiś kurs html. Bez podstawowych poprawnych konstrukcji to tu nie ma co naprawiać, można się jedynie dziwić czemu firefox to dobrze wyświetla.
crocodillo
Cytat(gadhet @ 13.08.2011, 15:05:40 ) *
Z tym "burdelem" to wiem, uczę się na tej stronie dlatego to niestety tak wygląda.

A jakieś sugestie odnośnie tego wyświetlania na IE? Zaraz spróbuje wcześniejszą wskazówkę.

PS. Niestety Sposób crocodillo nie działa sad.gif . Pomóżcie, bo nie wiem co robić sad.gif


Raczej działa, tylko do tego trzeba całą resztę naprawić tak jak inni wspominali.
ps: ie9 też nie wyświetla tej strony poprawnie
gadhet
Tak ja cały czas mówię o IE 9, że źle wyświetla.

Właśnie zacząłem poprawiać błędy i widzę postępy smile.gif. Zobaczę jak będzie po poprawieniu wszystkiego smile.gif a trochę tego jest. Dzięki za sugestie!
crocodillo
Cytat(gadhet @ 13.08.2011, 16:09:18 ) *
Tak ja cały czas mówię o IE 9, że źle wyświetla.

Właśnie zacząłem poprawiać błędy i widzę postępy smile.gif. Zobaczę jak będzie po poprawieniu wszystkiego smile.gif a trochę tego jest. Dzięki za sugestie!

Myślałem o FF a napisałem IE. Chodziło mi, że FF5 też źle wyświetla.
gadhet
OK, większość posprzątałem (zostało błąd z banerem i formularzem rejestracji) ale i tak nic nie pomogło z wyświetlaniem tych artykułów w pomysłach, dwóch pierwszych, bo są inaczej zrobione a nie tak jak te poniżej które inaczej w divach są umieszczone.

Dalej tylko FF 3.6 wyświetla dobrze... no oprócz FF 5.

Niestety dalej nie wiem o co chodzi sad.gif
lobopol
Sprawdziłem stronkę na ff5, ostatnim chrome,ie7,ie9, ostatniej operze, ff3.6, ie6 wszędzie wygląda z grubsza tak samo i nie wiem jaki ty chcesz efekt osiągnąć. Po kodzie ciężko rozpoznać bo masz zbyt duży chaos. Daj screena jak byś chciał aby to wyglądało?
crocodillo
Cytat(gadhet @ 13.08.2011, 18:07:48 ) *
Dalej tylko FF 3.6 wyświetla dobrze... no oprócz FF 5.

Tak na marginesie, to jeszcze takiego starego ff używasz?

Widzę, że to co Ci się rozjeżdża, masz rozdzielone <hr>.
W stylach dopisz
  1. hr { clear:left;}

Powinno Ci wyrównać, aczkolwiek dokładnie nie sprawdzałem bo patrząc na ten Twój kod można się nabawić bólu głowy smile.gif

Też pamiętam jak miałem problemy początkowo z FLOAT, ale to było dawno...

Możesz też każdy artykuł umieścić w divie, tak jak te początkowe tzn. <div class="lista_int"> ... </div>
i w stylach dopisz do div.lista_int clear:left;
gadhet
Chciałbym tak jak na Firefox 3.6:

http://i51.tinypic.com/mwplwi.jpg

Te dwa pierwsze artykuły na tej stronie http://www.historie-sukcesu.pl/index.php?show=2 mnie interesują aby byly dobrze wyswietlane tak jak na firefox 3.6. OCzywiscie pozniej reszta ale tam jeszcze inne divy sa ale to pozmieniam zaraz.
crocodillo
Pokażę Ci jak zrobić pojedynczy element:

W stylach odpowiednio dopisujesz (oczywiście zakładam, że wiesz jak to zrobić, jak nie to daj znać):
  1. div.lista_int {
  2. clear:left;
  3. }
  4. div.lista_int div.lista_img_horizontal {
  5. width:160px; /* Zakładamy, że każdy obrazek będzie węższy niż 160 pikseli */
  6. float:left;
  7. }
  8. div.lista_int div.lista_txt {
  9. margin-left:160px;
  10. }


a html na taki wzór:
  1. <div class="lista_int">
  2. <div class="lista_img_horizontal">
  3. <img alt="" src="http://www.historie-sukcesu.pl/images/Miernik wody/Miernik w kranie.png" width="150px" height="150px" />
  4. </div>
  5. <div class="lista_txt">
  6. <div class="data">
  7. 2011-08-11
  8. </div>
  9. <p>
  10. <a title="Miernik wody" href="index.php?show=64">Miernik wody przepływającej.</a>
  11. </strong>
  12. </p>
  13. Ciekawy pomysł zaprezentował Jeon Hwan Soo, który stworzył miernik wody przepływającej. Koncept urządzenia jest przedstawiony na rysunkach poniżej.
  14. Jak widać na wyświetlaczu jest ukazane ile wody nalaliśmy do np. garnka.
  15. </div>
  16. </div>
  17.  


Jeśli teraz przerobisz swój html, żeby każdy element wyglądał tak samo, to Ci się wszystko fajnie wyświetli
lobopol
Jak widzę na pewno część winy ponosi szerokość kontenerów, TRESC masz dynamiczną szerokość, a lista_int ma stałą (przez wewnętrzne kontenery)
gadhet
Moje style odpowiadające za te div-y wygladaja tak. Podopisywałem tak jak wspomniałeś, choć nie wiem czy dobrze zrozumiałem dopisanie czegoś takiego:

  1. div.lista_int div.lista_img_horizontal {
  2. width:160px; /* Zakładamy, że każdy obrazek będzie węższy niż 160 pikseli */
  3. float:left;
  4. }
  5.  
  6. div.lista_int div.lista_txt {
  7. margin-left:160px;
  8. }


tzn do dwóch div-ów czy stworzyc cos takiego jako nowe?

U mnie to wygląda tak, ale teraz to sie wszystko rozjechalo na stronie. Kod html strony mam taki sam jak wspomniales.


  1. div.lista_img {
  2. float:left;
  3. padding-bottom:5px;
  4. padding-right:9px;
  5. width:150px;
  6. }
  7.  
  8. div.lista_int
  9. {
  10. width:160px;
  11. float:left;
  12. border-bottom: 1px solid #EAEAEA;
  13. height: 150px;
  14. margin: 0 0 7px;
  15. margin-left:160px;
  16. padding: 0 0 6px;
  17. clear:left;
  18. }
  19.  
  20. div.lista_txt
  21. {
  22. margin-left:160px;
  23. float:left;
  24. font-size:16px;
  25. text-align:left;
  26. width: 675px;
  27. }
  28.  
  29. div.clear
  30. {
  31. clear: both;
  32. }
  33.  
  34.  
  35. div.lista_img_horizontal {
  36. float:left;
  37. padding-bottom:5px;
  38. padding-right:9px;
  39. width:160px;
  40. }


Cytat(lobopol @ 13.08.2011, 21:41:51 ) *
Jak widzę na pewno część winy ponosi szerokość kontenerów, TRESC masz dynamiczną szerokość, a lista_int ma stałą (przez wewnętrzne kontenery)



Doszedłem Panowie!!! To jest właśnie to co napisał lobopol jedne szerokości były dynamiczne a drugie statyczne.

Ale należą się wam obydwu plusy za pomoc jakiej udzieliliście mi dzisiaj
crocodillo
Wiem, że już Ci działa jak należy, ale tylko chcę pokazać co było źle w Twoim css: (niepotrzebne dałem w komentarze)
  1. /*div.lista_img { TEGO WOGÓLE NIE UŻYWASZ
  2. float:left;
  3. padding-bottom:5px;
  4. padding-right:9px;
  5. width:150px;
  6. }*/
  7.  
  8. div.lista_int
  9. {
  10. /*width:160px; */
  11. /*float:left;*/
  12. border-bottom: 1px solid #EAEAEA;
  13. height: 150px;
  14. margin: 0px 0px 7px 160px; /* poptawiłem */
  15. padding: 0 0 6px;
  16. clear:left;
  17. }
  18.  
  19. div.lista_txt
  20. {
  21. margin-left:160px;
  22. /*float:left;*/
  23. font-size:16px;
  24. text-align:left;
  25. /*width: 675px;*/
  26. }
  27.  
  28. div.clear
  29. {
  30. clear: both;
  31. }
  32.  
  33.  
  34. div.lista_img_horizontal {
  35. float:left;
  36. padding-bottom:5px; /* to jest niepotrzebne */
  37. /*padding-right:9px; to też, ponieważ ustawiony jest lewy margines w .lista_int na 160px czyli zdjęcie 150px + 10px odstęp */
  38. width:160px;
  39. }
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.