PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : HTML-Lehrbuch falsch??


Ash-Zayr
2008-08-20, 20:53:20
Hallo

Ich habe mir ein Lehrbuch gekauft, mittels dem man Schritt für Schritt einfach zu einer ersten Website kommen soll. Es beginnt mit jeder Menge HTML und überfliegt auch gern undokumentiert einige Dinge, die dann aber in der zu pflegenden Beispiel-Datei auftauchen.

Ich kralle mich nun an einem Beispiel recht weit vorn fest, werde das Buch aber umgehend umtauschen als "sachlicher Müll", wenn ihr mir nicht "beweisen" könnt, dass der Fehler bei mir liegt.

Es geht eigentlich nur darum, die Formatierung für Fett, kursiv und das Hochstellen von Zahlen zu lernen. In der Box im Buch, die dann aber das Ergebnis der HTML Datei im Browser zeigt, erfolgte ein Zeilenumbruch, den ich per Datei, die dem zugrunde liegen soll, nicht nachvollziehen und in keiner Konstellation selbst erreichen kann. Bei mir wird der gesamte Text in einer langen Zeile angezeigt.

Hier das Bild dazu:
http://home.arcor.de/m.kaschubs/Scannen0454.jpg

Mit der Datei unter "5" Zeichen für Zeichen agetippt, kommt man nicht zu Bild "6". Bei mir ist es eine lange Zeile.

Ash

mapel110
2008-08-20, 21:00:53
Da ist auch kein Zeilenumbruch im Code, also ist die Anzeige bei dir korrekt und im Beispiel "falsch". Es könnte sein, dass der Browser nur so breit war. Aber gut, das ist eher unwahrscheinlich. ^^

Ash-Zayr
2008-08-20, 21:04:58
Wie ist das denn in der HTML-Welt. Wenn ich im Editor in der Datei selbst "return" oder "shift+return" verwende, hat dies keinerlei Auswirkung auf Darstellung und Formatierung in der fertigen Browser Ansicht? Wieso z.B. sind denn die Dinge unter <p> in der Beispiel-Datei vorgerückt? Muss ich da mit TABS oder mit Leerzeichen auffüllen? Oder hätte man alles auch gleich links an der Null-Linie sozusagen starten lassen können?

Grestorn
2008-08-20, 21:07:11
Der Zeilenumbruch im Buch ist nicht erzwungen noch will das Buch behaupten, dass da immer einer wäre, sondern er ist einfach der "Seitenbreite" des Beispiels geschuldet.

Return ist in HTML auch nur ein "Whitespace", hat also im Quellcode die selbe Bedeutung wie ein Blank oder Tab. Whitespaces werden in der Ausgabe immer zu EINEM festen Abstand (eben ein Leerschritt) umgesetzt, egal wie viele Whitespaces im Quellcode aufeinander folgen.

Will man einen Zeilenumbruch erzwingen, so muss man die Tags <br/> oder <p>...</p> benutzen.

Die_Allianz
2008-08-20, 21:08:00
Wie ist das denn in der HTML-Welt. Wenn ich im Editor in der Datei selbst "return" oder "shift+return" verwende, hat dies keinerlei Auswirkung auf Darstellung und Formatierung in der fertigen Browser Ansicht? Wieso z.B. sind denn die Dinge unter <p> in der Beispiel-Datei vorgerückt? Muss ich da mit TABS oder mit Leerzeichen auffüllen? Oder hätte man alles auch gleich links an der Null-Linie sozusagen starten lassen können?

die einrückerei dient nur der übersicht und hat keine funktion! du kannst auch alles am stück schreiben, ist dann eben schwer leserlich, funktioniert aber trotzdem ;)

Nase
2008-08-20, 22:55:30
Tausch das Buch um. Wenn ein Autor es noch nicht einmal fertigbringt, solch ein simples Beispiel fehlerfrei abzudrucken und man diesen Fehler sogar auch noch in der Beispielansicht sofort erkennt, dann kann das restliche Buch auch nicht mehr besser werden.

DanMan
2008-08-20, 23:02:24
Tausch das Buch um. Wenn ein Autor es noch nicht einmal fertigbringt, solch ein simples Beispiel fehlerfrei abzudrucken und man diesen Fehler sogar auch noch in der Beispielansicht sofort erkennt, dann kann das restliche Buch auch nicht mehr besser werden.
Fehler? Was für Fehler? Stimmt doch alles. Der Umbruch im Ausgabebeispiel ist wohl aus Platzgründen so. Verwirrend, ja.

