Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   XHTML: <Div>-Element – Ich dreh am Rad (https://www.delphipraxis.net/159042-xhtml-div-element-%96-ich-dreh-am-rad.html)

Namenloser 11. Mär 2011 16:20

XHTML: <Div>-Element – Ich dreh am Rad
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo, ich hoffe mir kann jemand erklären, was da abgeht:

Folgender XHTML-Code:
XML-Code:
<?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="de">
  <head>
    <title>Sortieralgorithmen</title>
    <link rel="stylesheet" href="main.css" type="text/css" />
  </head>
  <body>
  <div class="legend">
    <div class="box sorted" /><span>Sortiert</span>
    <div class="box selected" /><span>Selektiert</span>
    <div class="box exchanged" /><span>Vertauscht</span>
  </div>
  </body>
</html>
in Verbindung mit dieser CSS-Datei:
Code:
.exchanged {
  background: #e88;
}

.selected {
  background: #88e;
}

.sorted {
  background: #8e8;
}

.box {
  width: 1em;
  height: 1em;
  /*display: inline-block; Soll es später mal werden, aber es funktioniert ohne genau so wenig wie mit*/
}
Erzeugt diese Ausgabe:
Anhang 33574

Der Text steht IN dem <Div>, statt dahinter!

Also mal mit FireBug unter die Haube geschaut, und jetzt kommt’s: Anscheinend interpretiert der Firefox 4.0RC1 den XHTML-Code als
Code:
<div class="legend">
    <div class="box sorted"><span>Sortiert</span>
    <div class="box selected"><span>Selektiert</span>
    <div class="box exchanged"><span>Vertauscht</span>
  </div>
 
</div></div></div> <----------- Da
(das gibt er jedenfalls aus, wenn man alles markiert und den markierten Quelltext anzeigen lässt).
In Chrome passiert das gleiche. Der W3C-Validator meint aber, die Datei wäre valides XHTML 1.0 Strict.

Was zur Hölle mache ich denn falsch?:wall:

Danke im Voraus.

s.h.a.r.k 11. Mär 2011 16:22

AW: XHTML: <Div>-Element – Ich dreh am Rad
 
Probier mal folgendes:
Code:
<!-- nicht das hier -->
<div />

<!-- sondern -->
<div></div>
Hatte glaub auch schon irgendwo das Problem. Und seit dem verwende ich leere div-Elemente nur noch so.

Namenloser 11. Mär 2011 16:27

AW: XHTML: <Div>-Element – Ich dreh am Rad
 
Danke für die schnelle Hilfe. Das hatte ich eben eigentlich schon probiert, da ging es scheinbar nicht, jetzt geht es aber...

Ich verstehe aber trotzdem nicht warum.
Delphi-Quellcode:
<div />
und
Delphi-Quellcode:
<div></div>
sind doch äquivalent!

Meflin 11. Mär 2011 16:30

AW: XHTML: <Div>-Element – Ich dreh am Rad
 
Könnte ein Content-Type Problem sein, siehe auch hier.

Namenloser 11. Mär 2011 16:32

AW: XHTML: <Div>-Element – Ich dreh am Rad
 
Na toll, das heißt, ich kann es nicht beheben ohne an den Webserver-Konfiguration herumzufummeln? Das kann ja wohl nicht wahr sein...

Meflin 11. Mär 2011 16:34

AW: XHTML: <Div>-Element – Ich dreh am Rad
 
Zitat:

Zitat von NamenLozer (Beitrag 1087775)
Na toll, das heißt, ich kann es nicht beheben ohne an den Webserver-Konfiguration herumzufummeln? Das kann ja wohl nicht wahr sein...

Vor allem ist ein echter XHTML-Content-Type schon allein wegen IE-Inkompatibilität nicht praktikabel, und bei aller IE-Basherei, will man das ja in der Regel dann doch nicht...

s.h.a.r.k 11. Mär 2011 16:37

AW: XHTML: <Div>-Element – Ich dreh am Rad
 
Zitat:

Zitat von NamenLozer (Beitrag 1087773)
Ich verstehe aber trotzdem nicht warum.
Delphi-Quellcode:
<div />
und
Delphi-Quellcode:
<div></div>
sind doch äquivalent!

Der Theorie bzw. dem Standard nach ja.

Und bzgl. dem Webbrowserproblem: ich habe gerade eine lokale index.html samt CSS-Datei angelegt und habe im FF 3.6 genau das gleiche Problem! Ergo liegt es nicht am Apache würde ich behaupten.

Namenloser 11. Mär 2011 16:44

AW: XHTML: <Div>-Element – Ich dreh am Rad
 
Zu Hause nutze ich auch gar nicht Apache, sondern lighttpd ;) Ich habe nur schnell eine vereinfachte Testseite auf meinen Webspace hochgeladen, da ich hier nicht unbedingt meinen lokalen Server entblößen möchte (wg. Google und Co.).

Das blöde ist, dass das ein Projekt für die Schule ist, was ich abgeben muss, heißt, dass muss nicht nur hier laufen, sondern nachher auch bei meiner Info-Lehrerin zu Hause an ihrem Rechner...

Da haben die Leute vom W3C, oder wer auch immer dafür zuständig ist, sich ja mal wieder einen schönen Schwachsinn ausgedacht!

[edit]
Ich glaube ich weiß jetzt, wieso z.B. Youtube Dummy-Images als Platzhalter für Icons verwendet statt <div>s oder <span>s...
[/edit]

mjustin 11. Mär 2011 18:37

AW: XHTML: <Div>-Element – Ich dreh am Rad
 
Zitat:

Zitat von Meflin (Beitrag 1087777)
Zitat:

Zitat von NamenLozer (Beitrag 1087775)
Na toll, das heißt, ich kann es nicht beheben ohne an den Webserver-Konfiguration herumzufummeln? Das kann ja wohl nicht wahr sein...

Vor allem ist ein echter XHTML-Content-Type schon allein wegen IE-Inkompatibilität nicht praktikabel, und bei aller IE-Basherei, will man das ja in der Regel dann doch nicht...

Welche Inkompatibilitäten gibt es denn noch in IE ab Version 6? In Selfhtml fand ich bei einer Recherche nur, dass bei Verwendung von transitional statt strict Probleme bestehen:

Zitat:

Dokumente, die als syntaktisch strenge (X)HTML-Variante deklariert sind, werden vom Internet Explorer 6 unter Berücksichtigung des korrekten Box-Modells dargestellt - im sogenannten "standard mode". Auf Seiten, die keine oder eine weniger strenge Deklaration aufweisen, wird das fehlerhafte Microsoft-Box-Modell angewandt, um Abwärtskompatibilität zu gewährleisten. Dieser Modus wird als "quirks mode" bezeichnet.
Das heisst, wenn man den XHTML strict Dokumenttyp verwendet, ist das Boxmodell korrekt.

(Gefunden unter http://de.selfhtml.org/css/formate/box_modell.htm)

Matze 11. Mär 2011 19:15

AW: XHTML: <Div>-Element – Ich dreh am Rad
 
Zitat:

Zitat von mjustin (Beitrag 1087795)
Zitat:

Zitat von Meflin
Vor allem ist ein echter XHTML-Content-Type schon allein wegen IE-Inkompatibilität nicht praktikabel, und bei aller IE-Basherei, will man das ja in der Regel dann doch nicht...

[...]
Das heisst, wenn man den XHTML strict Dokumenttyp verwendet, ist das Boxmodell korrekt.

Der "Doctype" ist das, was zu Beginn des HTML-Codes steht. Damit hat der IE meines Wissens keine Probleme. Meflin hat jedoch den Content-Type angesprochen. Das ist das, was z.B. per PHP-Header an den Browser gesendet wird. Bei XHMTL-Dokumenten sollte dieser z.B.
PHP-Quellcode:
header('Content-Type: application/xhtml+xml; charset=utf-8');
lauten.
Und genau das funktioniert mit dem IE nicht. Der bietet die Website dann zum Download an, soweit ich weiß.

Beim IE müsste man z.B. den Nicht-XHTML-Header
PHP-Quellcode:
header('Content-Type: text/html; charset=utf-8');
senden und der ist eigentlich nicht korrekt.

Doctype und Content-Type sind demnach 2 Paar Stiefel.
Der (X)HTML-Code ist die eine (sichtbare) Sache. Dazu gehört jedoch immer auch der (nicht direkt sichtbare) Content-Type.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:47 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz