Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][HTML] problem z !DOCTYPE...
Forum PHP.pl > Forum > Przedszkole
fredman
Cala moja strona opiera sie na głownym szablonie "szablon.php" do ktorego ladowane sa odpowiednie rzeczy w zaleznosci od nacisnietego guzika itp. W szablonie po dodaniu całego nagłowka:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">


strona mi sie rozwala , znikają obrazki (niektore ...) a cala strona traci ksztalt i ucieka do prawego gornego rogu(?!) a powinna byc na srodku. jezsi przed doctypa wrzuce <html> to wszytko jest ok no ale nagłowek doctype przestaje byc nagłwkiem...czyli bez sensu... jesli zmiast zwyklego <html> wstawie:
  1. <?xml version="1.0" encoding="iso-8859-2"?>

to juz wogole pharser wywala bląd o napotkaniu stringa...
Pisalem w dreamwaver'ze i tam walidacja w XHTML 1.0 Strict (z nagłowkiem czy bez) przechodzila wiec jesli chodzi o sama walidacje to jest ok tylko z tym nagłowkiem cos sie dzieje dziwnego worriedsmiley.gif
Sokal
A XML to możesz rozwiązać przez:
  1. <?php echo '<'.'?'.'xml version="1.0" encoding="iso-8859-2"'.'?'.'>'; ?>

albo:
  1. <?='<?xml version="1.0" encoding="iso-8859-2"?>'?>

winksmiley.jpg
fredman
xml sie przyja smile.gif ale doctype dalej robi mi bledy sad.gif

a tak przy okazji to co ozancza ten zanczik: <?=
yaotzin
A przeszło ci to walidację pod W3C questionmark.gif

http://validator.w3.org/
fredman
wyrzucilo tylko bledy: brak zdefinowanego doctype'a
sapper_pierwszy
Witam, mam podobny problem.

Po kolei:

Mam plik szablonu template.php:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title><?php
  5. if(!empty($GLOBALS['TEMPLATE']['title'])){
  6. echo $GLOBALS['TEMPLATE']['title'];
  7. }
  8. ?></title>
  9. ... itd


i mam plik index.php w którym includuje template.

I pod wszystkimi przeglądarkami jest ok, tylko pod Internet Explorerem nie wyśrodkowuje strony, wydaje mi się że kasuje wszystkie marginesy.

ALE, jak wkleje do pliku index.php linijke:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

to wszystko wyświetla się ok.

Dlaczego tak jest? Nie można tego zrobić tak ładnie jakbym chciał? Czyli doctype razem z kodem html w template.php?

---------------------------------------------------------

AKTUALIZACJA

Znalazłem rozwiązanie swojego problemu. To że strona się rozwalała było wynikiem tego że doctype nie był pierwszą instrukcją w kodzie strony. Przed doctypem wstawiał się niewidzialny znak, w wyniku czego wszystko się rozwalało. Problem dotyczy chyba tylko kodowania utf-8.

A rozwiązanie jest następujące. We wszystkich includowanych plikach należy wyłączyć sygnaturę Unicode (BOM). W dreamweaverze opcja Modyfikuj -> Właściowści strony -> Tytuł/Kodowanie.
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.