CSS box-shadow
Пример
Добавление теней к различным элементам <div>:
#example1 {box-shadow: 5px 10px;
}
#example2 {
box-shadow:
5px 10px #888888;
}
Подробнее примеры ниже.
Определение и использование
Свойство box-shadow
присоединяет одну или несколько теней к элементу.
Значение по умолчанию: | none |
---|---|
Inherited: | no |
Animatable: | yes. Читайте о animatable |
Version: | CSS3 |
Синтаксис JavaScript: | object.style.boxShadow=»10px 20px 30px blue» |
Поддержка браузера
Номера в таблице указывают первую версию браузера, которая полностью поддерживает свойство.
Номера followed by -webkit- or -moz- Укажат первую версию, которая работала с префиксом.
Свойство | |||||
---|---|---|---|---|---|
box-shadow | 10. 0 4.0 -webkit- | 9.0 | 4.0 3.5 -moz- | 5.1 3.1 -webkit- | 10.5 |
Синтаксис CSS
box-shadow: none|h-offset v-offset blur spread color |inset|initial|inherit;
Примечание: Чтобы прикрепить к элементу более одной тени, добавьте список теней с разделителями-запятыми (SE «Попробуйте сами» пример ниже).
Значения свойств
Значение | Описание | |
---|---|---|
none | Значение по умолчанию. Тень не отображается | |
h-offset | Обязательно. Горизонтальное смещение тени. Положительное значение кладет тень на правую сторону коробки, отрицательное значение кладет тень на левую сторону коробки | |
v-offset | Обязательно. Смещение тени по вертикали. Положительное значение кладет тень под коробку, отрицательное значение кладет тень над коробкой | |
blur | Дополнительные. Радиус размытия. Чем выше число, тем более размытой будет тень | |
spread | Дополнительные. Радиус разворота. Положительное значение увеличивает размер тени, отрицательное значение уменьшает размер тени | |
color | Дополнительные. Цвет тени. Значением по умолчанию является цвет текста. Посмотрите на значения цвета CSS для полного списка возможных значений цвета. Примечание: В Safari (на ПК) параметр Color является обязательным. Если цвет не указан, тень не отображается вовсе. | |
inset | Дополнительные. Изменяет тень от внешней тени (вначале) на внутреннюю тень | |
initial | Присваивает этому свойству значение по умолчанию. (Читайте о initial) | |
inherit | Наследует это свойство из родительского элемента. (Читайте о inherit) |
Совет: ПодроБнее о допустимых значениях (единицы измерения длины CSS)
Другие примеры
Пример
Добавьте эффект размытия в тень:
#example1 {
box-shadow: 10px 10px 8px #888888;
}
Пример
Определите радиус разворота тени:
#example1 {
box-shadow: 10px 10px 8px 10px #888888;
}
Пример
Определите несколько теней:
#example1 {
box-shadow: 5px 5px blue, 10px 10px
red, 15px 15px green;
}
Пример
Добавьте ключевое слово вставки:
box-shadow: 5px 10px inset;
}
Пример
Изображения, брошенные на стол. В этом примере демонстрируется создание снимков «Polaroid» и поворот рисунков:
div.polaroid {
width: 284px;
padding: 10px 10px 20px 10px;
border: 1px solid
#BFBFBF;
background-color: white;
box-shadow: 10px 10px 5px #aaaaaa;
}
Похожие страницы
CSS Справочник: CSS Rounded Corners
HTML DOM Справочник: boxShadow Свойство
CSS свойство box-shadow | назначение, допустимые значения, примеры
Свойство box-shadow задает эффект тени элементу. При этом размер элемента не меняется (несмотря на то что тень может быть расположена далеко за пределами элемента).
Значения свойства задает список теней, каждая из которых имеет цвет(необязательный параметр) 2 значения смещения по осям, радиус размывания(необязательный параметр) и радиус распространения (необязательный параметр). Порядок значений строго определен.
Смещение тени задается относительно верхнего левого угла текста. Положительные значения смещения сдвигают тень вправо и вниз, отрицательные влево и вверх.
Допустимые значения
- none — элемент не имеет тени.
- — тень элемента. Теней может быть несколько, описание каждой может содержать следующие параметры:
- inset — ключевое слово, которое говорить о том, что тень внутренняя.
- — смещение тени по оси, радиус размыва и радиус распространения.
Значение по умолчанию | none |
---|---|
Применимо | ко всем элементам |
Наследование | нет |
Версия CSS | CSS 3 |
Поддерживается браузерами |
Пример
h2 {
box-shadow: inset 0px 3px 0px 3px #000, 3px 10px ;
}
Твой код:
<html> <head> <title></title> <style type=»text/css»> <!— .Результат:
большой полигонЗаметки
Safari 3 и выше и Chrome 1 и выше поддерживают аналогичное свойство -webkit-box-shadow, а Firefox 3.5 и выше -moz-box-shadow. Свойство -webkit-box-shadow поддерживает возможность задать множественные тени только для Safari 4.0 и выше, и не поддерживает возможности задать радиус распространения тени. Внутреннюю тень для свойства -webkit-box-shadow поддерживает только Chrome 4 и выше.
Свойство box-shadow. CSS справочник | Vaden Pro
Характеристики свойства
В каких браузерах работает?
9. 0+ | 10.0+ | 10.5+ | 5.1+ | 4.0+ | 4.0+ | 5.0+ |
В каких версиях CSS используется?
CSS 1 | CSS 2 | CSS 2.1 | CSS 3 |
— | — | — | + |
Для чего используется?
По работе и свойствам близок к border. Отличие заключается в том, что в качестве рамки объекта выступает тень. Это свойство создает эффект трехмерного элемента, приносит таблице или блоку объем. Скругление влияет на тень, как и на рамку — она скругляется. Тень занимает дополнительное пространство на страничке, поэтому при использовании этого свойства следует оставлять дополнительное место для нее.
Как правильно задавать?
box-shadow: параметры тени;
Какие могут быть значения?
- none — выключает эффект тени.
- inset — создает тень внутри объекта, что создает эффект вдавленности.
- сдвиг по x (описывается числом) — управляет углом падения тени, а точнее смещение ее относительно горизонтальной оси.
- сдвиг по y (описывается числом) — управляет углом падения тени, а точнее смещение ее относительно вертикальной оси.
- размытие — можно сгладить эффект тени, то есть осветлить ее и снизить контраст при переходе от заднего фона к тени.
- растяжение — растягивает тень в длину и ширину (в зависимости от того, как указан сдвиг). При указании отрицательного значения этого параметра тень сужается и уменьшается.
- цвет
— задает окрас тени в соответствии с кодировкой цветов.
Допустимо задавать параметры тени для каждой стороны отдельно, разделяя значения запятой. Первое значение будет соответствовать верхней стороне, а дальше по порядку по часовой стрелке.
Пример использования
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Свойство box-shadow</title> <style> div{ background: #b04d4d; box-shadow: 0 0 20px #000; padding: 20px; color:#eee; text-align:center; } </style> </head> <body> <div>Собака - самый верный и преданный друг человека!</div> </body> </html>
По итогу получаем
Оценок: 3 (средняя 5 из 5)
Тип CSS свойства:
CSS box-shadow не работает
Вопрос:
Почему эта тень CSS не работает?
HTML
<img src="http://placecage. com/90/90" />
CSS
IMG {
-webkit-box-shadow: inset 0px 0px 108px 7px #000000;
-moz-box-shadow: inset 0px 0px 108px 7px #000000;
-ms-box-shadow: inset 0px 0px 108px 7px #000000;
-o-box-shadow: inset 0px 0px 108px 7px #000000;
box-shadow: inset 0px 0px 108px 7px #000000;
}
Я пробовал это во всех браузерах. Я пробовал это в jsFiddle. Я пробовал разные значения. Я пробовал разные способы выразить цвет. Я пробовал много браузеров.
благодаря
Лучший ответ:
тени на inset
не работают с элементами изображения.
Один из способов, которым вы можете достичь этого, заключается в том, что другой элемент div перекрывает элемент изображения
Вот пример: http://jsfiddle.net/STcTN/2/
<div>
<img src="http://placecage.com/90/90" />
</div>
.img-container{
width: 90px; height: 90px;
position: relative;
}
. img-container:after{
content: '';
top:0; left:0; right:0; bottom:0;
position: absolute;
-webkit-box-shadow: inset 0px 0px 10px 7px #000000;
-moz-box-shadow: inset 0px 0px 10px 7px #000000;
-ms-box-shadow: inset 0px 0px 10px 7px #000000;
-o-box-shadow: inset 0px 0px 10px 7px #000000;
box-shadow: inset 0px 0px 10px 7px #000000;
}
Ответ №1
Вы не можете использовать тени вставки CSS3 на изображениях, как описано в этой статье
Лучший способ достичь этой цели – добавить к изображениям элемент абсолютной позиции, привязку или div.
Ответ №2
Вероятно, вам нужно будет содержать ваше изображение и применить к нему тень, или, если возможно, изображение будет использовано в качестве фона для контейнера.
HTML
<div>
<img src="http://placecage.com/90/90" />
</div>
<div></div>
CSS
div {
width:90px;
height:90px;
-webkit-box-shadow: inset 0px 0px 108px 7px #000000;
-moz-box-shadow: inset 0px 0px 108px 7px #000000;
-ms-box-shadow: inset 0px 0px 108px 7px #000000;
-o-box-shadow: inset 0px 0px 108px 7px #000000;
box-shadow: inset 0px 0px 108px 7px #000000;
}
img{
opacity:0. 5;
}
div.as-background{
margin-top:20px;
width:90px;
height:90px;
background:url('http://placecage.com/90/90') no-repeat 0 0;
}
Вот скрипка
Вы можете видеть, что тень окна вставки поддерживает фоновое изображение, так как вам нужно уменьшить непрозрачность, чтобы увидеть ее прямо за ней. Надеюсь, это поможет.
Как использовать CSS box-shadow: 13 приемов и примеров
CSS — это язык, который разработчики используют для стилизации веб-страницы. Он контролирует, как элементы HTML отображаются на экране, на бумаге или на любом другом носителе. CSS предоставляет все возможности настройки для стилизации веб-страницы под ваше собственное изображение.
Вы можете изменить цвет фона элемента, стиль шрифта, цвет шрифта, тень блока, поля и многие другие свойства с помощью CSS. В этом руководстве мы расскажем, как эффективно использовать box-shadow.
Что такое CSS box-shadow?
Свойство box-shadow используется для применения тени к элементам HTML. Это одно из наиболее часто используемых свойств CSS для стилизации блоков или изображений.
Синтаксис CSS:
box-shadow: [смещение по горизонтали] [смещение по вертикали] [радиус размытия] [необязательный радиус распространения] [цвет];
- смещение по горизонтали: Если смещение по горизонтали положительное, тень будет справа от поля. А если смещение по горизонтали отрицательное, тень будет слева от поля.
- вертикальное смещение: Если вертикальное смещение положительное, тень будет ниже прямоугольника. И если вертикальное смещение отрицательное, тень будет над прямоугольником.
- радиус размытия: Чем выше значение, тем более размытой будет тень.
- Радиус распространения: Указывает, насколько должна распространяться тень.Положительные значения увеличивают разброс тени, отрицательные значения уменьшают разброс.
- Цвет: Обозначает цвет тени. Кроме того, он поддерживает любой цветовой формат, такой как rgba, hex или hsla.
Параметры размытия, распространения и цвета не являются обязательными. Самая интересная часть box-shadow заключается в том, что вы можете использовать запятую для разделения значений box-shadow любое количество раз.Это можно использовать для создания нескольких границ и теней на элементах.
1.Добавьте тусклую тень блока слева, справа и снизу блока
Вы можете добавить очень тусклые тени к трем сторонам (левой, правой и нижней) поля, используя следующий CSS-код box-shadow с вашим целевым HTML-элементом:
box-shadow: rgba (149, 157, 165, 0. 2) 0px 8px 24px;
Выход:
2.
Добавить затемненную тень коробки ко всем сторонамВы можете добавить легкие тени ко всем сторонам поля, используя следующий CSS-код box-shadow с вашим целевым HTML-элементом:
box-shadow: rgba (100, 100, 111, 0. 2) 0px 7px 29px 0px;
Выход:
3.
Добавьте тонкую тень блока на нижнюю и правую стороныВы можете добавить тени в нижнюю и правую часть поля, используя следующий CSS-код box-shadow с вашим целевым HTML-элементом:
box-shadow: rgba (0, 0, 0, 0. 15) 1.95px 1.95px 2.6px;
Выход:
4.
Добавить темную тень коробки ко всем сторонамВы можете добавить темную тень ко всем сторонам поля, используя следующий CSS-код box-shadow с вашим целевым HTML-элементом:
box-shadow: rgba (0, 0, 0, 0. 35) 0px 5px 15px;
Выход:
5.
Добавить рассеянную тень ко всем сторонамВы можете добавить рассеянную тень ко всем сторонам поля, используя следующую команду с вашим целевым HTML-элементом:
box-shadow: rgba (0, 0, 0, 0. 25) 0px 54px 55px, rgba (0, 0, 0, 0.12) 0px -12px 30px, rgba (0, 0, 0, 0.12) 0px 4px 6px, rgba (0, 0, 0, 0.17) 0px 12px 13px, rgba (0, 0, 0, 0,09) 0px -3px 5px;
Выход:
6.
Добавить тонкую тень на все стороныВы можете добавить простую тень границы ко всем сторонам поля, используя следующий CSS с вашим целевым элементом HTML:
box-shadow: rgba (6, 24, 44, 0. 4) 0px 0px 0px 2px, rgba (6, 24, 44, 0.65) 0px 4px 6px -1px, rgba (255, 255, 255, 0,08) 0px 1px 0px вставка;
Выход:
7.
Добавьте тень блока на нижнюю и левую стороныВы можете добавить тень к нижней и левой сторонам поля, используя следующий CSS-код box-shadow с вашим целевым HTML-элементом:
box-shadow: rgba (0, 0, 0, 0. 1) -4px 9px 25px -6px;
Выход:
8.
Добавьте тусклую тень блока на верхнюю и левую стороны, темную тень на нижнюю и правую стороныВы можете добавить светлую тень к верхней и левой стороне поля, а также темную тень к нижней и правой сторонам поля, используя следующий CSS с вашим целевым элементом HTML:
box-shadow: rgba (136, 165, 191, 0. 48) 6px 2px 16px 0px, rgba (255, 255, 255, 0.8) -6px -2px 16px 0px;
Выход:
9.
Добавить тонкую цветную тень на все стороныВы можете добавить простую цветную тень границы ко всем сторонам поля, используя следующий CSS-код box-shadow с вашим целевым HTML-элементом:
box-shadow: rgba (3, 102, 214, 0. 3) 0px 0px 0px 3px;
Выход:
10.
Добавьте несколько цветных границ теней на нижнюю и левую стороны коробкиВы можете добавить несколько цветных теней к нижней и левой сторонам поля, используя следующий CSS с вашим целевым элементом HTML:
box-shadow: rgba (50, 50, 93, 0. 25) 0px 30px 60px -12px вставка, rgba (0, 0, 0, 0.3) 0px 18px 36px -18px вставка;
Выход:
11.
Добавить несколько цветных границ теней на нижнюю частьВы можете добавить несколько цветных теней к нижней части поля, используя следующий CSS-код box-shadow с вашим целевым HTML-элементом:
box-shadow: rgba (240, 46, 170, 0. 4) 0px 5px, rgba (240, 46, 170, 0.3) 0px 10px, rgba (240, 46, 170, 0,2) 0px 15px, rgba (240, 46, 170, 0,1) 0px 20px, rgba (240, 46, 170, 0,05) 0px 25px;
Выход:
12.
Добавьте несколько цветных границ теней на нижнюю и правую стороны коробкиВы можете добавить несколько цветных теней к нижней и правой сторонам поля, используя следующий CSS с вашим целевым элементом HTML:
box-shadow: rgba (240, 46, 170, 0. 4) 5px 5px, rgba (240, 46, 170, 0,3) 10px 10px, rgba (240, 46, 170, 0,2) 15px 15px, rgba (240, 46, 170, 0,1) 20px 20px, rgba (240, 46, 170, 0,05) 25px 25px;
Выход:
13.
Добавьте светлые тени на левую и правую стороны, распространите тень на нижнюю частьВы можете добавить легкие тени к левой и правой сторонам и распространить тень на нижнюю часть поля, используя следующий CSS-код box-shadow с вашим целевым HTML-элементом:
box-shadow: rgba (0, 0, 0, 0. 09) 0px 2px 1px, rgba (0, 0, 0, 0.09) 0px 4px 2px, rgba (0, 0, 0, 0.09) 0px 8px 4px, rgba (0, 0, 0, 0.09) 0px 16px 8px, rgba ( 0, 0, 0, 0,09) 0px 32px 16px;
Выход:
Интеграция CSS с HTML-страницей
Теперь вы знаете, как добавлять классные эффекты тени блока с помощью CSS, вы можете легко интегрировать их с элементами HTML разными способами.
Связано: 11 полезных инструментов для проверки, очистки и оптимизации файлов CSS
Вы можете встроить его в саму HTML-страницу или прикрепить как отдельный документ. Есть три способа включить CSS в HTML-документ:
Внутренний CSS
Встроенные или внутренние таблицы стилей вставляются в раздел HTML-документа с помощью элемента
Стиль 4