Какое свойство определяет отступ от левого края параграфа
![Какое свойство определяет отступ от левого края параграфа Какое свойство определяет отступ от левого края параграфа thumbnail](https://eljob.ru/assets/img/game_a.jpg)
ÐдÑавÑÑвÑйÑе, доÑогие дÑÑзÑÑ!
РаÑÑмоÑÑим неÑколÑко ÑпоÑобов как ÑделаÑÑ Ð¾ÑÑÑÑп ÑекÑÑа в HTML.
ÐÑÑÑÑп ÑекÑÑа в HTML пÑи помоÑи margin
Ðогда Ð²Ñ ÑазмеÑаеÑе ÑекÑÑ Ð½Ð° ÑайÑе он Ð½Ð°Ñ Ð¾Ð´Ð¸ÑÑÑ Ð² каком-Ñо Ñеге. ÐÑо Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ñег блока <div>, Ñег ÑаблиÑÑ <table>, абзаÑа <p>, ÑекÑии <section> и Ñак далее.
ÐÑ Ð¼Ð¾Ð¶ÐµÐ¼ задаÑÑ Ð¾ÑÑÑÑп Ð´Ð»Ñ Ñега в коÑоÑом Ð½Ð°Ñ Ð¾Ð´Ð¸ÑÑÑ ÑекÑÑ Ð¿Ñи помоÑи CSS ÑвойÑÑва margin.
ÐелаеÑÑÑ ÑÑо Ñак:
<div style=âmargin-left:20px;â> ТекÑÑ Ð±Ð»Ð¾ÐºÐ° HTML </div> |
ÐдеÑÑ Ð¼Ñ Ð²Ð¾ÑполÑзовалиÑÑ Ð°ÑÑибÑÑом style и в нÑм Ñказали нÑжное CSS ÑвойÑÑво, задав ÑекÑÑÑ Ð¾ÑÑÑÑп Ñлева 20px. Так же Ð¼Ñ Ð¼Ð¾Ð¶ÐµÐ¼ задаÑÑ Ð´Ð»Ñ Ð½Ð°Ñего блока или дÑÑгого Ñега клаÑÑ Ð¸ поÑом в оÑделÑном CSS Ñайле допиÑаÑÑ Ð´Ð»Ñ Ð½ÐµÐ³Ð¾ ÑÑили.
HTML:
<div class=”text-block”> ТекÑÑ Ð±Ð»Ð¾ÐºÐ° </div> |
CSS:
.text-block { margin-left:20px; } |
ÐÑли Ð²Ñ Ð½Ðµ ÑоздаÑÑе ÑÑÑаниÑÑ Ñ Ð½ÑлÑ, а ÑедакÑиÑÑеÑе Ñже ÑÑÑеÑÑвÑÑÑÑÑ, Ñо можно не задаваÑÑ Ð½Ð¾Ð²Ñй клаÑÑ, а опÑеделиÑÑ Ñже имеÑÑийÑÑ ÐºÐ»Ð°ÑÑ Ð¸Ð»Ð¸ иденÑиÑикаÑоÑ. Ðак ÑÑо ÑделаÑÑ Ð¿Ð¾ÐºÐ°Ð·Ð°Ð½Ð¾ в ÑÑой ÑÑаÑÑе:
«Ðак опÑеделиÑÑ ID и клаÑÑ ÑлеменÑа на ÑÑÑаниÑе?»
ÐÑи помоÑи ÑÑого ÑвойÑÑва Ð¼Ñ Ð¼Ð¾Ð¶ÐµÐ¼ задаÑÑ ÑазнÑе оÑÑÑÑÐ¿Ñ ÑекÑÑÑ Ð² HTML:
- margin-left — ÑаÑÑÑоÑние Ñлева
- margin-right — ÑаÑÑÑоÑние ÑпÑава
- margin-top — ÑаÑÑÑоÑние ÑвеÑÑ Ñ
- margin-bottom — ÑаÑÑÑоÑние ÑнизÑ
Так же можно одновÑеменно в одной ÑÑÑоке задаÑÑ Ð¾Ð´Ð¸Ð½Ð°ÐºÐ¾Ð²Ñе или ÑазнÑе оÑÑÑÑÐ¿Ñ Ñо вÑÐµÑ ÑÑоÑон:
- margin: 10px; — делаем оÑÑÑÑп ÑекÑÑа 10px Ñо вÑÐµÑ ÑÑоÑон
- margin: 15px 30px; — задаÑм оÑÑÑÑп ÑÑеÑÑ Ñ Ð¸ ÑÐ½Ð¸Ð·Ñ Ð¿Ð¾ 15px, а ÑпÑава и Ñлева по 30px
- margin: 15px 25px 35px 45px; — оÑÑÑÑп ÑвеÑÑ Ñ 15px, Ñлева â 25px, ÑÐ½Ð¸Ð·Ñ â 30px, ÑпÑава â 45px
ÐмеÑÑо пикÑелей Ð²Ñ Ñак же можеÑе задаваÑÑ %, em, rem и дÑÑгие единиÑÑ.
ÐбÑаÑиÑе внимание, еÑли Ð²Ñ Ð·Ð°Ð´Ð°ÑÑе веÑÑ Ð½Ð¸Ð¹ или нижний оÑÑÑÑп Ð´Ð»Ñ Ñега <a>, <span>, <b> — Ñо, ÑкоÑее вÑего, он не ÑÑабоÑаеÑ. ÐÑо ÑвÑзано Ñ Ñем ÑÑо веÑÑ Ð½Ð¸Ð¹ и нижний margin ÑабоÑÐ°ÐµÑ ÑолÑко Ð´Ð»Ñ Ð±Ð»Ð¾ÑнÑÑ ÑлеменÑов HTML, а ÑказаннÑе вÑÑе Ñеги ÑвлÑÑÑÑÑ ÑÑÑоÑнÑми. ÐÐ»Ñ ÑеÑÐµÐ½Ð¸Ñ Ð¿ÑÐ¾Ð±Ð»ÐµÐ¼Ñ Ð¼Ð¾Ð¶Ð½Ð¾ дополниÑелÑно задаÑÑ ÑÑÐ¾Ð¼Ñ ÑÐµÐ³Ñ CSS ÑвойÑÑво display:inline-block; ÑÑÐ¾Ð±Ñ Ðº Ð½ÐµÐ¼Ñ Ð¿ÑименÑлиÑÑ ÑвойÑÑва одновÑеменно блоÑного и ÑÑÑоÑного ÑлеменÑа HTML.
ÐÑÑÑÑп ÑекÑÑа в HTML пÑи помоÑи padding
ÐÑÐ¾Ñ ÑпоÑоб оÑÐµÐ½Ñ Ð¿Ð¾Ñ Ð¾Ð¶ на пÑедÑдÑÑий, но еÑли margin задавал оÑÑÑÑп до ÑекÑÑа как Ð±Ñ ÑнаÑÑжи Ñега, Ñо padding бÑÐ´ÐµÑ Ð·Ð°Ð´Ð°Ð²Ð°ÑÑ Ð¾ÑÑÑÑп внÑÑÑи.
<div style=âpaddint-top:20px;â> ТекÑÑ Ð±Ð»Ð¾ÐºÐ° </div> |
Так же можно пÑиÑвоиÑÑ ÐºÐ»Ð°ÑÑ Ð² HTML коде или воÑполÑзоваÑÑÑÑ Ñже ÑÑÑеÑÑвÑÑÑим и допиÑаÑÑ ÑÑо ÑвойÑÑво емÑ:
CSS:
.text-block { padding: 20px 10px 15px 20px; } |
С его помоÑÑÑ Ñак же можно задаÑÑ ÑазнÑе оÑÑÑÑÐ¿Ñ ÑекÑÑа в HTML:
- padding-left — Ñлева
- padding-right — ÑпÑава
- padding-top — ÑвеÑÑ Ñ
- padding-bottom — ÑаÑÑÑоÑние ÑнизÑ
- padding: 25px; — оÑÑÑÑп Ñо вÑÐµÑ ÑÑоÑон.
ÐÑÑÑÑп ÑекÑÑа html пÑи помоÑи неÑазÑÑвного пÑобела
СÑÐ°Ð·Ñ ÑÐºÐ°Ð¶Ñ ÑÑо Ñ ÑÑÐ¾Ñ ÑпоÑоб не лÑÐ±Ð»Ñ Ð¸ не ÑекомендÑÑ, но иногда он Ð¼Ð¾Ð¶ÐµÑ Ð¿Ð¾Ð½Ð°Ð´Ð¾Ð±Ð¸ÑÑÑ. СÑÑÑ ÐµÐ³Ð¾ заклÑÑаеÑÑÑ Ð² Ñом ÑÑо в HTML еÑÑÑ ÑпеÑиалÑнÑй Ñег, коÑоÑÑй позволÑÐµÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÑÑÑ Ð½ÐµÑазÑÑвнÑй пÑобел
- ÐÑли Ð²Ñ Ð¿Ð¾ÑÑавиÑе ÑÑÐ¾Ñ Ñег в ÑекÑÑе Ð¼ÐµÐ¶Ð´Ñ Ñлов или внаÑале ÑÑÑоки Ñо он ÑоздаÑÑ Ð¾ÑÑÑÑп ÑавнÑй по ÑиÑине 1 пÑобелÑ. ÐоÑÑавив неÑколÑко Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе ÑвелиÑиÑÑ ÑаÑÑÑоÑние Ð¼ÐµÐ¶Ð´Ñ Ñловами.
- ÐÑли поÑÑавиÑÑ Ð¼ÐµÐ¶Ð´Ñ ÑÑÑок Ñо он ÑоздаÑÑ Ð²ÐµÑÑикалÑнÑй оÑÑÑÑп ÑавнÑй по вÑÑоÑе одной ÑÑÑоке. ÐопиÑав неÑколÑко (каждÑй Ñ Ð½Ð¾Ð²Ð¾Ð¹ ÑÑÑоки) можно ÑвелиÑиÑÑ ÑÑо ÑаÑÑÑоÑние.
HTML:
<p>ÐадаÑм в HTML</p> |
ÐÑÑÑÑп ÑекÑÑа в HTML пÑи помоÑи text-indent
ÐÑли вам нÑжно задаÑÑ Ð¾ÑÑÑÑп в HTML не Ð´Ð»Ñ Ð²Ñего ÑекÑÑа на ÑÑÑаниÑе, а лиÑÑ ÑолÑко Ð´Ð»Ñ Ð¿ÐµÑвой ÑÑÑоÑки одного или неÑколÑÐºÐ¸Ñ Ð°Ð±Ð·Ð°Ñев, Ñо ÑÑо можно ÑделаÑÑ Ð¿Ñи помоÑи ÑвойÑÑва text-indent
HTML:
<div style=”text-indent:25px;”> ÐдеÑÑ ÑекÑÑ HTML блока</div> |
ЧÑо делаÑÑ ÐµÑли оÑÑÑÑп не поÑвлÑÑÑÑÑ?
ÐÑваÑÑ ÑиÑÑаÑии, когда Ð²Ñ Ð·Ð°Ð´Ð°ÑÑе оÑÑÑÑп ÑекÑÑа HTML одним из пÑедложеннÑÑ
ÑпоÑобов, а он не пÑименÑеÑÑÑ.
ÐÑиÑин здеÑÑ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð½ÐµÑколÑко. Ðаиболее ÑаÑпÑоÑÑÑанÑннÑе опиÑÐ°Ð½Ñ Ð² ÑÑой ÑÑаÑÑе: «ÐоÑÐµÐ¼Ñ Ð½Ðµ ÑабоÑаÑÑ CSS-ÑÑили?»
ÐÑли Ð²Ñ Ð·Ð½Ð°ÐµÑе еÑÑ ÐºÐ°ÐºÐ¸Ðµ Ñо ÑпоÑÐ¾Ð±Ñ ÐºÐ°Ðº ÑделаÑÑ Ð¾ÑÑÑÑп ÑекÑÑа HTML напиÑиÑе Ð¸Ñ Ð² комменÑаÑиÑÑ . ÐÑли ÑÑаÑÑÑ Ð±Ñла Ð´Ð»Ñ Ð²Ð°Ñ Ð¿Ð¾Ð»ÐµÐ·Ð½Ð¾Ð¹ — делиÑеÑÑ ÐµÐ¹ в ÑоÑиалÑнÑÑ ÑеÑÑÑ . Так Ð²Ñ Ð¿Ð¾Ð¼Ð¾Ð³Ð°ÐµÑе мне ÑазвиваÑÑ ÑайÑ.
УÑÐ¿ÐµÑ Ð¾Ð² вам в оÑоÑмлении ваÑÐ¸Ñ ÑайÑов и не ÑолÑко!
С Ñважением Ð®Ð»Ð¸Ñ ÐÑÑаÑÑ
Источник
Главная / Интернет-технологии /
Введение в HTML и CSS / Тест 6
Упражнение 1:
Номер 1
Что определяет строка <p style=”text-transform:uppercase;”> ?
Ответ:
 (1) тип шрифта 
 (2) регистр букв 
 (3) кодировку 
Номер 2
Какими будут буквы после применения <p style=”text-transform:uppercase;”> ?
Ответ:
 (1) в нижнем индексе 
 (2) подчеркнутыми 
 (3) заглавными 
Номер 3
Чтобы все буквы в абзаце были заглавными необходимо применить
Ответ:
 (1) <p style=”text-transform:uppercase;”>  
 (2) <p style=”text-transform:lowercase;”>  
 (3) <p style=”text-transform:capitalize;”>  
Упражнение 2:
Номер 1
Что определяет строка <p style=”text-transform:capitalize;”>?
Ответ:
 (1) тип шрифта 
 (2) регистр букв 
 (3) кодировку 
Номер 2
Что изменится после применения <p style=”text-transform:capitalize;”>?
Ответ:
 (1) все буквы будут строчными 
 (2) все буквы будут заглавными 
 (3) все слова будут начинаться с заглавных букв 
Номер 3
Чтобы все слова в абзаце начинались с заглавной буквы необходимо применить:
Ответ:
 (1) <p style=”text-transform:capitalize;”> 
 (2) <p style=”text-transform:lowercase;”> 
 (3) <p style=”text-transform:uppercase;”> 
Упражнение 3:
Номер 1
Горизонтальный отступ от левого края параграфа определяется свойством
Ответ:
 (1) text-indent 
 (2) text-content 
 (3) text-select 
Номер 2
Какое свойство определяет отступ от левого края параграфа?
Ответ:
 (1) text-set 
 (2) text-indent 
 (3) text-trace 
Номер 3
Что определяется свойством text-indent?
Ответ:
 (1) отступ от левого края абзаца 
 (2) расстояние между буквами 
 (3) межстрочное расстояние 
Упражнение 4:
Номер 1
Для чего используется свойство line-height?
Ответ:
 (1) для межбуквенного расстояния 
 (2) для межстрочного расстояния 
 (3) для определения количества символов в табуляции 
Номер 2
Что определяется с помощью свойства line-height?
Ответ:
 (1) межстрочное расстояние 
 (2) расстояние отступа абзаца 
 (3) расстояние между словами 
Номер 3
Межстрочное расстояние определяется свойством
Ответ:
 (1) line-height 
 (2) line-width 
 (3) line-struct 
Упражнение 5:
Номер 1
Что определяет строка <ul style=”list-style-type:square;”>?
Ответ:
 (1) изменение маркера списка 
 (2) изменение типа шрифта 
 (3) изменение расстояния между элементами списка 
Номер 2
Что определяет строка <ul style=”list-style-type:disk;”>?
Ответ:
 (1) замещение элементами списка других элементов 
 (2) изменение маркера списка 
 (3) тип построения и уровни списка 
Номер 3
Чтобы маркером списка был круг необходимо использовать
Ответ:
 (1) <ul style=”list-style-type:circle;”> 
 (2) <ul style=”list-style-type:disc;”> 
 (3) <ul style=”list-style-type:round;”> 
Упражнение 6:
Номер 1
Укажите доступные значения свойства letter-spacing:
Ответ:
 (1) {letter-spacing: normal} 
 (2) {letter-spacing: none} 
 (3) {letter-spacing: auto} 
Номер 2
Какое свойство позволяет управлять расстоянием между словами?
Ответ:
 (1) word-spacing 
 (2) letter 
 (3) letter-spacing 
Номер 3
С помощью какого свойства можно управлять выравниванием?
Ответ:
 (1) text-align 
 (2) text-indent 
 (3) text-shadow 
Упражнение 7:
Номер 1
В каком правиле все индивидуальные свойства специфицированы?
Ответ:
 (1) BODY {background: red} 
 (2) P {background: url(“chess.png”) gray 50% repeat fixed} 
 (3) BODY {background: gray} 
Номер 3
Из приведенных ниже записей выделите доступное значение свойства widows:
Ответ:
 (1) inherit 
 (2) none 
 (3) auto 
Упражнение 8:
Номер 1
Какой параметр задает высоту элемента?
Ответ:
 (1) height 
 (2) line-height 
 (3) max-height 
Номер 2
Из приведенных ниже записей выберите доступные значения параметра max-height
Ответ:
 (1) 2.1 
 (2) 10pt 
 (3) auto 
Номер 3
К доступным значениям параметра max-width следует отнести
Ответ:
 (1) 10pt 
 (2) auto 
 (3) none 
Упражнение 9:
Номер 1
Какой параметр можно использовать для задания всех характеристик списка в одном объявлении?
Ответ:
 (1) list 
 (2) list-style 
 (3) style 
Номер 2
К доступным значениям параметра list-style относят
Ответ:
 (1) list-style-type 
 (2) list-style-image 
 (3) list-style-border 
Номер 3
Выберите все доступные значения параметра list-style:
Ответ:
 (1) list-style-position 
 (2) list-style-type 
 (3) list-margin 
Упражнение 10:
Номер 1
Какой параметр задает изображение в качестве маркера элемента списка?
Ответ:
 (1) list-style-image 
 (2) list-style-glyph 
 (3) list-style-icon 
Номер 2
Какой параметр задает размещение маркера элемента списка?
Ответ:
 (1) list-style-position 
 (2) list-style-pos 
 (3) list-position 
Номер 3
Из приведенных ниже записей выберите доступные значения параметра list-style-position:
Ответ:
 (1) default 
 (2) inside 
 (3) left 
Упражнение 11:
Номер 1
Какой параметр задает тип выводимого курсора?
Ответ:
 (1) display 
 (2) setcursor 
 (3) cursor 
Номер 2
Определите из приведенных ниже записей доступные значения параметра cursor:
Ответ:
 (1) default 
 (2) text 
 (3) stop 
Номер 3
Как установить курсор в виде песочных часов?
Ответ:
 (1) clock 
 (2) wait 
 (3) time 
Упражнение 12:
Номер 1
Какой параметр позволяет задать способ визуализации элемента?
Ответ:
 (1) monitor 
 (2) show 
 (3) display 
Номер 2
Каковы допустимые значения параметра display?
Ответ:
 (1) block 
 (2) table 
 (3) off 
Номер 3
С помощью какого параметра можно задать вывод элемента в виде списка?
Ответ:
 (1) list 
 (2) list-item 
 (3) listing 
Источник
В этой статье я хотел бы рассказать, как правильно расставлять поля (padding) и отступы (margin) в CSS.
Прежде всего давайте вспомним определение полей и отступов согласно спецификации W3C. В боксовой модели (box model) поля — это расстояние между контентом (content) и границей блока (border). А отступы это расстояние между границей блока и границей соседнего или родительского элемента.
Таким образом, если граница и фон элемента не заданы, то нет разницы, использовать свойство padding или margin для задания отступов, но при условии, что ширина (width) и высота (height) элемента не заданы и не изменен алгоритм расчета размеров контента с помощью свойства box-sizing.
В любом случае следует помнить, что поля могут быть как включены в ширину или высоту элемента, так и нет. Отступы же всегда задаются снаружи элемента.
Теперь давайте рассмотрим как правильно расставлять поля и отступы между элементами. Возьмем в качестве примера следующий блок.
Это блок новостей news. Он состоит из заголовка, списка новостей и ссылки «Другие новости». Дадим им следующие названия классов: news__title, news__list и news__more-link.
<div class=”news”>
<h2 class=”news__title”>Новости</h2>
<ul class=”news__list”>
<li class=”news__list-item”>…</li>
<li class=”news__list-item”>…</li>
<li class=”news__list-item”>…</li>
</ul>
<p class=”news__more-link”><a href=”…”>Другие новости</a></p>
</div>
Поскольку каждый из этих элементов имеет одинаковые отступы слева и справа, то лучше задать поля родительскому блоку, а не задавать отступы слева и справа для каждого элемента в отдельности.
.news {
padding: 20px 25px;
}
Таким образом, при необходимости изменить значение полей справа и слева это нужно будет сделать в одном месте. А при добавлении нового элемента внутрь блока новостей, он уже будет иметь нужные отступы слева и справа.
Часто бывает так, что все элементы внутри блока имеют одинаковые отступы слева и справа, кроме одного, который вообще не должен иметь отступов, например, из-за фона. В этом случае для элемента можно задать отрицательные отступы. Тогда не придется убирать поля внутри блока для остальных элементов.
Теперь нужно задать вертикальные отступы между элементами. Для этого следует определить какой из элементов является обязательным. Очевидно что блок новостей не может существовать без списка новостей, в то же время ссылки «Другие новости» может и не быть, заголовок тоже может быть убран, например, при изменении дизайна.
Учитывая это, задаем для заголовка отступ снизу, а для ссылки «Другие новости» отступ сверху.
.news__title {
margin-bottom: 10px;
}
.news__more-link {
margin-top: 12px;
}
Мы могли бы достигнуть такого же внешнего результата, добавив отступы сверху и снизу для списка новостей.
.news__list {
margin: 10px 0 12px 0;
}
Но в этом случае при убирании ссылки «Другие новости» внизу остается лишний отступ. То же самое справедливо и для заголовка. Очевидно, что первый вариант является более правильным, поскольку позволяет гибко изменять внешний вид блока.
Теперь нужно задать отступы между отдельными новостями. Опять же, нужно принять во внимание, что количество новостей может меняться, и в списке может быть только одна новость.
Можно задать для каждой новости кроме первой отступ сверху, либо для каждой новости кроме последней отступ снизу. Первый вариант более предпочтителен, поскольку псевдоселектор :first-child был добавлен в спецификации CSS 2.1 и имеет более широкую поддержку, в отличие от псевдоселектора :last-child, который был добавлен только в спецификации CSS версии 3.0.
.news__list-item {
margin-top: 18px;
}
.news__list-item:first-child {
margin-top: 0;
}
Таким образом, правильная расстановка полей и отступов позволяет гибко менять внешний вид любого блока без внесения изменений в стили и без нарушений в дизайне. Самое главное — определить, какие элементы блока являются основными (обязательными), а какие опциональными.
Иногда мы не можем опираться на обязательные элементы. Например, у нас есть всплывающее окошко popup, внутри которого может выводиться какой-то заголовок и текст. Причем в каких-то случаях может не быть текста, а в каких-то и заголовка. То есть оба элемента являются опциональными.
В этом случае можно использовать следующий способ задания отступов.
.popup__header + .popup__text {
margin-top: 15px;
}
jsfiddle.net/onfv42mz/1
Тогда отступ появится, только если будут использоваться оба элемента. В случае же вывода только заголовка или только текста, лишнего отступа не будет.
Схлопывание вертикальных отступов
Еще один нюанс, о котором не все знают, связан с вертикальными отступами между соседними блоками. В определении отступов, которое я приводил выше, сказано, что отступ — это расстояние между границами текущего и соседнего блока. Таким образом, если мы расположим два блока друг под другом и зададим одному из них отступ снизу в 30px, а другому отступ сверху в 20px, отступ между ними будет не 50px, а 30px.
.block1 {
margin-bottom: 30px;
}
.block2 {
margin-top: 20px;
}
jsfiddle.net/j99btnc8
То есть произойдет наложение отступов, и отступ между блоками будет равен наибольшему отступу, а не сумме отступов. Этот эффект также называют «схлопыванием».
Прошу заметить, что горизонтальные отступы, в отличие от вертикальных, не «схлопываются», а суммируются. Поля (padding) также суммируются.
Зная о «схлопывании» отступов, мы можем использовать эту особенность в свою пользу. Например, если нам необходимо расставить отступы для заголовков и текста внутри статьи, то для заголовка первого уровня зададим отступ снизу в 20px, а для заголовка второго уровня отступ сверху 20px и снизу 10px, а для всех параграфов зададим отступ сверху 10px.
h1 {
margin-bottom: 24px;
}
h2 {
margin-top: 24px;
margin-bottom: 12px;
}
p {
margin-top: 12px;
}
jsfiddle.net/n27fms7s/1
Теперь заголовок h2 можно расположить как после заголовка h1, так и после параграфа. В любом случае отступ сверху не будет превышать 24px.
Общие правила
Подводя итог, я бы хотел перечислить правила, которых я придерживаюсь при расстановке полей и отступов.
- Если соседние элементы имеют одинаковые отступы, то лучше задавать их родительскому контейнеру, а не элементам.
- При задании отступов между элементами, следует учитывать, обязательный это элемент или опциональный.
- Для списка однотипных элементов — не забывать о том, что число элементов может варьироваться.
- Помнить о наложении вертикальных отступов и использовать эту особенность там, где она принесет пользу.
Источник