Border round css: border-right-color — CSS: Cascading Style Sheets

Содержание

Границы в CSS (border, border-style, border-width, border-color, border-radius)

CSS свойство border — это универсальное свойство. Через его значение можно задать сразу несколько свойств: толщину границы, стиль и цвет. В коде это будет выглядеть так:

<div>Мышь</div>

В значении свойства border стоит сначала толщина (3px), затем стиль (solid) и в конце указан цвет (#c0d2de;). Результат будет таким:

Мышь

Свойство border универсальное. Поэтому если открыть редактор CSS кода в браузере (читайте об этом в статье «Редактор CSS в вашем браузере»), то можно увидеть стрелочку перед значением свойства: Если кликнуть на эту стрелочку, то выпадет весь список свойств, которые задаются этой строкой: Как можно увидеть, в списке перечисляются все четыре границы (-right-, -left-, -top-, -bottom-). И каждой из границ задаётся одно и то же значение свойств.

Если в названии свойств не ставить -right-, -left-, -top-, -bottom-, то значение свойств border-* будут автоматически применено ко всем четырём границам.

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

Стиль рамки (border-style)

Разберём на примерах различные значения свойства border-style:

none

— нет границ (толщина границ равна нулю)

hidden

— нет границ (то же самое, что и none)

dotted

— граница в виде точек

dashed

— граница в виде штрихов

solid

— сплошная линия

double

— двойная сплошная линия

groove

— линия в виде канавки или паза

ridge

— противоположность к groove

inset

— рамка с тенью с одной стороны

outset

— противоположность к inset — тень с другой стороны

Толщина рамки (border-width)

Значение свойства border-width задаётся в пикселях или в названии толщины. К примеру:

  • «thin» = 2 px
  • «medium» = 4 px
  • «thick» = 6 px

Примеры использования:

<div>Мышь</div>
<div>Мышь</div>

Мышь

Мышь

Цвет рамки (border-color)

Свойство border-color окрашивает рамку в определённый цвет. Значение этого свойства задаётся аналогично значению свойства «color», то есть через RGB, HEX или через название цвета (читайте больше в статье «Цвет текста (color)»).

Скругление краёв (border-radius)

Существует свойство «border-radius», которое часто используют на сайтах. Оно делает скругление краёв. В качестве значения ему можно задавать как пиксели, так и проценты. Приведём пример:

<div>Мышь</div>

Получится такой результат

Мышь

А если задать значение в процентах, то можно получить овал, задав значение скругления в 50%:

<div>Мышь</div>

Результат будет таким:

Мышь

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

Была ли эта статья полезна? Есть вопрос?

Закажите недорогой хостинг Заказать

всего от 290 руб

создаём закруглённые углы с помощью CSS — deadblog.ru

Замечательное свойство CSS3 border-raduis позволяет легко создавать закруглённые углы без использования изображений или лишних div тэгов. Это одно из полезнейших и обсуждаемых CSS3 свойств.

С первого анонса в 2005 году, свойство border radius стали поддерживать практически все современные браузеры (хоть и с некоторыми особенностями, о которых будет сказано ниже). А из-за простоты использования веб-разработчик может без труда применять данную технологию в своих проектах.

Приведу простой пример:

Бокс с закруглёнными углами, корректно отображающийся в Firefox, Safari/Chrome, Opera и IE9.

В теории, код для данного примера очень простой:

#example1 {
  border-radius: 15px;
}

Однако, не всё так просто. Для совместимости с Firefox, нужно использовать префикс -moz- (об этом читай секцию поддержки браузеров, moz border radius):

#example1 {
  -moz-border-radius: 15px;
  border-radius: 15px;
}

Как это работает

Существует два способа. Закруглённые углы можно создавать индивидуально для каждого угла, используя свойство border-*-radius (border-bottom-left-radius, border-top-left-radius, и т.д.), либо используя более короткое свойство border-radius.

Давайте для начала рассмотрим как использовать свойство для создания индивидуальных углов border-*-radius, а после разберём короткий аналог border-radius.

border-bottom-left-radius, border-bottom-right-radius, border-top-left-radius, border-top-right-radius

В качестве радиуса можно указать любое возможное для CSS значение (px, cm, in, em и др.), а также проценты (в этом случае радиус скругления считается от ширины блока).

В качестве радиуса можно указать любое возможное для CSS значение (px, cm, in, em и др.

), а также проценты (в этом случае радиус скругления считается от ширины блока).

Синтаксис:

border-*-*-radius: [ <length> | <%> ] [ <length> | <%> ]?

Пример:

border-top-left-radius: 10px 5px;
border-bottom-right-radius: 10% 5%;
border-top-right-radius: 10px;

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

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

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

