Evet, haklısınız, kenarlar öğenin "genişliğini" dışarı doğru iter. Modern tarayıcıların varsayılan box-sizing'dur. o yüzden yapıyoruz ve istediğiniz desteği, size alternatif bir çözüm veya tasarım bulmak için ne gerekebilir bağlı IE8 altında desteklenmediğini
.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+ */
}
Not: Bu gibi bir bildiriyle çoğunda değiştirilebilir.
benim orijinal cevap ve tarayıcı desteği hafifçe değişmiş epey zaman olmuştur
DÜZENLEME. Firefox 29, Chrome 10, Safari 5.1 ve Internet Explorer 8'in tüm sürümleri box-sizing
'u desteklemez, ancak belirli sürümlerden birkaç bilinen sorun vardır.
liste caniuse.com ancak burada sitesinden önemli bulduğumuz bir kaç olanlar ise geçerli yukarı güncel/tam:
- IE8: min/max-genişlik/yükseklik kullanılırsa
box-sizing: border-box
yok sayar
- IE8:
box-sizing
border-box
- IE9 için ayarlanmış olsa bile,
min-width
özelliği content-box
için geçerlidir: position: absolute
ve overflow: auto
ya ayarlandığında kaydırma çubuğu genişliği elemanın genişliğinin çıkartılmaktadır veya IE8 ve IE9 azalma, bu konularda ve caniuse listelenen diğer pazar payı olarak overflow-y: scroll
gelecekte bir sorun daha az olacaktır.
Ctrl + C usta bir bağlantıdır, ama o bir textarea stil değil: http://css-tricks.com/box-sizing/ – MightyPork
Açıkça yoluyla P @! Sadece bir kemanın bir linkini yayınlamanın büyük bir hayranı değil, daha sonra cevabımı bir çok kez düzenliyorum. ;) Soruyu soran kişi için bir takım pratik ve öğrenim unsurları olmalı. – Turnerj
Oh evet, ama kopyalanmış snippet içinde '. Textarea'' .threadbit .thread' ile değiştirmek kesinlikle zarar vermez? – MightyPork