gechger
Goto Top

W3C Optimierung für Firefox

Der Firefox arbeitet ja streng W3C Konform. Ich weiss aber nicht, welche Deklaration im Header stehen muß

Hallo Forum,

standardmäßig entwickle ich meine Webseiten im IE. Zur Kontrolle checke ich die Seiten auch im Mozilla Firefox (aktuell Version 3.5).
Da die Seiten stellenweise unterschiedlich interpretiert werden, habe ich durch Internet Suche erfahren, daß die W3C Deklaration im Header einen wichtigen Einfluß hat.

Beispiel:
<!ENTITY % HTML.Version "-//W3C//DTD HTML 4.01 Frameset//EN"  
  -- Typical usage:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"  
            "http://www.w3.org/TR/html4/frameset.dtd">  
<html>
<head>
<title>MobilZeit WebTool</title>
<style type="text/css">  
.block {margin-left:8cm;}

</style>
Mit dieser Deklaration wird der style type margin-left im Mozilla ausgeführt. Mit dieser nicht:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">  

Da ich aber noch weitere Unterschiede in der Interpretation IE zu Mozilla habe, möchte ich gerne wissen, was alles W3C konform deklariert werden muß, damit Mozilla alles so macht, wie ich es erwarte. Zum Beispiel verwendet Mozilla nicht meine gewünschte Schriftart, sondern stellt alles in Times New Roman dar.

<body  bgcolor="#E9E9E9">  
<font face="Verdana, Arial, Tahoma, Sans Serif"  font color = "#595959">  

<table height="50"  width="996" >  
<tr >
<td align="center" width="13.5%" >  
</td>
<td align="left" width="86.5%"  >  
<img src="grafik/webtool.jpg" alt="" border="0" width="840" height="110">  
</td>
</tr>
</table>
Vielen Dank für jede Idee.

Schöne Grüße
Christof

Content-ID: 122237

Url: https://administrator.de/contentid/122237

Ausgedruckt am: 22.11.2024 um 05:11 Uhr

Supermax
Supermax 08.08.2009 um 09:23:05 Uhr
Goto Top
Du solltest diese DOCTYPE-Deklaration verwenden:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
, ohne den 2. Teil machen einige Browser anscheinend Probleme.

Das <font>-Tag ist mittlerweile als veraltet gekennzeichnet, dessen Funktion läßt sich in CSS besser erreichen, indem das betreffende Element entweder inline mit
style="font-family:Verdana,Arial,Tahoma,sans-serif;color:#59595" 
oder über eine CSS-Definition im <style>-Bereich oder in einer externen CSS-Datei formatiert wird.
gechger
gechger 11.08.2009 um 10:43:19 Uhr
Goto Top
Hallo Supermax,

danke für Deine Information. Sie war hilfreich.
Ich beginne jetzt, die kompletten Seiten auf CSS umzustellen. Dabei bin ich aber auf ein weiteres Problem gestossen:

Ich habe in einer Tabelle einzelne Zellen als Link-Buttons erstellt mittels dieses Scripts:
<a href="index.php" >  
<td background="buttons/button.jpg" border="0" margin:0px; style="border-collapse: collapse;" style="empty-cells: collapse;" style="border-style: outset;"  width="125" height="40" align="center" style="CURSOR:pointer;"><font size ="-1"  title="Logout"><b>Logout</b></font>  
</td></a>

Der IE machts perfekt, Mozilla erkennt den Link nicht.
Wie muß es gemacht werden, damit auch der Mozilla den Link erkennt?

Das Ganze muß ohne Java funktionieren!

Schöne Grüße
Christof
Supermax
Supermax 11.08.2009 um 10:53:12 Uhr
Goto Top
Das <tr>-Tag darf laut Standard nur <td> oder <th> als Kindeelemente enthalten, korrekt wäre daher:
<td border="0" style="background-image:url(buttons/button.jpg);font-size:small;margin:0px; border-collapse: collapse;empty-cells: collapse;border-style: outset;CURSOR:pointer;" width="125" height="40" align="center"><a href="index.php"><b>Logout</b></a></td> 

