Homepage selbermachen 7.846 Themen, 35.563 Beiträge

CSS: So etwas wie width: 100%-1px;

Yves3 / 3 Antworten / Flachansicht Nickles

Hallo,

Bekanntlicherweise wird der Border bei einem Element zu seiner Breite (width) hinzuaddiert. Ich habe jetzt ein Inputfeld in einem div, das inklusive Border genau die Breite dieses divs ausfüllen soll. Ganz der CSS Spezifikation entsprechend wird aber der Border zu den 100% hinzuaddiert und die Inputbox ist schlussendlich breiter als das div, in dem sie drin ist.
Wenn ich die Breite einfach auf 99% setze, dann sieht das bei mir zwar korrekt aus, bei einem grösseren Bildschirm könnte das aber schon nicht mehr stimmen. Eine weitere Möglichkeit wäre ein zusätzliches div ohne vorgegebene Breite, das einzig und allein als Rand dient.

Gibt es da einen sauberen Weg, oder muss ich so einen ähnlichen Hack wie oben beschrieben verwenden?

EDIT: Der Hack mit dem zusätzlichen Div funktioniert scheinbar bei Input-Boxen nicht.
Das muss doch irgendwie machbar sein :(

bei Antwort benachrichtigen
Zaphod Yves3 „So geht s, Danke : Dass ich da noch nicht drauf gekommen bin... hab schon viel...“
Optionen

Wenn du den Doctype entfernst, rendert der Browser im Quirks-Mode. Dann ist nicht mehr nachvollziehbar, was dargestellt wird.

HTH, Z.

bei Antwort benachrichtigen