Strict-DOCTYPE Auswirkungen auf die Abstände zwischen den Bildern
Ich habe Probleme mit meinem Bild Abstand, wenn ich umgestellt auf XHTML Strict DOCTYPE.
Des folgenden code - was nutzt Yahoo die reset-stylesheet zu töten, alle Standard-browser-Polsterung - hinterlässt eine Lücke von etwa 4 Pixel zwischen den beiden Bildern unten aber NUR wenn ich den strict-doctype. Warum ist das so?
Es ist nur ein problem in Chrome und Firefox. IE zeigt nicht an ein einziges pixel zwischen zwei Bildern.
<!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">
<head>
<link rel="stylesheet" type="text/css"
href="http://yui.yahooapis.com/2.6.0/build/reset/reset-min.css">
</head>
<body>
<div><img src="http://www.catfacts.org/cat-facts.jpg" border="0"/></div>
<div><img src="http://www.catfacts.org/cat-facts.jpg" border="0"/></div>
</body>
</html>
Du musst angemeldet sein, um einen Kommentar abzugeben.
Über die Antwort des Petrus als Beginn der folgenden behebt das problem:
Der Grund, warum dies funktioniert, ist, dass der Standard für
vertical-align
istbaseline
auf, das entspricht zum Teil dem text "über der Linie", wo die dangly bits nach unten hängen (Kleinbuchstaben g, q, etc. alle hängen unterhalb dieser Basislinie).So, um Platz zu lassen, es war verlassen 4px Platz für diese überhänge.
Hoffnung, dass Sinn gemacht.
Edit: Sehhilfe aus source-Website
(Quelle: brightlemon.com)
Mehr Informationen über das geheimnissvolle Bild Lücken können hier gefunden werden:
https://developer.mozilla.org/en/Images,_Tables,_and_Mysterious_Gaps
Mit Firebug zeigt, dass es das DIV-Element, das bewirkt, dass der Abstand, eher als das Bild.
Ich font-size: 0; für das top-div und die Lücke verschwindet.
(Seltsam, es ist/sollte eine geerbte font-size:0; aus dem Körper in die reset-min.css also nicht sicher, warum dies funktioniert.)
In strict doctypes, Bild wird ein inline-element, und verhält sich wie text. Daher müssen Sie ändern Ihre
vertical-align
Eigenschaft, oder ändern Sie die display-Eigenschaft aufdisplay: block
oderdisplay:inline-block
Versuchen, um auszuschließen, gemeinsame Fehler, die ich aus dem code-Gültigkeitsprüfung durch die Festsetzung nicht weniger als 8 Fehler bei der Validierung.
In der Regel, wenn ein browser kann nicht analysieren das Dokument im DOCTYPE angegeben, Ergebnisse werden nicht angegeben.
Es immer noch nicht funktioniert, wohlgemerkt, aber hier ist die Validierung code:
Display:inline-block Lösung, die definitiv nicht für mich arbeiten.
Den vertical-align:bottom-Lösung hat zwar funktioniert, aber mit einer Einschränkung: je nach situation, es gab Bilder, die hatte ich statt set für vertical-align:top
Wechsel zu lockere standards anstelle von strengen arbeitete für mich... hielt die IE-Formatierungen, die ich benötigte, aber beseitigt das odd-Bild-Abstände in Firefox und Chrome.
https://developer.mozilla.org/en/Gecko%27s_Almost_Standards_Mode
Verwendet die Zeile: