Параметры рамки. Отступы и рамки в CSS с помощью параметров margin, padding и border Задание рамки для одной границы элемента


Рамки - это такие линии, которые окружают элемент (содержащийся в нём контент и отступы вокруг него). Пример, с которым мы уже сталкивались - рамки ячеек внутри таблицы.

CSS предусматривает два типа рамок: внутренние границы и внешние линии. Свойства CSS, отвечающие за оформление рамок, начинаются со слова «border», которое как раз и можно перевести как «Рамка», «Граница». Наличие и формат внешнего контура задаются свойствами, начинающимися словом «outline». Outline, в отличие от border, не влияет на ширину и положение обрамляемого блока. Кроме того, его нельзя установить только с одной стороны, как border - только со всех сторон сразу.

Сначала поговорим об оформлении border, потом перейдём к outline .

border-width

Задаёт ширину границ. Понятно, что по умолчанию элемент окружён рамками с четырёх сторон. Свойство позволяет задать ширину границ как для всех сторон одинаковую, так и разную для каждой стороны. В зависимости от того, какую ширину каким границам нужно присвоить, в правиле можно указать от одного до четырёх значений.

Задавать ширину можно как с помощью привычных пикселей, процентов и других единиц длины CSS, так и зарезервированными словами thin (2px), medium (4px) и thick (6px).

Border-width: 16px 12px 4px 8px;

border-style

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

Значений у свойства может быть довольно много, все они наглядно продемонстрированы рисунком ниже.

Последний абзац показывает, что стиль, как и толщина, у рамки с каждой стороны может быть собственным:

border-style: solid double dotted none

border-color

Работает так же, как и предыдущие свойства, но отвечает за цвет границ. Ему тоже можно задавать от одного до четырёх значений, и результат вы уже знаете. Если правило не установить, рамки будут иметь цвет текста текущего элемента или, если не указан и он, цвет текста элемента-родителя.

Border-color: #C85EFA;

border

Упрощает запись и экономит код, позволяя установить все перечисленные свойства для границ со всех сторон элемента одной строкой:

P { border: 2px solid green; }

Для настройки разных правил рамкам с разных сторон можно использовать следующие значения:

  • border-top - верхняя граница.
  • border-right - правая.
  • border-bottom - нижняя.
  • border-left - левая.

P { border-left: 6px dotted yellow; }

outline-width

То же самое, что и border-width , только для внешней, а не внутренней рамки. Задаёт толщину контура в тех же значениях, что и border-width . Кроме толщины обрамления элемента нужно указать его стиль, иначе контура не будет.

outline-style

Значения свойства дублируют значения border-style . Правило задаёт стиль внешнего контура.

Рамки (блочные параметры)

Значения этих свойств используются для установки характеристик области вокруг элемента.
Это может быть применено к символам, изображениям и т.д.

Параметры Значение Описание
border-top-color
border-right-color
border-left-color
border-bottom-color
border-color
цвет
(нет цвета
по умолчанию)
Определяют цвет четырех сторон рамок. Если вместо цвета подставить URL-адрес изображения, оно будет повторяться, образуя рамку.
border-top-style
border-right-style
border-left-style
border-bottom-style
border-style
none (по умолчанию)
solid
double
groove
ridge
inset
outset
Определяют стиль четырех сторон рамок.
border-top
border-right
border-left
border-bottom
border
ширина_рамки,
стиль_рамки,
цвет

(по умолчанию:
medium, none, нет цвета)

Определяют свойства четырех сторон рамок. Работают так же, как свойства отступов (см.ниже), за исключением того, что рамка видна.

ширина_рамки может быть значением medium, thin или thick или задана в единицах измерения.
стиль_рамки может иметь значение none или solid

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

border-top-width
border-right-width
border-left-width
border-bottom-width
border-width
thin
medium (по умолчанию)
thick
длина
Определяют ширину рамки вокруг элемента. Каждая сторона может быть задана соответствующим параметром. Можно заменить установку четырех индивидуальных свойств установкой одного свойства border-width так же, как и для свойств отступа margin .
ciip rect (/top/right/bottom/left/)
auto (по умолчанию)
Определяет, какая часть элемента видна. Все, что находится за пределами области, указанной этим параметром, увидеть нельзя.
display "", none
"" (по умолчанию)
Этот параметр указывает, будет ли отображен элемент.
float none (по умолчанию)
left
right
Определяет обтекание элемента другими элементами слева или справа вместо помещения их под ними. Поддерживается тегами
, ...
height auto (по умолчанию)
длина
Устанавливают высоту элемента и измеряют ее, если это необходимо. Значение возвращаются в виде строки, включающей единицы измерения (px, % и т.д.). Для получения числового значения используется свойство posHeight.
left auto (по умолчанию)
длина
проценты
Задают горизонтальную координату элемента, позволяя корректно устанавливать и передвигать элементы. Значение возвращается как строка, включающая единицы измерения (px, % и т.д.). Для получения значения в виде числа используется свойство posLeft.


Пример 1:
Эта строка подчеркнутая пунктиром. Пример 2: Разные типы рамок.

1. none - Нет границы {border:none;}

2. solid - Есть граница {border: 1px solid;}




Пример 4: Рамка с круглыми углами.


. в налоговых декларациях;
. справках 2-НДФЛ;

Во всех перечисленных документа указывается 11-ти значный код ОКТМО взамен ранее используемых кодов ОКАТО.

#org
{
width: 80%;
margin-top:2em;
margin-left: auto;
margin-right: auto;
border-radius: 10px 10px;
-moz-border-radius: 10px 10px;
-webkit-border-radius: 10px 10px;
padding: 15px 20px 15px 80px;
margin: 0px 0px 0px 0px;
-webkit-box-shadow: 2px 2px 3px #999;
-moz-box-shadow: 2px 2px 3px #999;
/*IE min-height hack*/
min-height:40px;
height:auto !important;
height:40px;
overflow:visible;

Position:relative;
bottom:6px;
right: 6px;
border: 1px solid #7e5a25;
/*Set the position of the background image*/
background-position: 20px 50%;
background-repeat: no-repeat;
text-align: justify;
font-size: 0.9em;

Background-color: #e8e3d4;
background-image: url(baba.gif);
}


Начиная с 1 января 2014 года новые коды ОКТМО, указываются в:
. в налоговых декларациях;
. справках 2-НДФЛ;
. платежных поручениях (поле 105);
. квитанция на оплату налогов, сборов, пошлин формы ПД-4 налог.

Во всех перечисленных документа указывается 11тизначный код ОКТМО взамен ранее используемых кодов ОКАТО.

Пример 5: Рамка оформлена с помощью вложенных таблиц.

Суворов А.В.
Вложенные таблицы


картинка




Таблица 1
Узкая черная рамка (5px) Параметры таблицы:
  • table--> bgcolor=#000000 style="border:2px solid #a3852f"
  • td--> style="padding:5px "
Пример 6: Вертикальная рамка.

Ширина и высота блочных элементов

Свойства CSS width и height - устанавливают ширину и высоту блочных элементов.
Ширина и высота элемента может быть задана следующими способами:

  • auto - Размеры элемента определяется его содержанием. (по умолчанию)
  • % - Размеры элемента задаётся в процентах от высоты/ширины элемента родителя.
  • px - Размеры элемента задаётся в пикселях или любых других единицах измерения принятых в CSS.
Пример:
Блок 1

Блок 2

Блок 3
Управление содержанием элемента

Что делать с содержанием элемента, если оно превышает его размер?

Если элементу присвоены точные значения высоты и ширины (height, width ) а его содержание, например длинный текст, не вмещается в указанных пределах, то по умолчанию такой элемент растягивается до нужных размеров, что не всегда на руку веб-мастеру. На помощь приходит атрибут overflow , который указывает браузеру, что делать с элементом в таких случаях.

Свойство overflow может иметь следующие значения:

  • visible - Элемент растягивается до необходимых размеров. (по умолчанию)
  • hidden - Содержание элемента "обрезается" видна лишь та его часть что помещается в элементе.
  • scroll - Добавляются полосы прокрутки (всегда! даже если содержание помещается в пределах элемента).
  • auto - Полосы прокрутки добавляются при необходимости.
Пример:
  • CSS


    CSS (англ. Cascading Style Sheets - каскадные таблицы стилей) - формальный язык описания внешнего вида документа, написанного с использованием языка разметки и т.д. ..............
Результат

CSS

CSS (англ. Cascading Style Sheets - каскадные таблицы стилей) - формальный язык описания внешнего вида документа, написанного с использованием языка разметки. Способы подключения CSS к документу
Правила CSS пишутся на формальном языке CSS и располагаются в таблицах стилей, то есть таблицы стилей содержат в себе правила CSS. Эти таблицы стилей могут располагаться как в самом веб-документе, внешний вид которого они описывают, так и в отдельных файлах, имеющих формат CSS. (По сути, формат CSS - это обычный текстовый файл. В файле.css не содержится ничего, кроме перечня правил CSS и комментариев к ним.) То есть, эти таблицы стилей могут быть подключены, внедрены в описываемый ими веб-документ четырьмя различными способами:
  1. Когда таблица стилей находится в отдельном файле, она может быть подключена к веб-документу посредством тега , располагающегося в этом документе между тегами и .
    (Тег будет иметь атрибут href, имеющий значением адрес этой таблицы стилей). Все правила этой таблицы действуют на протяжении всего документа;


    .....

  2. Когда таблица стилей находится в отдельном файле, она может быть подключена к веб-документу посредством директивы @import, располагающейся в этом документе между тегами и ) сразу после тега

  3. Когда таблица стилей описана в самом документе, она может располагаться в нём между тегами (которые, в свою очередь, располагаются в этом документе между тегами и ). Все правила этой таблицы действуют на протяжении всего документа;


    .....

  4. Когда таблица стилей описана в самом документе, она может располагаться в нём в теле какого-то отдельного тега (посредством его атрибута style) этого документа. Все правила этой таблицы действуют только на содержимое этого тега.

    Купи слона

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

Толщина рамки

Толщина рамки определяется свойством border-width , которое может иметь значения thin, medium и thick, или числовое значение в пикселах. На рисунке показана эта система:

Цвет рамки

Свойство border-color определяет цвет рамки. Значения - нормальные значения цвета, например: "#123456", "rgb(123,123,123)" или "yellow" .

Типы рамок

Существуют различные типы рамок. Ниже показаны восемь типов рамки и их интерпретация в Internet Explorer 5.5. Все примеры показаны цветом "gold" и толщиной "thick", но могут, естественно, выводиться другим цветом и толщиной.

Значения none или hidden могут использоваться, если вы не хотите отображать рамку.

Примеры определения рамок

Три рассмотренных выше свойства можно объединить в каждом элементе и, соответственно, устанавливать разные рамки. Для иллюстрации взглянем на документ, где определены разные рамки для

,

