Hallo,
ich lade in mein WebBrowser-Control lokale HTML Dateien, auf deren Inhalt ich kein Einfluss habe, für mich sind es einfach nur Rohdaten. Dabei geht etwas verloren, die Linien.
Das erste Bild zeigt die korrekte Darstellung.
Das zweite Bild die falsche Darstellung im WebBrowser-Control.
Der HTML-Code sieht so aus:
<!DOCTYPE html
PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">16. Reizstoff
</head>
<body>
<h2 typ="kapitel">Reizstoff</h2>
<p><b>Wirkcharakter:</b> In den Augen und im Magen-Darm-Trakt mehr oder minder starke Reizwirkung, Brechreiz,
Brechdurchfall. Beim Einatmen Hustenreiz.
</p>
<table border="0" rules="all" cellspacing="2" class="b-1111">
<thead>
<tr>
<th align="left" valign="top" colspan="2" rowspan="2" class="b-0000" linien="0mm 0mm 0mm 0mm" rand="1mm 1mm 1mm 1mm">
<p> </p>
</th>
<th align="center" valign="top" colspan="3" class="b-0001" linien="0mm 0mm 0mm 0.15mm" rand="1mm 1mm 1mm 1mm">
<p><b>Schweregrad</b></p>
</th>
</tr>
<tr>
<th align="center" valign="top" class="b-1001" linien="0.15mm 0mm 0mm 0.15mm" rand="1mm 1mm 1mm 1mm">
<p><b>leicht</b></p>
</th>
<th align="center" valign="top" class="b-1001" linien="0.15mm 0mm 0mm 0.15mm" rand="1mm 1mm 1mm 1mm">
<p><b>mittel</b></p>
</th>
<th align="center" valign="top" class="b-1001" linien="0.15mm 0mm 0mm 0.15mm" rand="1mm 1mm 1mm 1mm">
<p><b>schwer</b></p>
</th>
</tr>
</thead>
Warum gehen die Linien verloren, weis jemand Rat?
Ich vermute mal weil
Zwar table-Tag hat rules=all, aber durch die fehlenden css-Definitionen und ungültigen Attribute kann der Browser verrück spielen, man könnte vielleicht damit das Fehlen der Zwiachenlinien erklären.
**:::
Aber wie so können es die Browser darstellen und das WebBrowser-Control nicht?
Reines Glück.
Du kannst nur nach Elementen fordern, die dem Standard entsprechen. "rand" und "linien" ist definitiv ganz ganz weit weg von irgendeinem Standard.
Ich mach jetzt schon ein paar Jahre HTML aber "rand" und "linien" hab ich ausnahmslos noch nie gesehen.
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
... ergänzend dazu: <h2 typ= ... typ ist IMHO auch kein gültiges Attribut und Angaben in mm auch nicht, ich kenne nur px oder em. Ich glaube da hat jemand HTML mit XML-Dokument verwechselt, aber selbst xml braucht xsl/xslt um im Browser vernünftig dargestellt zu werden.
**:::
Ich habe jetzt eine Lösung gefunden.
Im head-tag einen weiteren Meta-Tag hinzu fügen:
<meta content="IE=8" http-equiv="X-UA-Compatible">
Wo bei "IE=8" jeder Wert > 8 möglich ist.
Wahrscheinlich alles weit entfernt von Perfekt, aber hier genügt eine hinreichende Lösung.
Danke + Grüße
J