Содержание
- 2. Предпосылки
- 3. Предпосылки Веб-страницы развиваются. Растут требования к оформлению. Это уже не просто текстовый документ, это менюшки, логотипы,
- 4. Предпосылки CSS еще не является основным средством оформления. Для оформления используются Многочисленные картинки Атрибуты на тэгах
- 5. Предпосылки
- 6. Предпосылки Таблицы использовались даже для того, что бы сделать блок со скругленными углами!
- 7. Предпосылки Недостатки: Все в одной куче Очень много кода Трудно вносить изменения Страдает индексация поисковиками Страдает
- 8. Предпосылки Что же делать? CSS! Позволяет отделить стиль от оформления Позволяет уменьшить размер сайта (в байтах)
- 9. CSS Box Model
- 10. CSS Box Model Любой элемент на странице представляется прямоугольным блоком или боксом. У любого бокса есть
- 11. CSS Box Model
- 12. CSS Box Model Область содержимого (область контента) Здесь располагается содержимое блока (в т.ч. и вложенные блоки)
- 13. CSS Box Model Отступы (паддинги, padding) Промежуток между рамкой и областью содержимого На отступ распространяется фон
- 14. CSS Box Model Граница, рамка, бордер (border) Рамка блока Может иметь толщину но быть прозрачной
- 15. CSS Box Model Границы, маржины (margin) Отступ от данного блока до окружающих
- 16. CSS Box Model Размеры блока width height Размерность НЕ включает в себя padding и border
- 17. CSS Box Model .box { width: 200px; padding: 20px; border: 1px solid red; margin: 15px; }
- 18. CSS Box Model .box { width: 100%; padding: 20px; border: 1px solid red; margin: 15px; }
- 19. Позиционирование
- 20. Позиционирование 4 типа позиционирования: Static Absolute Relative Fixed
- 21. Позиционирование Static
- 22. Позиционирование Absolute
- 23. Позиционирование Relative
- 24. Позиционирование Fixed Так же, как и absolute, но НЕ скроллируется вместе со страницей. Если не влез,
- 25. Координаты
- 26. Координаты При абсолютном и относительном позиционировании (absolute и relative) можно управлять «координатами» элемента. .absBox { left:
- 27. Координаты При абсолютном и относительном позиционировании (absolute и relative) можно управлять «координатами» элемента. .absBox { right:
- 28. Координаты При абсолютном и относительном позиционировании (absolute и relative) можно управлять «координатами» элемента. .absBox { left:
- 29. Координаты При абсолютном и относительном позиционировании (absolute и relative) можно управлять «координатами» элемента. .absBox { left:
- 30. «Точка отсчета»
- 31. «Точка отсчета» Координаты для left, top, right, bottom рассчитываются от ближайшего предка с позиционированием, отличным от
- 32. Поток
- 33. Поток Два основных типа боксов Блочные Строчные Управление типом: свойство display Блочные == block Строчные ==
- 34. Поток В чем разница? Блочные: Занимают всю ширину если не указано обратное Высота рассчитывается по вложенным
- 35. Поток В чем разница? Строчные Ширина и высота – строго по контенту Не применяются вертикальные маржины
- 36. Поток В потоке элементы стоят друг за другом. Строчные без переносов. Блочные – с переносом.
- 37. Поток Строка Строка с выделенным текстом Строка Строка с выделенным текстом
- 38. Поток p { display: inline; } Строка Строка с выделенным текстом
- 39. Поток p { display: inline; } strong { display: block; } Строка Строка с выделенным текстом
- 40. Поток Ширина блочного бокса по умолчанию рассчитывается автоматически. Блок будет занимать полную доступную ширину с учетом
- 41. Выравнивание блоков
- 42. Выравнивание блоков Если ширина указана явно можно управлять выравниванием блока
- 43. Выравнивание блоков Вертикальное выравнивание...
- 44. Выравнивание блоков
- 45. Выравнивание блоков Flexbox! Вертикальное выравнивание! см. http://frontender.info/a-guide-to-flexbox/
- 46. Схлопывание границ
- 47. Схлопывание границ Заголовок Абзац текста... h1 { margin: 20px 0; } p { margin: 10px 0;
- 48. Схлопывание границ Заголовок Абзац текста... h1 { margin: 20px 0; } p { margin: 10px 0;
- 49. Схлопывание границ Заголовок Абзац текста... h1 { margin: 20px 0; } p { margin: 10px 0;
- 50. Схлопывание границ Заголовок Абзац текста... h1 { margin: 20px 0; } p { margin: 10px 0;
- 51. Схлопывание границ Абзац... Абзац... div { margin: 5px 0; } p { margin: 10px 0; }
- 52. Схлопывание границ Абзац... Абзац... div { margin: 5px 0; } p { margin: 10px 0; }
- 53. Схлопывание границ Абзац... Абзац... div { margin: 5px 0; } p { margin: 10px 0; }
- 54. Схлопывание границ Абзац... Абзац... div { margin: 5px 0; } p { margin: 10px 0; }
- 55. Схлопывание границ Абзац... Абзац... div { margin: 5px 0; } p { margin: 10px 0; }
- 56. Схлопывание границ Абзац... Абзац... div { margin: 5px 0 15px 0; } p { margin: 10px
- 57. Схлопывание границ Абзац... Абзац... div { margin: 5px 0 15px 0; } p { margin: 10px
- 58. Схлопывание границ Абзац... Абзац... div { margin: 5px 0 15px 0; } p { margin: 10px
- 59. Схлопывание границ Абзац... Абзац... div { margin: 5px 0 15px 0; } p { margin: 10px
- 60. Схлопывание границ Зачем это нужно?
- 61. Схлопывание границ Зачем это нужно? p { margin: 5px 0; } Ожидание: 5px Реальность: 10px Схлопывание:
- 62. Схлопывание границ Зачем это нужно? ...
- 63. Схлопывание границ Зачем это нужно? ...
- 64. Схлопывание границ Зачем это нужно? ...
- 65. Схлопывание границ. Проблемы...
- 66. Проблемы Тензор С 1996 года... body, #heading { margin: 0 } #heading h1 { margin: 10px;
- 67. Проблемы Тензор С 1996 года... body, #heading { margin: 0 } #heading h1 { margin: 10px;
- 68. Проблемы Тензор С 1996 года... body, #heading { margin: 0 } #heading h1 { margin: 10px;
- 69. Проблемы Тензор С 1996 года... body, #heading { margin: 0 } #heading h1 { margin: 10px;
- 70. Проблемы Тензор С 1996 года... body, #heading { margin: 0 } #heading h1 { margin: 10px;
- 71. Проблемы Как починить? Установить блоку, из которого вывалились границы бордер или паддинг #heading { padding-top: 1px;
- 72. Проблемы Как починить? Установить блоку, из которого вывалились границы бордер или паддинг Плюсы: самый простой способ
- 73. Проблемы Как починить? Заменить маржин на паддинг с нужной стороны h1 { margin: 10px; margin: 0
- 74. Проблемы Как починить? Заменить маржин на паддинг с нужной стороны Плюсы: визуально полностью идентично тому, что
- 75. Проблемы Как починить? «Вырвать» из потока #heading { position: absolute; /* или */ float: left; }
- 76. Проблемы Как починить? «Вырвать» из потока Плюсы: визуальная идентичность ожидаемому Минусы: меняется раскладка, усложняются стили
- 77. Float
- 78. Float ... ... ... #a #b #c
- 79. Float ... ... ... #b { float: left; } #a #b #c
- 80. Float Смещается к указанной стороне Перестает занимать место, схлопывается #a #b #c
- 81. Float Смещается к указанной стороне Перестает занимать место, схлопывается Следующие за ним блочные боксы подтягиваются на
- 82. Float Смещается к указанной стороне Перестает занимать место, схлопывается Следующие за ним блочные боксы подтягиваются на
- 83. Float #b, #c { float: left } #a #c #b
- 84. Float #b, #c { float: left } Если влезет, подтянется к предыдущему float-блоку #a #c #b
- 85. Float #b, #c { float: left } Если влезет, подтянется к предыдущему float-блоку Если не влезет,
- 86. Float Что случается с родительским блоком? Он не учитывает float-боксы при расчете высоты #a #c #b
- 87. Float Что случается с родительским блоком? Он не учитывает float-боксы при расчете высоты #a #c #b
- 88. Float Что случается с родительским блоком? Он не учитывает float-боксы при расчете высоты При этом идущие
- 89. Float Что делать, если мы хотим предотвратить «подтягивание» блока? xxxxxxxxxx xxxxxx xxx xxx xxx #a #c
- 90. Float Что делать, если мы хотим предотвратить «подтягивание» блока? Свойство clear Значения: left right both xxxxxxxxxx
- 91. Float Что делать, если мы хотим предотвратить «подтягивание» блока? Свойство clear Значения: left – нет флоатов
- 92. Float Что делать, если мы хотим предотвратить «подтягивание» блока? Свойство clear .someblock { clear: left; }
- 93. Float Что делать, если мы хотим предотвратить «подтягивание» блока? Свойство clear .someblock { clear: left; }
- 94. Полезные ссылки
- 95. Учебник http://softwaremaniacs.org/blog/category/primer/ - отличный учебник по верстке http://softwaremaniacs.org/blog/2005/09/05/css-layout-flow-margins/ http://softwaremaniacs.org/blog/2005/12/01/css-layout-float/
- 96. Вопросы есть?
- 98. Скачать презентацию