Если какое-либо значение будет равно нулю, то угол будет квадратный, а не круглый.

border-radius

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

Синтаксис:

[ <length> | <percentage> ]{1,4} [ / [ <length> | <percentage> ]{1,4} ]?

Пример:

border-radius: 5px 10px 5px 10px / 10px 5px 10px 5px;
border-radius: 5px;
border-radius: 5px 10px / 10px;

Первый набор значений (1-4) определяет горизонтальные радиусы для всех четырёх углов. Опциональный второй набор значений, указаный после слеша, определяет вертикальные радиусы для всех четырёх углов. Если указан только один набор значений, то он используется одинаково для определения вертикальных и горизонтальных углов.

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

Поддержка браузеров

В настоящее время Opera (версия 10,5 и старше), Safari (версия 5 и старше) Chrome (версия 5 и старше) поддерживают как border-radius, так и индивидуальные свойства border-*-radius, описанные в текущей спецификации W3C (хотя ещё есть много мелких ошибок и несогласований, таких как например границы перехода, использование процентов в длине и т.д.).

Mozilla Firefox (версия 1.0 и старше) поддерживает свойство border-radius с префиксом -moz-, хоть и есть некоторые расхождения между реализацией Mozilla и текущей спецификацией W3C (об этом ниже).

Последние версии браузера Firefox понимают border-radius без префикса -moz-.

Safari и Chrome (а так-же другие браузеры, основанные на движке webkit) поддерживают border-radius с префиксом -webkit- начиная с 3 версии (с 5 версии префикс уже не нужен), но так-же с некоторыми отклонениями от текущей спецификации.

Internet Explorer 9 абсолютно так-же поддерживает свойство border radius.

Префикс -moz-

Начиная с 1-ой версии, браузер Mozilla Firefox поддерживает свойство border-radius с префиксом -moz-. Однако, браузер только начиная с версии 3.5 стал использовать эллиптические углы, т.е. стал принимать два значения для угла, что-бы определить вертикальный и горизонтальный радиусы самостоятельно. До версии 3.5 браузер принимает только по одному значению для каждого угла, в результате чего одинаковы вертикальные и горизонтальные радиусы для угла одинаковы.

Синтаксис, как и написано в данной статье использует префикс -moz-. Основное различие только в названиях отдельных границ свойства border-*-radius, с префиксом -moz- всё выглядит немного по другому:

W3C SpecificationMozilla Implementation
border-top-left-radius-moz-border-radius-topleft
border-top-right-radius-moz-border-radius-topright
border-bottom-right-radius-moz-border-radius-bottomright
border-bottom-left-radius-moz-border-radius-bottomleft

Метод с использованием процентов при реализации для браузера Mozilla немного отличается. Об этом можно подробней прочитать в Центре Разработчиков Mozilla здесь.

Кросс-браузерные примеры

Несколько базовых примеров, которые отлично работают в текущих версиях Firefox, Safari/Chrome, Opera и IE9:

A

B

C

D

E

F

 

#Example_A {
height: 65px;
width:160px;
-moz-border-radius-bottomright: 50px;
border-bottom-right-radius: 50px;
}
#Example_B {
height: 65px;
width:160px;
-moz-border-radius-bottomright: 50px 25px;
border-bottom-right-radius: 50px 25px;
}
#Example_C {
height: 65px;
width:160px;
-moz-border-radius-bottomright: 25px 50px;
border-bottom-right-radius: 25px 50px;
}
#Example_D {
height: 5em;
width: 12em;
-moz-border-radius: 1em 4em 1em 4em;
border-radius: 1em 4em 1em 4em;
}
#Example_E {
height: 65px;
width:160px;
-moz-border-radius: 25px 10px / 10px 25px;
border-radius: 25px 10px / 10px 25px;
}
#Example_F {
height: 70px;
width: 70px;
-moz-border-radius: 35px;
border-radius: 35px;
}

Примечание

Данная статья — это всего-лишь вольный перевод замечательной статьи Border-radius: create rounded corners with CSS!, которая естественно содержит ошибки и неточности перевода. Если таковые будут найдены — просьба сообщить мне (:

Радиус границы: создавайте закругленные углы с помощью CSS!

Tweet

Свойство CSS3 border-radius позволяет веб-разработчикам легко использовать более закругленные углы в своих элементах дизайна без необходимости использования угловых изображений или использования нескольких тегов div, и, возможно, это один из самых обсуждаемых аспектов CSS3. .

С момента первого анонса в 2005 году свойство boder-radius получило широкую поддержку браузеров (хотя и с некоторыми расхождениями), и благодаря относительной простоте использования веб-разработчики быстро освоили эту новую технологию.

Вот простой пример:

Это поле должно иметь закругленные углы для Firefox, Safari/Chrome, Opera и IE9.

Теоретически код для этого примера довольно прост:

#example1 {
border-radius: 15px;
}

Однако на данный момент вам также необходимо использовать префикс -moz- для поддержки Firefox (дополнительные сведения см. в разделе поддержки браузеров этой статьи):

#example1 {
-moz- радиус границы: 15px;
радиус границы: 15px;
}

Как это работает

Скругленные углы можно создавать независимо, используя четыре отдельных свойства border-*-radius (border-bottom-left-radius, border-top-left-radius и т. д.) или для всех четырех углов. одновременно используя сокращенное свойство border-radius.

Сначала мы рассмотрим синтаксис отдельных свойств border-*-radius, а затем рассмотрим, как работает сокращенное свойство border-radius.

граница-нижний-левый-радиус, граница-нижняя-правая-радиус, граница-верхний-левый-радиус, граница-верхний-правый-радиус

Каждое из свойств border-*-radius может принимать одно или два значения, выраженные в виде длины или процента (проценты относятся к соответствующим размерам рамки).

Синтаксис:

граница-*-*-радиус: [ <длина> | <%> ] [ <длина> | <%> ]?

Примеры:

border-top-left-radius: 10px 5px;
граница-нижний-правый-радиус: 10% 5%;
граница-верхний-правый-радиус: 10px;

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

Если указано только одно значение, оно используется для одинакового определения горизонтального и вертикального радиусов.

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

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

border-radius

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

Синтаксис:

[ <длина> | <процент> ]{1,4} [ / [ <длина> | <процент> ]{1,4} ]?

Примеры:

радиус границы: 5px 10px 5px 10px / 10px 5px 10px 5px;
радиус границы: 5 пикселей;
радиус границы: 5px 10px / 10px;

Первый набор значений (1-4) определяет горизонтальные радиусы для всех четырех углов. Необязательный второй набор значений, перед которым ставится «/», определяет вертикальные радиусы для всех четырех углов. Если предоставляется только один набор значений, они используются для одинакового определения как вертикали, так и горизонтали.

Для каждого набора значений применяется следующее:

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

Поддержка браузера

В настоящее время Opera (начиная с версии 10.5), Safari (начиная с версии 5) и Chrome (начиная с версии 5) поддерживают отдельные свойства border-*-radius и сокращенное свойство border-radius, как изначально определено в текущая спецификация W3C (хотя по-прежнему существуют нерешенные ошибки по таким вопросам, как переходы стилей границы, использование процентов для длины и т. д.).

Mozilla Firefox (начиная с версии 1. 0) поддерживает border-radius с префиксом -moz-, хотя между реализацией Mozilla и текущей спецификацией W3C есть некоторые расхождения (см. ниже).

Обновление: Последние ночные версии Firefox поддерживают border-radius без префикса -moz-.

Safari и Chrome (и другие браузеры на основе webkit) поддерживают border-radius с префиксом -webkit-, начиная с версии 3 (больше не требуется, начиная с версии 5), хотя опять же с некоторыми расхождениями с текущей спецификацией (см. эту статью для дополнительные сведения о том, как старые версии Webkit обрабатывают радиус границы).

Даже Microsoft пообещала и продемонстрировала в своем последнем предварительном выпуске поддержку border-radius из Internet Explorer 9.далее (без префикса).

Префикс -moz-

Браузер Mozilla Firefox поддерживает свойство border-radius с префиксом -moz- , начиная с версии 1.0. Однако только начиная с версии 3.5 в браузере разрешены эллиптические углы, т. е. принятие двух значений на угол для независимого определения горизонтального и вертикального радиусов. До версии 3.5 браузер принимал только одно значение для каждого угла, что приводило к углам с одинаковыми радиусами по горизонтали и вертикали.

Синтаксис, начиная с Firefox 3.5 и выше, в основном следует текущей спецификации W3C, как описано в этой статье, с префиксом -moz-. Единственное существенное различие заключается в именовании отдельных свойств border-*-radius, при этом свойства с префиксом -moz- следуют немного другому соглашению об именах, как показано ниже:

Спецификация W3C Реализация Mozilla
радиус границы -moz-граница-радиус
граница-верхний-левый-радиус -moz-border-radius-topleft
граница-верхний-правый-радиус -moz-border-radius-topright
граница-нижняя-правая-радиус -moz-border-radius-bottomright
граница-нижний-левый радиус -moz-border-radius-bottomleft

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

Кросс-браузерные примеры

Вот несколько основных примеров, которые должны работать в текущих версиях Firefox, Safari/Chrome, Opera и даже IE9:

A

B

C

D 3 71007

7 E

6 E

#Example_A {
высота: 65 пикселей;
ширина: 160 пикселей;
-moz-border-radius-bottomright: 50px;
граница-нижний-правый-радиус: 50px;
}

