Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

XHMTL, PHP und CSS Problem

0 views
Skip to first unread message

Matthias Braun

unread,
Jan 30, 2010, 6:35:25 PM1/30/10
to
Hilfe!

Ich baue mit PHP eine simple XHMTL Page und gebrauche dazu auch CSS:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-Language" content="en-us" />
<title>Portal login</title>

(...)

Der Output ist syntaktisch korrekt, was mir auch der W3-Validator
best�titg. Wenn ich das PHP-Skript aufrufe, wird die CSS Datei
ignoriert, nicht jedoch, wenn ich die Seite lokal speicher und dann im
Browser aufrufe.

Lasse ich die folgenden beiden Zeilen weg:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

funktioniert alles normal, aber damit verletzte ich den XHTML Standard,
was mir auch der W3-Validator best�tigt.

Wer wei� Rat?

Merci,

Matthias

Andreas Hecht

unread,
Jan 30, 2010, 7:47:26 PM1/30/10
to
Am 31.01.2010 00:35, schrieb Matthias Braun:

> Ich baue mit PHP eine simple XHMTL Page und gebrauche dazu auch CSS:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
> <head>
> <meta http-equiv="Content-type" content="text/html; charset=UTF-8" />
> <meta http-equiv="Content-Language" content="en-us" />
> <title>Portal login</title>
>
> (...)

Ich kann da nirgends CSS entdecken -- oder hab ich was �bersehen?

mfg,
Andreas

Matthias Braun

unread,
Jan 31, 2010, 3:33:13 AM1/31/10
to Andreas Hecht
Sorry,

good point - war sp�t gestern Die entscheidene Zeile fehlte.

Matthias

Andreas Hecht wrote:
> Am 31.01.2010 00:35, schrieb Matthias Braun:
>
>> Ich baue mit PHP eine simple XHMTL Page und gebrauche dazu auch CSS:
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
>> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
>> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
>> <head>
>> <meta http-equiv="Content-type" content="text/html; charset=UTF-8" />
>> <meta http-equiv="Content-Language" content="en-us" />
>> <title>Portal login</title>

<link href="portal.css" rel="stylesheet" type="text/css"></link>

Matthias Braun

unread,
Jan 31, 2010, 3:34:14 AM1/31/10
to
Sorry,

hatte den CSS-Link vergessen.

Matthias

Matthias Braun wrote:
> Hilfe!
>
> Ich baue mit PHP eine simple XHMTL Page und gebrauche dazu auch CSS:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
> <head>
> <meta http-equiv="Content-type" content="text/html; charset=UTF-8" />
> <meta http-equiv="Content-Language" content="en-us" />
> <title>Portal login</title>

> <link href="portal.css" rel="stylesheet" type="text/css"></link>
>

Niels Braczek

unread,
Jan 31, 2010, 4:23:39 AM1/31/10
to
Matthias Braun schrieb:

>> Wer weiß Rat?

Schalte deine Fehlererkennung ein.

error_reporting( E_ALL );
ini_set( 'display_errors', 1 );

MfG
Niels

--
| http://www.kolleg.de · Das Portal der Kollegs in Deutschland |
| http://www.bsds.de · BSDS Braczek Software- und DatenSysteme |
| Webdesign · Webhosting · e-Commerce · Joomla! Content Management |
------------------------------------------------------------------

Andreas Hecht

unread,
Jan 31, 2010, 5:42:37 AM1/31/10
to
Am 31.01.2010 09:33, schrieb Matthias Braun:
> <link href="portal.css" rel="stylesheet" type="text/css"></link>

Zwar ist rein syntaktisch an der Zeile nix falsch, aber laut w3 ist
link ein "self-closing tag". Eigentlich sollte es also hei�en:

<link href="portal.css" rel="stylesheet" type="text/css" />

Ich w�rde au�erdem versuchen, den Pfad zum CSS mal probehalber absolut
(in Bezug auf das Document Root) anzugeben.

mfg,
Andreas

Matthias Braun

unread,
Jan 31, 2010, 8:40:51 AM1/31/10
to Andreas Hecht
Andreas,

Leider immer dasselbe Ergebnis. Das Ergebnis lautet:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-Language" content="en-us" />
<title>Portal login</title>

<link href="http://localhost/portal.css" rel="stylesheet"
type="text/css" />


Wenn ich die ersten beiden Zeilen vor "<html xmlns..." weglassen, wird
der Stylesheet angewendet, ansonsten nicht. Einziger Unterschied: wenn
ich die Webseite lokal speicher, wird das Stylesheet auch ignoriert.

Das Einschalten von error_reporting( E_ALL ); bringt leider auch nichts.
Auch das CSS-Stylesheet selber ist laut CSS-Validator korrekt.

Danke,

Matthias

Hadanite Marasek

unread,
Jan 31, 2010, 1:55:12 PM1/31/10
to
Matthias Braun schrieb:

> Andreas,
>
> Leider immer dasselbe Ergebnis. Das Ergebnis lautet:
>
> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
> <head>
> <meta http-equiv="Content-type" content="text/html; charset=UTF-8" />
> <meta http-equiv="Content-Language" content="en-us" />
> <title>Portal login</title>
> <link href="http://localhost/portal.css" rel="stylesheet"
> type="text/css" />
>
>
> Wenn ich die ersten beiden Zeilen vor "<html xmlns..." weglassen, wird
> der Stylesheet angewendet, ansonsten nicht. Einziger Unterschied: wenn
> ich die Webseite lokal speicher, wird das Stylesheet auch ignoriert.
>
> Das Einschalten von error_reporting( E_ALL ); bringt leider auch nichts.
> Auch das CSS-Stylesheet selber ist laut CSS-Validator korrekt.

Hmm, was hast Du denn im Content-Type-Header vom Server stehen? Im
http-equiv steht text/html, was eigentlich falsch ist, da Du XHTML
auslieferst. Gut m�glich, dass der Browser lokal in einem anderen Modus
l�uft als remote.

XHTML ist meiner Erfahrung nach eine eklige Sache, vor allem wenn man's
richtig machen will, da die Browser gar nicht damit rechnen, dass man es
richtig macht. Und das Zeug mit offenen und geschlossenen Tags macht die
Sache richtig spassig, wenn man das XML automatisch erstellen m�chte.
Was offen und geschlossen sein muss, erf�hrt man ja eigentlich aus der
Doctype, aber die muss man erst mal parsen.

Als ich das letzte Mal damit rumgespielt habe (vor Weihnachten), hatte
das W3C zudem dem IE den Zugriff auf die Doctype verboten, was das Teil
nat�rlich nicht korrekt fehlerbehandelt hat.

Gute Ans�tze von Vollidioten umgesetzt, anders kann man es nicht sagen.

Andreas Hecht

unread,
Jan 31, 2010, 6:11:21 PM1/31/10
to
Am 31.01.2010 14:40, schrieb Matthias Braun:
> Wenn ich die ersten beiden Zeilen vor "<html xmlns..." weglassen, wird
> der Stylesheet angewendet, ansonsten nicht.
Also offenbar dann, wenn der Browser im Quirks Mode ist...
Ist der Fehler abh�ngig vom Browser?

> Einziger Unterschied: wenn
> ich die Webseite lokal speicher, wird das Stylesheet auch ignoriert.

Wenn das so ist und dort ein kompletter URL drinsteht, dann w�re das
ein Zeichen daf�r, dass dein CSS-File unter diesem URL offenbar nicht
erreichbar ist.

> Das Einschalten von error_reporting( E_ALL ); bringt leider auch nichts.

Am PHP wird's wohl nicht liegen, die Zeile ist ja im Output offenbar
drin. Sieh mal mit 'nem Debugger (z.B. Firebug) nach, ob �berhaupt
versucht wird, die CSS-Datei vom Server zu holen -- und, falls ja, mit
welchem Ergebnis.

mfg,
Andreas

0 new messages