Nase
2008-08-20, 23:08:24
Fehler? Was für Fehler? Stimmt doch alles. Der Umbruch im Ausgabebeispiel ist wohl aus Platzgründen so. Verwirrend, ja.
<sup> ist zweimal geöffnet worden.

Gast
2008-08-20, 23:15:40
Daher ist der "." ja auch 2x hochgestellt ^^

Ash-Zayr
2008-08-21, 00:07:35
<sup> ist zweimal geöffnet worden.

Das fiel selbst mir als Anfänger auf, dass das Tag zweimal geöffnet wurde...;) Dafür steht der Punkt halt auch mit oben.....faszinierend...;)

RattuS
2008-08-21, 00:15:51
Nix Fehler. Es ist offensichtlich, dass der Zeilenumbruch in der Beispielausgabe nichts mit dem HTML-Code zu tun hat, da die Trennung sowieso nicht identisch wäre (im HTML Zeilenumbruch nach "und", bei der Ausgabe nach "kursiver").

Ash-Zayr
2008-08-21, 12:47:13
Hier die nächste Stelle, bei der ich ins Stocken komme. Die folgende Datei soll beide Male die Umlaute und das Eurozeichen im Browser korrekt darstellen.

<html>
<head>
<title>Sonderzeichen</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<p>
ÄäÖöÜü €
</p>
<p>
&Auml; &auml; &ouml; &Ouml; &uuml; &Uuml; &euro; <p>
</body>
</html>



Sowohl in Firefox und im IE ist die oberste Reihe jedoch nicht darstellbar; es kommen da nur komische Sonderzeichen. Das Buch gibt einen lapidaren Hinweis, man müsste eventuell den Zeichensatz im Browser ändern...
Ja, aber welchen Satz zu welchem? Ich denke, durch die Anweisung in der Datei wird sozusagen UTF-8 erzwungen, auch wenn im Browser als Standard westlich ISO 8859-1 oder ISO windows verwendet wird?

Die beiden Umlautreihen werden erst korrekt dargestellt, wenn ich die Datei im Browser betrachte und dann manuell per "Ansicht" eine der ISO Normen auswähle....aber das bleibt nicht dauerhaft...beim nächsten Aufruf ist wieder die oberste Reihe nur Murks.

Wo ist denn nun hier der Haken bei der Sachen, und welche Kodierung hat man denn üblicherweise im Browser definiert? Im Firefox finde ich auch die allgemeingültige Festlegung der Codierung, im IE nicht.

Ash-Zayr

Grestorn
2008-08-21, 12:51:47
Es hängt vorallem davon ab, ob der Editor, mit dem Du die HTML Datei erzeugst, auch korrektes UTF-8 Format schreiben kann.

Welchen Editor verwendest Du denn? Stell sicher, dass der auch UTF-8 schreibt.

Ash-Zayr
2008-08-21, 13:05:40
Prima Tipp...vielen Dank. Ich habe die Datei einfach mal mit Copy&Paste in den Editor "NoteTab Light" kopiert und die Datei damit überspeichert. Nun klappt es. UTF-8 wird durch die Datei vorgegeben, egal was im Browser generell anliegt. Erstellt hatte ich die Datei im Windows eigenen Editor.

Das Buch weist zwar auf Notepad Light hin, nennt aber den Win-Editor als reguläre Alternative. Warum aber zum Geier kommt dann im gleichen Buch gleich ein Beispiel, bei dem es dann aber offensichtlich gar nicht unerheblich ist, mit welchem Editor eine Datei erstellt wird, weil es sonst zu Darstellungsfehlern kommt? Und dass ein Editor überhaupt derartigen Eigeneinfluss auf die HTML-Datei nimmt?

Was für ein mieses Buch.....

Ash-Zayr

PHuV
2008-08-21, 13:27:47
Prima Tipp...vielen Dank. Ich habe die Datei einfach mal mit Copy&Paste in den Editor "NoteTab Light" kopiert und die Datei damit überspeichert. Nun klappt es. UTF-8 wird durch die Datei vorgegeben, egal was im Browser generell anliegt. Erstellt hatte ich die Datei im Windows eigenen Editor.

Das Buch weist zwar auf Notepad Light hin, nennt aber den Win-Editor als reguläre Alternative. Warum aber zum Geier kommt dann im gleichen Buch gleich ein Beispiel, bei dem es dann aber offensichtlich gar nicht unerheblich ist, mit welchem Editor eine Datei erstellt wird, weil es sonst zu Darstellungsfehlern kommt? Und dass ein Editor überhaupt derartigen Eigeneinfluss auf die HTML-Datei nimmt?

Was für ein mieses Buch.....

Ash-Zayr

Man findet jedoch in vielen Büchern diese Fehler, da ist dieses Buch keine Ausnahme. Deshalb habe ich auch meistens immer mehrere Bücher, weil eines meistens nicht ausreicht. Viele Autoren scheinen auch ihre Beispiele nicht richtig zu überprüfen, oder haben eine andere Umgebung, aktualisieren nur teilweise etc., was dann den Leser ziemlich unvorbereitet trifft. Für jeden so einen Fehler bei den Büchern einen €, und ich wäre heute reich.:ugly:

Gast
2008-08-21, 14:12:20
Man findet jedoch in vielen Büchern diese Fehler, da ist dieses Buch keine Ausnahme. Deshalb habe ich auch meistens immer mehrere Bücher, weil eines meistens nicht ausreicht. Viele Autoren scheinen auch ihre Beispiele nicht richtig zu überprüfen, oder haben eine andere Umgebung, aktualisieren nur teilweise etc., was dann den Leser ziemlich unvorbereitet trifft. Für jeden so einen Fehler bei den Büchern einen €, und ich wäre heute reich.:ugly:

Dann musst du wohl andere Bücher lesen ... bei Donald Knuth und "The Art of Computer Programming" bekommst dafür einen Binären Doller was meines wissens nach in Echtgeld dem Betrag von 2,56$ enspricht !

Gast
2008-08-21, 14:31:04
Ich denke, durch die Anweisung in der Datei wird sozusagen UTF-8 erzwungen, auch wenn im Browser als Standard westlich ISO 8859-1 oder ISO windows verwendet wird?


http://httpd.apache.org/docs/2.2/mod/core.html#adddefaultcharset
Beim Apache erzwingst du es mit AddDefaultCharset bzw. AddCharset
Das fügt einen HTTP Charset: Header hinzu, bevor überhaupt der eigentliche Inhalt kommt, also deine .html Datei.
Browser fallen auf den <meta> tag nur zurück wenn der HTTP Content: Header fehlt.

DanMan
2008-08-22, 17:19:08
<sup> ist zweimal geöffnet worden.
Stimmt, jetzt wo du es sagst.

darph
2008-08-23, 10:26:51
Was für ein mieses Buch.....

Ash-Zayr
Kannst du nicht im Editor unter Datei->Speichern unter angeben, daß du Unicode willst?

RattuS
2008-08-23, 21:40:10
Das Buch weist zwar auf Notepad Light hin, nennt aber den Win-Editor als reguläre Alternative. Warum aber zum Geier kommt dann im gleichen Buch gleich ein Beispiel, bei dem es dann aber offensichtlich gar nicht unerheblich ist, mit welchem Editor eine Datei erstellt wird, weil es sonst zu Darstellungsfehlern kommt? Und dass ein Editor überhaupt derartigen Eigeneinfluss auf die HTML-Datei nimmt?

Was für ein mieses Buch.....
Normalerweise gibt es immer eine spezifische Zielgruppe bei Fachbüchern. Evtl. wurde vorausgesetzt, dass du den Unterschied zwischen ASCII und Unicode erkennst und passend anwendest.

Matthias2x
2008-08-26, 16:52:02
http://httpd.apache.org/docs/2.2/mod/core.html#adddefaultcharset
Beim Apache erzwingst du es mit AddDefaultCharset bzw. AddCharset
Das fügt einen HTTP Charset: Header hinzu, bevor überhaupt der eigentliche Inhalt kommt, also deine .html Datei.
Browser fallen auf den <meta> tag nur zurück wenn der HTTP Content: Header fehlt.


Der TS lernt gerade HTML und wird ganz sicher nichts mit Apache-Direktiven anzufangen wissen, zumal er, wenn er nicht einen Root-Server sein eigen nennt, kaum einfluß darauf haben dürfte, wie die Webserver-Software konfiguriert ist.

@Ash-Zayr,
du kannst auch mit dem Windows-Notepad in der richtigen Codierung speichern, dazu einfach auf "Speichern unter..." statt "Speichern" gehen und dort ganz unten im Dropdownfeld "Codierung" die gewünschte auswählen und schon klappt das ganze.