Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторні роботи з КМІ / Лабораторна робота № 12.doc
Скачиваний:
35
Добавлен:
23.03.2015
Размер:
169.98 Кб
Скачать

1.5. Поля или отступы

В каких же случаях следует пользоваться отступами, а в каких - полями. Вот несколько принципиальных отличий полей и отступов. Рассмотрим первое отличие. Отступы располагаются внутри границ блока, поля - за их пределами. Для иллюстрации рассмотрим два класса:

p_mar { background-color: #FFC; border:1px solid blue; margin: 2em } p_pad { background-color: #FFC; border:1px solid blue; padding: 2em }

Оформим два различных абзаца при помощи этих классов:

<Р class="p_mar"> Для этого абзаца используется класс "p__mar", для него заданы поля размером 2em.</P> <Р class="p_pad"> Для этого абзаца используется класс "p_pad", для него заданы отступы размером 2em.</P>

В результате в окне браузера мы увидим эти абзацы так, как показано на рисунке:

Для этого абзаца используется класс "p_mar", для него заданы поля размером 2em.

Для этого абзаца используется класс "p_pad", для него заданы отступы размером 2em.

Как вы видите, в первом случае, когда используются поля, "пустые" места расположены за пределами границы блока, внутри блока отступов нет. Во втором случае, когда используются отступы, "пустоты" расположены внутри границы блока.

На отступы распространяется фон блока и фоновое изображение, а на поля нет. Поля всегда прозрачны, сквозь них просвечивает фон родительского элемента.

Наконец, третье отличие. Размеры полей могут иметь отрицательные значения, а размеры отступов только положительные.

Рассмотрим такой пример. Пусть мы имеем заголовок первого уровня и следом за ним идет текст некоего абзаца:

<Н1>Заголовок</Н1> <Р>Абзац текста, на который, с помощью задания отрицательных значений для полей, попробуем "надвинуть" заголовок.</Р>

Как такой код будет выглядеть в окне браузера, показано ниже:

Заголовок

Абзац текста, на который, с помощью задания отрицательных значений для полей, попробуем "надвинуть" заголовок

Теперь если для заголовка написать стиль с использованием свойства margin и задать ему отрицательное значение, то можно "надвинуть" заголовок на текст, сократив расстояние между блоками. Используем, например, отрицательное значение свойства margin-bottom:

H1 { margin-bottom: -1em; }

После добавления этой строчки кода вид окна браузера изменится, как показано ниже:

Заголовок

Абзац текста, на который, с помощью задания отрицательных значений для полей, попробуем "надвинуть" заголовок

За счет отрицательного значения нижнего поля (margin-bottom: -1em) мы добились сокращения расстояния между блоками H1 и Р на 1em, в результате чего и произошло наслаивание заголовка на текст абзаца.

Краткое описание всех свойств управления характеристиками блоков в SCC приведено в таблице:

Свойства CSS для управления характеристиками блоков

Свойство

Описание

Пример

margin-top margin-right margin-bottom margin-left margin

Четыре индивидуальных свойства, которые устанавливают величину верхнего, правого, нижнего и левого полей, и стенографическое свойство задания всех полей одновременно (от 1 до 4 значений). Допускается задание значений в единицах длины, процентах от ширины родительского блока. Допустимы отрицательные значения.

TD {margin: 10 рх} H1 {margin-bottom: -1em}

padding-top padding-right padding-bottom padding-left padding

Четыре индивидуальных свойства, которые устанавливают величину верхнего, правого, нижнего, левого отступов, и стенографическое свойство для задания всех отступов одновременно (от 1 до 4 значений). Допускается задание значений в единицах длины, процентах от ширины родительского блока. Отрицательные значения не допускаются.

TD {padding: 10px} P {padding: 0.5em 1em} H1 {padding-bottom: 12pt}

border-top-width border-right-width border-bottom-width border-left-width border-width

Четыре индивидуальных свойства, которые устанавливают ширину верхнего, правого, нижнего и левого сегментов границы блока, и стенографическое свойство для задания толщины всех сегментов границы одновременно (от 1 до 4 значений). Допускается задание значений в единицах длины и при помощи ключевых слов: thin, medium, thick. Отрицательные значения и значения в процентах не допускаются.

Р {border-width: 1px Зрх } Р {border-top-width: lpx; border-right-width: medium; border-bottom-width lpx; border-left-width: thin;}

border-top-color border-right-color border-bottom-color border-left-color border-color

Четыре индивидуальных свойства, которые устанавливают цвет верхнего, правого, нижнего и левого сегментов границы блока, и стенографическое свойство для задания цвета всех сегментов границы одновременно (от 1 до 4 значений). В качестве значений используется любой из трех способов задания цвета.

P {border-color: red} P.green {border-color: rgb (0,255,0)} H1 {border-color: #336}

border-top-style border-right-style border-bottom-style border-left-style border-style

Четыре индивидуальных свойства, которые устанавливают тип линий верхнего, правого, нижнего и левого сегментов границы блока, и стенографическое свойство для задания типа линий всех сегментов границы одновременно (от 1 до 4 значений). В качестве значений используются ключевые слова: none | dotted | dashed | solid | double | groove | ridge | inset | outset

P {border-style: solid}

border-top border-right border-bottom border-left border

Четыре индивидуальных стенографических свойства, которые устанавливают стиль верхнего, правого, нижнего и левого сегментов границы блока в отдельности (значения свойств идут в следующем порядке: border-width, border-style, border-color), и общее стенографическое свойство для определения стиля всех сегментов границы блока одновременно. В последнем случае все сегменты границы будут одинаковыми - задание разных стилей для разных сегментов границы осуществляется через индивидуальные свойства этой группы

P {border: lpx solid red} P { border-top: solid red;       border-right: solid red;          border-bottom: solid red;       border-left: solid red }