2013-11-12 2 views
5
*{ 
    box-sizing: border-box; 
} 

Это хорошая идея? Любые недостатки?* {box-size: border-box}

Я считаю, что это очень полезно, когда я хочу, чтобы элемент имел 100% и некоторое внутреннее заполнение. Потому что мне не нужно добавлять еще один элемент для заполнения:/

+0

Ссылки по теме [здесь] (http://www.paulirish.com/2012/box-sizing-border-box-ftw/) – kei

+0

Если вы используете fancybox v1.3.4, то проверьте этот http: // stackoverflow. com/a/19921314/1055987 – JFK

+0

Возможный дубликат [В рамку или без рамки для всех элементов?] (http://stackoverflow.com/questions/10722841/to-border-box-or-not-to -border-box-all-elements) – Cthulhu

ответ

5

Я начал использовать это почти всегда.

Доводы,

Вам не нужно больше рассчитать из CSS коробка-модель.

Вы можете легко добавить большой padding к объекту, не придется повторно исправить ваш высота/ширина

Faster кодирование вашего CSS (посмотреть SASS, если у вас нет)

Зэки,

IE7 и ниже не имеют поддержки, кто не прав? Некоторые печально делают.

IE8 и выше имеют только частичную поддержку.

Это, как я идти об этом, если я не хочу, чтобы все это иметь,

div, li, p { 
    box-sizing: border-box; 
    -webkit-box-sizing: border-box; 
    -moz-box-sizing: border-box; 
    -ms-box-sizing: border-box; 
    -o-box-sizing: border-box; 
} 

добавить элементы, которые я знаю будет использовать это свойство и предотвратить любой объект из имея это свойство.

+0

Удачи! –

2

Самый большой недостаток заключается в том, что он не работает во многих браузерах, в частности < IE8. Проверьте использование here.

Когда я использую это, я обычно делаю, что у меня есть все следующие в моей таблице стилей

.my-element { 
    -webkit-box-sizing: border-box; 
    -moz-box-sizing: border-box; 
    -ms-box-sizing: border-box; 
    box-sizing: border-box; 
} 
Смежные вопросы