Wenn du schon auf CSS umsteigst, solltest du veraltete Attribute wie "background" durch die CSS-Anweisung "background-image:url(buttons/button.jpg);" und das <font>-Tag durch etwa "font-size:small;" ersetzen; diese beiden Angaben kannst du im style-Attribut des <td>-Tags notieren.

Außerdem gibt es nur 1 style-Attribut pro Tag, statt style="anweisung1" style="angabe2" mußt du also schreiben style="angabe1; angabe2;..."
gechger
gechger 11.08.2009 um 11:39:07 Uhr
Goto Top
stimmt, dann funktioniert es, aber ich bekomme den Text mit diesem unerwünschten Link-Unterstrich.
Das die ganze Zelle als Link dient, bekomme ich mit der Ergänzung display:block; hin.
Aber wie bekomme ich den Link-Unterstrich weg?
Supermax
Supermax 11.08.2009 um 11:51:58 Uhr
Goto Top
mit <a style="text-decoration:none;">....

Besser wäre es aber, ein externes Stylesheet zu verwenden (oder Styles zentral in einem <style>-Bereich im Seitenkopf zu definieren), dann kannst du auch das Anzeigeverhalten der Links beim Anklicken oder Überfahren mit der Maus ("hover") definieren.
gechger
gechger 11.08.2009 um 12:07:38 Uhr
Goto Top
ein externes Stylesheet baue ich gerade auf. Aber wenn ich in meine formate.css diesen Eintrag definiere

.button {style="background-image:url(buttons/button.jpg);font-size:small;margin:0px; border-collapse: collapse;empty-cells: collapse;border-style: outset;CURSOR:pointer; display:block; vertical-align:middle; text-decoration:none;" }

und dann versuche, die Tabellenzelle damit zu formatieren,

<code html>
<table>
<tr width="996">
<td width="135"></td>

<td width="125" height="40" align="center" border="0">
<div class="button">
<a href="index.php">Logout</a></td></div>

<tr>


bekomme ich kein Ergebnis. Wo muß die Zuweisung hinterlegt werden? Nehme ich besser <div> oder <p> oder kann die Klasse direkt in <td> Tag zugewiesen werden?
Supermax
Supermax 11.08.2009 um 12:18:25 Uhr
Goto Top
so wird das korrekt notiert:
.button {
   background-image:url(buttons/button.jpg);
   font-size:small;
   margin:0px;
   border-collapse: collapse;
   empty-cells: collapse;
   border-style: outset;
   CURSOR:pointer; 
   display:block; 
   vertical-align:middle; 
   text-decoration:none;
}

Ich empfehle dir mal die Lektüre von http://de.selfhtml.org/css/formate/einbinden.htm oder http://www.css4you.de/wscss/index.html
gechger
gechger 11.08.2009 um 12:47:35 Uhr
Goto Top
face-smile

durch selfhtml arbeit ich mich seit Tagen durch. css4you ist auch recht übersichtlich.

Was ich aber in beiden Tutorials nicht gefunden habe ist, wie ich aus einer zentralen css Datei die Zuordnung zu einer Tabellen Zelle hinkriege.

Im body habe ich Zuweisungen mittels <div class="grafik"> </div> hinbekommen.
Nur meine Zelle weigert sich, die hinterlegte Formatierung anzunehmen.

EDIT:
Habs gefunden:

<a class="button" href="index.php">Logout</a></td>

zwischen dem a und dem href wird die Zuweisung durchgeführt.

Danke für Deine Hilfe
Supermax
Supermax 11.08.2009 um 15:34:48 Uhr
Goto Top
Du kannst jedem Element mit dem Attribut "class" eine definierte CSS-Klasse zuweisen bzw. mit "style" einen sog. "inline-Style".