Tak, masz rację, granice wypychają "szerokość" elementu. Jest to domyślna wersja najnowszych przeglądarek w wersji box-sizing. To może być modyfikowany w większości z oświadczeniem, takich jak:
.threadbit .thread {
-webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
-moz-box-sizing: border-box; /* Firefox, other Gecko */
box-sizing: border-box; /* Opera/IE 8+ */
}
pamiętać, że nie jest obsługiwany pod IE8 więc w zależności od tego, co robisz, a wsparcie chcesz, może trzeba znaleźć alternatywne rozwiązanie lub projektu.
EDIT
Minęło trochę czasu odkąd mój oryginalny odpowiedź i przeglądarka wsparcie zmieniła się nieznacznie. Firefox 29, Chrome 10, Safari 5.1 i Internet Explorer 8 wszystkie obsługują nieobsługiwane box-sizing
, ale jest kilka znanych problemów z poszczególnych wersji.
Pełne/up-to-date lista dostępna jest na caniuse.com jednak tutaj jest kilka z nich znalazłem ważne ze strony:
- IE8: ignoruje
box-sizing: border-box
jeśli jest stosowany min/max szerokość/wysokość
- IE8: własność
min-width
dotyczy content-box
box-sizing
nawet jeśli jest ustawiony na border-box
- IE9: szerokość paska przewijania jest odejmowana od szerokości elementu, gdy ustawiono
position: absolute
i albo overflow: auto
lub overflow-y: scroll
Jako że udział w rynku dla IE8 i IE9 zmniejsza się, te problemy i inne wymienione na liście będą mniej problematyczne w przyszłości.
Ctrl + C mistrza, ale nie do stylizacji textarea: p @ poprzez http://css-tricks.com/box-sizing/ – MightyPork
Oczywiście! Nie jestem wielkim fanem zamieszczania linku do skrzypiec, a następnie edytowania mojej odpowiedzi kilka razy. ;) Musi być jakimś elementem praktyki i uczenia się dla osoby zadającej pytanie. – Turnerj
O tak, ale z pewnością nie zaszkodzi zastąpić "textarea" przez '.threadbit .thread' w kopiowanym fragmencie kodu? – MightyPork