Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [html/css/php] IE przesuwa tresc przy inkludowaniu
Forum PHP.pl > Forum > Przedszkole
kazag
Mam stronę zapisaną jako .html i działa ładnie, tak samo pod IE tak samo pod FF, K-Meleonem, Operą. Na dodatek się waliduje.

Zapisuję sobie tę stronę do .php. Robie sobie taki myk, że np. menu strony chce includować z osobnego pliku np. menu.php. Wszędzie ładnie działa aż tu nagle pod IE się ry.pie. Cały includowany blok przesuwa mi o x pikseli (na oko to gdzieś ze 20-30) w dół, tak, jakby coś nad tym miało być?
Kiedy np. chce includować sobie metatagi i mam je w osobnym pliku, to przesuwa mi całą treść strony o x px w dół.

Ktoś ma pojęcie, od czego to zależy?

Co mam zrobić? Pisać funkcję wyświetlające menu i includować bibliotekę a potem wyświetlać? Szlag mnie już trafia na to ie.

Nie dołączam plików bo mniemam, że kod html i css jest bez znaczenia, skoro zapisane jako html działa poprawnie, jako .php też do momentu includowania... Mam ustawione doctype rzecz jasna.
suchy1
a nie lepiej napisac styl pod IE ?

  1. <!--[if gte IE]>
  2. <script defer type="text/javascript" src="pngfix.js"></script>
  3. <link rel="stylesheet" href="css/styleIE.css" />
  4. <![endif]-->


pngfix.js
  1. /*
  2.  
  3. Correctly handle PNG transparency in Win IE 5.5 & 6.
  4. <a href="http://homepage.ntlworld.com/bobosola" target="_blank">http://homepage.ntlworld.com/bobosola</a>. Updated 18-Jan-2006.
  5.  
  6. Use in <HEAD> with DEFER keyword wrapped in conditional comments:
  7. <!--[if lt IE 7]>
  8. <script defer type="text/javascript" src="pngfix.js"></script>
  9. <![endif]-->
  10.  
  11. */
  12.  
  13. var arVersion = navigator.appVersion.split("MSIE")
  14. var version = parseFloat(arVersion[1])
  15.  
  16. if ((version >= 5.5) && (document.body.filters))
  17. {
  18.   for(var i=0; i<document.images.length; i++)
  19.   {
  20.      var img = document.images[i]
  21.      var imgName = img.src.toUpperCase()
  22.      if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
  23.      {
  24.         var imgID = (img.id) ? "id='" + img.id + "' " : ""
  25.         var imgClass = (img.className) ? "class='" + img.className + "' " : ""
  26.         var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
  27.         var imgStyle = "display:inline-block;" + img.style.cssText
  28.         if (img.align == "left") imgStyle = "float:left;" + imgStyle
  29.         if (img.align == "right") imgStyle = "float:right;" + imgStyle
  30.         if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle
  31.         var strNewHTML = "<span " + imgID + imgClass + imgTitle
  32.         + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
  33.         + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
  34.         + "(src=\'" + img.src + "', sizingMethod='scale');\"></span>"
  35.         img.outerHTML = strNewHTML
  36.         i = i-1
  37.      }
  38.   }
  39. }
Spawnm
wszystkie pliki muszą być jako utf-8 bez BOM.
jak dasz samo utf-8 to ci zrobi margin-top.
kazag
suchy - nie rozumiem po co mi to piszesz, napisałem wyraźnie - kod css i html jest poprawny pod IE i FF i waliduje się nawet, wiec nie mam problemu z css.

spawnm - sprawdzam, a możesz mi wytłumaczyć, tak na przyszłość, na czym to polega? Tzn dlaczego kodowanie znaków ma takie znaczenie?
kazag
ok, spawnm - pomogło, poszedł "pomógł". Czyli lepiej zapisywać bez BOM?

@Rafał Filipek

wiem jakiego kodu użyć, problem rozwiązał Spawnm winksmiley.jpg
Spawnm
Cytat(kazag @ 22.02.2009, 16:21:45 ) *
spawnm - sprawdzam, a możesz mi wytłumaczyć, tak na przyszłość, na czym to polega? Tzn dlaczego kodowanie znaków ma takie znaczenie?


http://pl.wikipedia.org/wiki/BOM

szukanie nie boli smile.gif
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.