Seltsam border-width Verhalten in Chrom - Floating-point border-width?

Bestimmte fluid-designs, insbesondere jene mit %-Breite iFrames, scheinen verursachen einige seltsame Rundung Fehler in Chrome (ich habe version 21).

Diese Geige veranschaulicht das problem. Legen Sie die Grenze zu einem integer-pixel-Wert und die Werte erhalten Sie zurück, wenn Sie Fragen, für Sie sind floating-point-zahlen etwas kleiner als der erwartete Wert.

Versuchen die exakt gleiche code in CodePen nicht die gleichen Ergebnisse liefern, vermutlich, weil der iFrame und andere Stile, um es nicht auf die gleiche Weise.

(Ich habe auch gesehen, dass dieses Verhalten für die grundlegenden Attribute width und height, obwohl ich war nicht in der Lage zu replizieren, dass ein Teil des Problems in jsFiddle.)

Scheint dies nicht ein problem in Firefox oder im IE8.

Alle Ideen, was genau verursacht dieses seltsame Verhalten und wie kann ich es umgehen um an die echten Werte?


Den plot verdickt. In einem Versuch, shim, um das problem fand ich, dass die Werte über 10px, die anscheinend nicht Thema der Frage.

Ebenfalls, basierend auf dem @GionaF Kommentar, es scheint ordnungsgemäß zu funktionieren, in Chrome 22.

  • Tatsächlich, ich bekomme 3px (chrome 22)
  • Beh. Dank für das schauen an es @GionaF. Leider habe ich nicht die option zur Aktualisierung im moment...
  • Vor kurzem hatte ich ein Problem mit Chrome: der Versuch, die position der extremen Breite block (49px) bei der 50% der Breite, ich war immer ein bisschen anders, Positionen +/- 1 pixel auf geraden und ungeraden breiten Bildschirm. Ich löste dieses hinzufügen 1px-padding, um sicherzustellen, dass der block mit ist auch. Hoffe dieser Tipp hilft Euch.
  • wir haben ein Sprichwort: wenn der Mörder wartet ein wenig, bevor Sie ermordet seine Opfer, er würde allein sterben 🙂 ich habe Google Chrome 26.0.1410.64 und das problem wird nicht angezeigt
  • Funktioniert in meiner version von Chrome(22)
  • dies funktioniert gut für mich auf Chrome Version 26.0.1410.64 m.
  • können Sie hinzufügen, einen screenshot zu vergleichen?, Ich bin mit dem gleichen Ergebnisse, das jsfiddle mit vielen Konfigurationen (OS, Browser und Versionen).
  • Vor einigen Monaten habe ich ein ähnliches Problem mit Chrome 21: in meinem Fall war es ein Container von 765px Breite, die ich hatte, um zu definieren, mit EM. Die daraus entstehenden 16px Basis-Schriftgröße, die Breite definiert, bei der EM war genau 47.8125 em. Alles hat gut funktioniert, jeder browser (auch älteren Chrome-Versionen) dargestellt, 765px außer Chrome 21, die gerendert 765.066650390625 px. Das problem dieses Runden war, dass die eingeschlossenen Container, für die auch definiert in em-Einheiten vererbt etwas größeren breiten. Am Ende wird die ganze Flüssigkeit layout brach. Am Ende hatte ich die Verwendung von px-Einheiten.

InformationsquelleAutor Chris Jaynes | 2012-10-12
Schreibe einen Kommentar