#Example_B {
высота: 65 пикселей;
ширина: 160 пикселей;
-moz-border-radius-bottomright: 50px 25px;
граница-нижний-правый-радиус: 50px 25px;
}

#Example_C {
высота: 65 пикселей;
ширина: 160 пикселей;
-moz-border-radius-bottomright: 25px 50px;
граница-нижний-правый-радиус: 25px 50px;
}

#Example_D {
height: 5em;
ширина: 12см;
-moz-border-radius: 1em 4em 1em 4em;
радиус границы: 1em 4em 1em 4em;
}

#Example_E {
высота: 65 пикселей;
ширина: 160 пикселей;
-moz-border-radius: 25px 10px / 10px 25px;
радиус границы: 25px 10px / 10px 25px;
}

#Example_F {
высота: 70 пикселей;
ширина: 70 пикселей;
-moz-border-radius: 35px;
радиус границы: 35 пикселей;
}

Дополнительные примечания и дополнительная литература

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

Это лучше всего объясняется в следующих разделах спецификации:

  • 4.4.1 Формирование углов
  • 4.4.2 Обрезка углов
  • 4.4.3 Переходы цвета и стиля
  • 4.4.4 Перекрывающиеся кривые
  • 4.4.5 Влияние на таблицы

НАШИ СПОНСОРЫ

Реклама здесь?

TAG CLOUD

Easy Rounded Corners with Border-Radius

Царство CSS — это царство прямоугольников. Все на странице — это коробка, внутри коробки, внутри коробки. Неудивительно, что начинающие разработчики CSS (или, в моем случае, плохие графические дизайнеры со слишком большим опытом работы с CSS) так часто создают квадратные макеты!

Тем не менее, предстоящая спецификация CSS3 предлагает нам проблеск надежды в виде закругленных углов . Правильно — как только CSS3 станет общедоступной, мы сможем защитить все эти заостренные края от детей и при этом украсить Интернет.

И что еще лучше, несколько браузеров уже поддерживают закругленные углы! Пока я пишу это, вы в значительной степени ограничены Mozilla/Firefox и Safari 3. Однако этот список со временем будет расти, поэтому не помешает начать играть с этой функцией. Тем более, что в браузерах, которые не поддерживают скругление углов, ничего страшного не происходит — пользователь видит обычные, прямые углы.

На данный момент, чтобы заставить код работать, вы вынуждены использовать проприетарные теги CSS: они не будут проверяться, но будут просто игнорироваться браузерами, которые их не поддерживают. Сам код довольно прост; например, чтобы создать блок div с красивыми закругленными углами радиусом 5 пикселей, нужно написать что-то вроде этого:

 div.rounded {
цвет фона: #666;
цвет: #fff;
вес шрифта: полужирный;
отступ: 10 пикселей;
-moz-border-radius: 5px;
-webkit-border-radius: 5px; } 

И это правило создаст div следующего вида:

Здесь следует отметить два свойства: «-moz-border-radius» и «-webkit-border-radius». Первый — это способ указать радиус — количество пикселей от гипотетической центральной точки до края круга, созданного закругленным углом (см. изображение ниже) — в браузерах на основе Mozilla. Последний делает то же самое, но для Safari.

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

 цитата {
поле: 1em 20px;
отступ: 10 пикселей;
граница: 2px сплошная #555;
цвет фона: #f2f2f2;
цвет: #555;
размер шрифта: 140%;
выравнивание текста: по ширине;
-moz-border-radius: 10px;
-webkit-border-radius: 10px; } 

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

И, наконец, вы также не ограничены ни всеми закругленными углами, ни отсутствием их. Используя это свойство, вы можете указать, какие углы вы хотите скруглить в своем CSS. Однако важно отметить, что версия этого правила для Firefox немного отличается от стандарта W3C, то есть она написана несколько иначе, чем правило для Safari. Например, рассмотрим эти два правила, используемые для закругления верхнего левого угла блока:

 -moz-border-radius-topleft: 5px;
-webkit-border-top-left-radius: 5px; 

Это небольшая разница, по большому счету, но очень важная, если вы хотите, чтобы ваши закругленные углы появлялись там, где и как они должны быть! Используя возможность закругления отдельных углов, вы можете генерировать причудливые предупреждающие сообщения:

 .alert {
граница: 2px сплошная #fc0;
отступ: 8px 10px;
размер шрифта: 120%;
цвет: #c90;
вес шрифта: полужирный;
цвет фона: #ff9;
-moz-border-radius-topleft: 8px;
-webkit-border-top-left-radius: 8px;
-moz-border-radius-bottomright: 8px;
-webkit-border-bottom-right-radius: 8px; } 

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

 .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *