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
> 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
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>
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>
>
>> 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 |
------------------------------------------------------------------
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
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
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.
> 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