,
    и

    Результат, может быть, не столь впечатляющ, но он демонстрирует некоторые возможности:

    H1 { border-width: thick; border-style: dotted; border-color: gold; } h2 { border-width: 20px; border-style: outset; border-color: red; } p { border-width: 1px; border-style: dashed; border-color: blue; } ul { border-width: thin; border-style: solid; border-color: orange; }

    Можно также установить специальные свойства для верхнего, нижнего, правого и левого края рамки. Вот как это делается:

    H1 { border-top-width: thick; border-top-style: solid; border-top-color: red; border-bottom-width: thick; border-bottom-style: solid; border-bottom-color: blue; border-right-width: thick; border-right-style: solid; border-right-color: green; border-left-width: thick; border-left-style: solid; border-left-color: orange; }

    Сокращённая запись

    Как и для многих других свойств, вы можете объединить несколько свойств в одно, используя слово border. Пример:

    P { border-width: 1px; border-style: solid; border-color: blue; }

    можно объединить в:

    P { border: 1px solid blue; }

    Резюме

    В этом уроке вы познакомились с безграничными возможностями CSS при использовании рамок.

    В следующем уроке мы рассмотрим, как определять размеры в боксовой модели - height и width.

    CSS также позволяет нам создать сплошную, пунктирную или точечную рамку по воображаемой границе элемента Web-страницы.

    Атрибуты стиля border-left-width, border-top-width, border-right-width и border-bottom-width задают толщину, соответственно, левой, верхней, правой и нижней сторон рамки:

    border-left-width|border-top-width|border-right-width|

    border-bottom-width: thin|medium|thick|<толщина>|inherit

    Мы можем указать либо абсолютное или относительное числовое значение толщины рамки, либо одно из предопределенных значений: thin (тонкая), medium (средняя) или thick (толстая). В последнем случае реальная толщина рамки зависит от Web-обозревателя. Значение толщины по умолчанию также зависит от Web-обозревателя, поэтому ее всегда лучше устанавливать явно.

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

    А вот стиль, создающий у всех заголовков первого уровня рамку из одной только нижней стороны толщиной 5 пикселов:

    H1 { border-bottom-width: 5px }

    Фактически все заголовки первого уровня окажутся подчеркнутыми.

    Атрибут стиля border-width позволяет указать значения толщины сразу для всех сторон рамки:

    border-width: <толщина 1> [<толщина 2> [<толщина 3> [<толщина 4>]]]

    Если указано одно значение, оно задаст толщину всех сторон рамки.

    Если указаны два значения, первое задаст толщину верхней и нижней, а второе - левой и правой сторон рамки.

    Если указаны три значения, первое задаст толщину верхней, второе - левой и правой, а третье - нижней сторон рамки.

    Если указаны четыре значения, первое задаст толщину верхней, второе - правой, третье - нижней, а четвертое - левой сторон рамки .

    Пример:

    TD, TH { border-width: thin }

    Атрибуты стиля border-left-color, border-top-color, border-right-color и border-bottom-color задают цвет, соответственно, левой, верхней, правой и нижней сторон рамки:

    border-left-color|border-top-color|border-right-color|
    border-bottom-color: transparent|<цвет>|inherit

    Значение transparent задает "прозрачный" цвет, сквозь который будет "просвечивать" фон родительского элемента.

    ВНИМАНИЕ!

    Цвет рамки всегда следует задавать явно - в противном случае она может быть не нарисована.

    Пример:

    H1 { border-bottom-width: 5px
    border-bottom-color: red }

    Атрибут стиля border-color позволяет указать цвет сразу для всех сторон рамки:

    border-color: <цвет 1> [<цвет 2> [<цвет 3> [<цвет 4>]]]

    Он ведет себя так же, как и аналогичный атрибут стиля border-width:

    TD, TH { border-width: thin;
    border-color: black }

    Атрибуты стиля border-left-style, border-top-style, border-right-style и border-bottom-style задают стиль линий, которыми будет нарисована, соответственно, левая, верхняя, правая и нижняя сторона рамки :

    border-left-style|border-top-style|border-right-style|

    border-bottom-style: none|hidden|dotted|dashed|solid|double|groove|

    ridge|inset|outset|inherit

    Здесь доступны следующие значения:

    None и hidden - рамка отсутствует (обычное поведение);

    Dotted - пунктирная линия;

    Dashed - штриховая линия;

    Solid - сплошная линия;

    Double - двойная линия;

    Groove - "вдавленная" трехмерная линия;

    Ridge - "выпуклая" трехмерная линия;

    Inset - трехмерная "выпуклость";

    Outset - трехмерное "углубление".

    Пример:

    H1 { border-bottom-width: 5px
    border-bottom-color: red
    border-bottom-style: double }

    Атрибут стиля border-style позволяет указать стиль сразу для всех сторон рамки:

    border-style: <стиль 1> [<стиль 2> [<стиль 3> [<стиль 4>]]]

    Он ведет себя так же, как и аналогичные атрибуты стиля border-width и border-color.

    Пример:

    TD, TH { border-width: thin;
    border-color: black;
    border-style: dotted }

    Атрибуты стиля border-left, border-top, border-right и border-bottom позволяют задать все параметры для, соответственно, левой, верхней, правой и нижней стороны рамки :

    border-left|border-top|border-right|border-bottom:

    <толщина> <стиль> <цвет> | inherit

    Во многих случаях эти атрибуты стиля оказываются предпочтительнее:

    H1 { border-bottom: 5px double red }

    "Глобальный" атрибут стиля border позволяет задать все параметры сразу для всех сторон рамки:

    border: <толщина> <стиль> <цвет> | inherit
    TD, TH { border: thin dotted black }

    ВНИМАНИЕ!

    Рамки также увеличивают размеры элемента Web-страницы. Поэтому, если мы создадим рамки у блочных контейнеров, формирующих дизайн Web-страницы, то должны будем соответственно изменить размеры этих контейнеров, иначе они сместятся, и дизайн будет нарушен.

    Представление для нашего Web-сайта

    Сделаем отступы между контейнерами, формирующими дизайн наших Web-страниц, и между границами этих контейнеров и их содержимым.

    Внешний отступ между краями окна Web-обозревателя и содержимым Web-страницы равен нулю. Пусть пространство в окне Web-обозревателя используется максимально полно.

    НА ЗАМЕТКУ

    По умолчанию каждый Web-обозреватель создает свои отступы между краями своего окна и содержимым Web-страницы.

    Внутренние отступы в контейнере с заголовком Web-сайта (cheader) слева и справа - по 20 пикселов. Нам придется отодвинуть текст заголовка от краев окна Web-обозревателя, иначе заголовок будет выглядеть некрасиво.

    Внешний отступ между контейнерами с полосой навигации (cnavbar) и с основным содержимым (cmain) - 10 пикселов.

    Внутренние отступы у контейнера с основным содержимым (cmain) со всех сторон - по 5 пикселов.

    Внутренний отступ у контейнера с основным содержимым (cmain) сверху - 10 пикселов. Так мы отделим его от контейнеров cnavbar и cmain.

    Внутренние отступы в контейнере со сведениями об авторских правах (ccopyright) слева и справа - по 20 пикселов. Текст сведений об авторских правах также следует отодвинуть от краев окна Web-обозревателя.

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

    Теперь разделим все четыре контейнера рамками.

    Контейнер cheader получит рамку с одной нижней стороной.

    Контейнер cmain - рамку с одной левой стороной.

    Контейнер ccopyright - рамку с одной верхней стороной.

    Рамки мы сделаем тонкими и точечными. В качестве цвета зададим для них #B1BEC6 (светло-синий).

    В листинге 11.3 приведен исправленный фрагмент CSS-кода таблицы стилей main.css, реализующий выбранные нами параметры отступов и рамок.

    Давайте разберем его.

    Чтобы убрать отступ между границами окна Web-обозревателя и содержимым Web-страницы, мы использовали атрибут стиля margin. Его мы поместили в стиль переопределения тега и дали ему значение 0 пикселов:

    BODY { color: #3B4043;
    background-color: #F8F8F8;
    font-family: Verdana, Arial, sans-serif;
    margin: 0px }

    В именованном стиле cheader, привязанном к одноименному контейнеру, мы задали внутренние отступы слева и справа, равные 20 пикселам, и рамку с одной только нижней стороной. Эта рамка отделит данный контейнер от нижележащих:

    #cheader { width: 1010px;
    padding: 0 20px;
    border-bottom: thin dotted #B1BEC6 }

    Кроме того, мы задали в качестве ширины этого контейнера абсолютное значение. Вспомним: при выводе на экран контейнера с относительной шириной Web-обозреватель сначала вычислит абсолютное значение его ширины, а потом добавит к нему величину отступов. В результате чего контейнер станет шире, чем окно Web-обозревателя, и в окне появятся полосы прокрутки, что нам совсем не нужно. Поэтому для ширины контейнера лучше задать абсолютное значение, подобрав его так, чтобы контейнер гарантированно поместился в окно Web-обозревателя по ширине.

    В именованном стиле cnavbar мы указали внешний отступ справа 10 пикселов - он визуально отделит контейнер cnavbar от контейнера cmain:

    #cnavbar { width: 250px;
    height: 570px;
    float: left;
    margin-right: 10px }

    В именованном стиле cmain мы задали внутренние отступы и рамку с одной левой стороной - она отделит контейнер cmain от контейнера cnavbar:

    #cmain { width: 760px;
    height: 570px;
    float: left;
    overflow: auto;
    padding: 5px;
    border-left: thin dotted #B1BEC6 }

    В именованном стиле ccopyright мы задаем отступы слева и справа по 20 пикселов, а сверху - 10 пикселов. Кроме того, мы создаем рамку с одной верхней стороной, которая отделит контейнер ccopyright от вышерасположенных "соседей":

    #ccopyright { width: 1010px;
    clear: both;

    padding: 10px 20px 0px 20px;
    border-top: thin dotted #B1BEC6 }

    Вот и все. Сохраним таблицу стилей main.css и откроем Web-страницу index.htm в Web-обозревателе. Автор не будет приводить здесь иллюстрацию, т. к. созданные нами тонкие рамки на ней практически незаметны. Но на экране компьютера они выглядят весьма эффектно.

    Посмотрим теперь на полосу навигации. Невыразительные гиперссылки скучились в верхней части контейнера cnavbar, просто жалко на них смотреть!.. Давайте их сдвинем влево, немного "разредим", создав отступы, и заодно заключим каждую из них в рамки .

    Как мы помним, наша полоса навигации представляет собой список, а отдельные ее гиперссылки - пункты данного списка.

    Вот необходимые изменения:

    Список, формирующий полосу гиперссылок, сдвинуть влево на 30 пикселов. Так мы ликвидируем образовавшееся после удаления маркеров свободное пространство слева, которое смотрится некрасиво.

    Внешние отступы у пунктов списка сверху и снизу - 10 пикселов. Так мы отделим гиперссылки друг от друга.

    Рамка пунктов списка - тонкая, сплошная, цвет #B1BEC6.

    Внутренние отступы пунктов списка: сверху и снизу - по 5 пикселов, слева и справа - по 10 пикселов. Так мы отделим текст пунктов от рамок .

    Осталось только соответственно исправить CSS-код таблицы стилей main.css (листинг 11.4).

    Рассмотрим их подробнее.

    В именованный стиль navbar, привязанный к тегу списка, который формирует полосу навигации, мы добавили отступ слева, равный –30 пикселов. Благодаря этому список сместится влево, заполняя пустое пространство:

    #navbar { font-family: Arial, sans-serif;
    font-size: 14pt;

    text-transform: uppercase;
    list-style-type: none;
    margin-left: -30px }

    Вновь созданный комбинированный стиль создаст у пунктов списка, формирующего полосу навигации, рамку и задаст соответствующие отступы:

    #navbar LI { padding: 5px 10px;
    margin: 10px 0px;
    border: thin solid #B1BEC6 }

    Сохраним исправленную таблицу стилей и обновим открытую в Web-обозревателе Web-страницу index.htm, нажав клавишу . Стало значительно лучше, не так ли (рис. 11.1)?

    К созданию различных красивостей вокруг него, и первой такой красивостью будет рамка.

    Для начала рассмотрим, самые простые рамки. Для их создания, в CSS используется свойство border , которому можно задать следующие значения:

    solid – сплошная рамка;

    dashed – пунктирная рамка;

    dotted – точечная рамка;

    double – рамка двойной линией;

    groove – рамка с тенью;

    ridge — с рельефом;

    Ещё два свойства необходимые для создания простых рамок — это

    widht – толщина рамки;

    color – цвет рамки;

    Согласно техники сокращения, записываются значения, одной строкой, через пробел.

    p {
    border : 2px solid #ffff00 ;
    }

    padding – внутренний (отступ рамки от содержания);

    margin — внешний (отступ рамки от внешних объектов);

    Ещё для отступов задаются направления (с какой стороны на сколько отступить). Эти свойства применяются, когда возникает необходимость разместить содержимое не по центру рамки, или саму рамку с каким либо смещением.

    top – отступ сверху;

    righnt – отступ cправа;

    bottom – отступ снизу;

    left – отступ слева

    Записываются значения этих свойств в сокращённом варианте друг за другом (padding: 10px 30px 15px 20px ), и первым ставится значение top , а дальше по часовой стрелке остальные.

    Если поставить только одно значение, то это будет значить, что отступ со всех сторон будет одинаковый.

    p {
    border : 2px solid #ffff00 ;

    margin : 20px ;
    }

    Если нужно разместить текст, или изображение по центру рамки, то в селектор «p» можно добавить свойство text-align: center ;

    Далее рассмотрим, как задаются высота и ширина рамки . Высота рамки задаётся браузером автоматически, и выбирается таким образом, чтобы в нем уместилось содержание, с учётом заданных отступов. А вот ширину мы с вами будем задавать самостоятельно.

    Задаётся она свойством width, и в значении его указывается желаемый размер в пикселях, или других мерах длины, принятых в веб.

    p {
    border : 2px solid #ffff00 ;
    padding : 10px 20px 10px 20px ;
    margin : 20px ;
    width : 400px ;
    }

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

    И последнее, что необходимо сделать — это расположить рамку на странице. Делается это при помощи, уже имеющегося, свойства margin.

    А если нужно просто расположить блок рамки по центру страницы, то в свойство margin добавляется значение auto.

    p {
    border : 2px solid #ffff00 ;
    padding : 10px 20px 10px 20px ;
    margin : 20px auto ;
    width : 400px ;
    }

    Для первого примера создадим html документ, и создадим рамки solid для блока body (тело документа), и одному абзацу.

    В следующих примерах будет изменяться только CSS (то, что заключено в тег style ).





    Документ без названия



    Здравствуйте уважаемые будущие веб-мастера!
    Мне 55 лет и я рад приветствовать Вас на своём сайте.



    Результат:

    Следующая рамка dashed (пунктир).

    p{
    text-indent : 30px ;
    border : 2px dashed #ff4f00 ;
    padding : 10px 20px 10px 20px ;
    margin : 20px auto ;
    width : 400px ;
    }

    Результат:

    Рамка dotted :

    p {
    text-indent : 30px ;
    border : 3px dotted #ff4f00 ;
    padding : 10px 20px 10px 20px ;
    margin : 20px auto ;
    width : 400px ;
    }

    Рамка double :

    p {
    text-indent : 30px ;
    border : 5px double #ff4f00 ;
    padding : 10px 20px 10px 20px ;
    margin : 20px auto ;
    width : 400px ;
    }

    Рамка groove :

    p {
    text-indent : 30px ;
    border : 7px groove #ff4f00 ;
    padding : 10px 20px 10px 20px ;
    margin : 20px auto ;
    width : 400px ;
    }

    Рамка ridge :

    p {
    text-indent : 30px ;
    border : 10px ridge #ff4f00 ;
    padding : 10px 20px 10px 20px ;
    margin : 20px auto ;
    width : 400px ;
    }

    Для этого уберём border , и добавим border-radius и box-shadow .

    p {
    border-radius : 10px ;
    box-shadow : 0 0 0 3px #ff4f00 ;
    text-indent : 30px ;
    padding : 10px 20px 10px 20px ;
    margin : 20px auto ;
    width : 400px ;
    }

    Размоем внешний край рамки. Для этого в свойстве box-shadow , увеличим третью цифру.

    p {
    border-radius : 10px ;
    box-shadow : 0 0 7px 3px #ff4f00 ;
    text-indent : 30px ;
    padding : 10px 20px 10px 20px ;
    margin : 20px auto ;
    width : 400px ;
    }

    Сделаем разноцветную рамку. Для этого в свойство box-shadow , через запятую, добавим ещё несколько комплектов значений с разными цветами.

    p {
    border-radius : 10px ;

    0 0 0 7px #ffdb00 ,
    0 0 0 10px #00ffa2 ;
    text-indent : 30px ;
    padding : 10px 20px 10px 20px ;
    margin : 20px auto ;
    width : 400px ;
    }

    Можно сделать круг в рамке. Для этого зададим абзацу одинаковую высоту и ширину, то есть сделаем квадрат, изменим значение border-radius

    p {
    border-radius : 50%/50% ;
    box-shadow : 0 0 0 3px #ff4f00 ,
    0 0 0 7px #ffdb00 ,
    0 0 0 10px #00ffa2 ;
    padding : 40px ;
    margin : 20px auto ;
    width : 130px ;
    height : 130px ;
    text-align : center;
    }