14:11:19
, 11.04.2026, Суббота
Новости Галерея Реклама Поиск RSS
SEO sprint - Всё для максимальной раскрутки!
  • Страница 1 из 1
  • 1
Использование box-sizing
Дата: Четверг, 13.01.2011, 13:45:54 | Сообщение # 1
Аватарка dagio
OFF
Пользователь
137Сообщения:
Ширина блока формируется из ширины контента и значений полей, границ и отступов. В браузере Internet Explorer в режиме совместимости (иными словами, когда не указан доктайп) алгоритм меняется автоматически и ширина всего блока устанавливается равной width. Остальные браузеры так просто не меняют алгоритм, к тому же вы знаете, что режим совместимости это зло. В CSS3 есть замечательное свойство box-sizing, которое нам и пригодится. При значении border-box ширина начинает включать поля и границы, но не отступы. Таким образом, включая box-sizing со значением border-box в свой стиль, мы можем задавать ширину в процентах и спокойно указывать border и padding, не боясь, что изменится ширина блока. К сожалению, с этим свойством связана небольшая проблема, как обычно относящаяся к браузерам — не все браузеры его понимают. Радует, что браузеры хотя бы поддерживают специфические свойства. В табл. 1 приведена поддержка браузерами.
Табл. 1. Поддержка браузерами свойства box-sizing

Пример 1. Ширина блока

Code
XHTML 1.0CSS 3IE 7IE 8IE 9Cr 8Op 11Sa 5Fx 3.6
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"   
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
   <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Ширина блока</title>
    <style type="text/css">
     div {   
      width: 100%; /* Ширина */
      background: #fc0; /* Цвет фона */
      padding: 20px; /* Поля */
      -moz-box-sizing: border-box; /* Для Firefox */
      -webkit-box-sizing: border-box; /* Для Safari и Chrome */
      box-sizing: border-box; /* Для IE и Opera */
     }
    </style>
   </head>
   <body>
    <div>Ширина слоя 100%</div>
   </body>
</html>

Данный пример будет работать во всех браузерах, указанных в табл. 1, однако невалиден в CSS3 из-за применения нестандартных свойств начинающихся на -moz и -webkit. Ширина блока составляет 100% с учетом значений padding. Без свойства box-sizing в браузере появится горизонтальная полоса прокрутки.

Сообщение отредактировал dagio - Четверг, 13.01.2011, 13:46:19
Дата: Четверг, 13.01.2011, 13:46:38 | Сообщение # 2
Аватарка dagio
OFF
Пользователь
137Сообщения:
это хорошая помощь в HTML
  • Страница 1 из 1
  • 1
Поиск: