Как сделать слой полупрозрачным?
Сделать блочный элемент со всем его содержимым полупрозрачным.
Решение
Для изменения степени прозрачности элемента применяется стилевое свойство opacity со значением от 0 до 1, где 0 соответствует полной прозрачности, а 1, наоборот, непрозрачности объекта. В браузере Internet Explorer это свойство не работает, поэтому специально для него приходится использовать filter , свойство, не входящее в спецификацию CSS. В примере 1 показано, как установить прозрачность слоя для всех браузеров.
Пример 1. Полупрозрачный слой
HTML5 CSS 2.1 IE Cr Op Sa Fx
Полупрозрачный слой
Результат данного примера показан на рис. 1.
Рис. 1. Полупрозрачный слой в браузере Safari
Свойство filter добавляет прозрачность только для тех элементов, где установлен хотя бы один из размеров ( width или height ) или для элемента задано абсолютное позиционирование ( position : absolute ).
Также учтите, что прозрачность действует на всё содержимое слоя, включая дочерние элементы, и увеличить для них уровень непрозрачности за счет варьирования opacity не получится. В примере 1, где прозрачность слоя установлена как 0.7 , текст внутри слоя получает такое же значение. Его допустимо установить меньше, но превысить значение прозрачности 0.7 текст уже не может.
Сделать блок посередине прозрачным

Как сделать так, чтобы желтый блок стал прозрачным и была видна картинка сверху, на которой написано «Сайт»??
Отслеживать
user262779
задан 29 апр 2018 в 9:05
41 4 4 бронзовых знака
3 ответа 3
Сортировка: Сброс на вариант по умолчанию
Прозрачность блоков достигается несколькими способами:
- с помощью альфа канала любого цвета используя rgba() и hsla() (указывается четвертым параметром цвета в диапазоне от 0 до 1);
- с помощью свойства opacity , так-же прозрачность указывается в диапазоне от 0 до 1;
- функция opacity() задаёт степень прозрачности изображений.
Также изучите вариант с наложением изображения или фона один на другой.
Посмотрите вот тут, что и как. Я думаю вам это пригодится.
Литература
Отслеживать
ответ дан 29 апр 2018 в 9:33
user262779 user262779
Да, opacity тоже подходит, но дочерние элементы также становятся прозрачными
29 апр 2018 в 9:41
Но как быть в моём случае? Если я делаю желтый блок полностью прозрачным, тогда полностью виден красный блок. А мне надо, чтобы ТОЛЬКО центр красного блока был прозрачным.
29 апр 2018 в 9:48
Блин, часто комментарий редактируете, я не успеваю читать изменения. Спасибо, гляну.
29 апр 2018 в 9:50
Правда я представления не имею для чего это надо
* < margin: 0; padding: 0; >body < padding-top: 150px; background-color: yellow; >header < position: fixed; top: 0; left: 0; background: url(), rgba(100, 100, 100, 1); padding: 0 23%; color: #fff; line-height: 150px; >footer < background: url(), rgba(220, 180, 180, 1); >header, footer < display: block; width: 100%; height: 150px; background-size: cover; >main < display: block; width: 100%; min-height: 500px; background-image: linear-gradient(90deg, red 0%, red 20%, rgba(255, 255, 255, .6) 20%, rgba(255, 255, 255, .6) 80%, red 80%, red 100%); position: relative; >.post < width: 50%; margin: 40px auto; >.post:first-child, .post:last-child
site Lorem ipsum dolor sit amet consectetur adipisicing elit. Maiores officiis voluptatum vitae totam explicabo ratione ducimus perferendis eligendi eum quisquam voluptate nulla, et consequuntur eius recusandae sunt minima sequi expedita debitis corrupti aut incidunt. Nulla odit facere earum consequuntur unde?
Lorem ipsum dolor sit amet consectetur adipisicing elit. Maiores officiis voluptatum vitae totam explicabo ratione ducimus perferendis eligendi eum quisquam voluptate nulla, et consequuntur eius recusandae sunt minima sequi expedita debitis corrupti aut incidunt. Nulla odit facere earum consequuntur unde?
Lorem ipsum dolor sit amet consectetur adipisicing elit. Maiores officiis voluptatum vitae totam explicabo ratione ducimus perferendis eligendi eum quisquam voluptate nulla, et consequuntur eius recusandae sunt minima sequi expedita debitis corrupti aut incidunt. Nulla odit facere earum consequuntur unde?
Lorem ipsum dolor sit amet consectetur adipisicing elit. Maiores officiis voluptatum vitae totam explicabo ratione ducimus perferendis eligendi eum quisquam voluptate nulla, et consequuntur eius recusandae sunt minima sequi expedita debitis corrupti aut incidunt. Nulla odit facere earum consequuntur unde?
Lorem ipsum dolor sit amet consectetur adipisicing elit. Maiores officiis voluptatum vitae totam explicabo ratione ducimus perferendis eligendi eum quisquam voluptate nulla, et consequuntur eius recusandae sunt minima sequi expedita debitis corrupti aut incidunt. Nulla odit facere earum consequuntur unde?
Lorem ipsum dolor sit amet consectetur adipisicing elit. Maiores officiis voluptatum vitae totam explicabo ratione ducimus perferendis eligendi eum quisquam voluptate nulla, et consequuntur eius recusandae sunt minima sequi expedita debitis corrupti aut incidunt. Nulla odit facere earum consequuntur unde?
Прозрачность элементов CSS

В CSS есть три способа изменить прозрачность элемента:
с помощью свойства opacity ,
с помощью функции rgba() ,
с помощью функции hsla() .
1. Свойство opacity
Свойство opacity позволяет сделать любой элемент веб-страницы частично или полностью прозрачным. Данное свойство изменяет прозрачность элементов, для которых установлено фоновое изображение (картинка) или задан фон с помощью цвета или градиента. Если элемент, для которого применено свойство opacity , содержит внутри себя другие элементы, то они также изменят свою прозрачность.
Свойство opacity принимает значения в диапазоне от 0 (полностью прозрачный) до 1 (непрозрачный), например:
h1 div

2. Функция rgba()
Цветовая модель RGBA создает цветовой оттенок путем смешивания в необходимых пропорциях красного (Red), зеленого (Green) и синего (Blue) цветов, а альфа-канал (Alpha) отвечает за степень прозрачности цвета. В отличие от свойства opacity , для блока, содержащего другие элементы, функция rgba() изменит прозрачность только блока.
h1 div

3. Функция hsla()
Функция hsla() , параметры которой означают тон (Hue), насыщенность (Saturation), яркость (Lightness) и альфа-канал (Alpha), также позволяет задать полупрозрачный цвет.
Оттенки цвета задаются в процентах, используя соответствующее значение из цветового круга. Сам круг разбит на сектора, на границах которых находятся основные цвета:
0/360° — красный цвет
60° — желтый цвет
120° — зеленый цвет
180° — голубой цвет
240° — синий цвет
270° — фиолетовый цвет
300° — пурпурный цвет .
Чтобы получить черный цвет, нужно присвоить показателям тона, насыщенности и яркости нулевое значение — hsla(0, 0%, 0%, 1) . Белый цвет получается при 100%-ном значении яркости hsla(0, 0%, 100%, 1) , а серый цвет — при нулевом значении насыщенности hsla(0, 0%, 50%, 1) .

Удобный конвертер цветов вы найдете здесь.
Как сделать блок прозрачным в css

Вы хотите научиться создавать страницы с оригинальным и ярким современным дизайном? Применение полупрозрачных элементов способно помочь Вам в решении этой непростой задачи. Сегодня мы рассмотрим основные практические способы задания прозрачности структурных элементов.
Как задать прозрачность?
- Свойство opacity.
- Использование PNG -картинки
- Формат системы RGBA
- Ну, и наконец, древность или клетчатые изображения.
CSS свойство Opacity
Применение стилевого CSS свойства оpacity позволяет задать прозрачность того элемента, к которому применяется. Значения, которые можно использовать в качестве аргумента изменяются в пределах от 0 до 1.
Рассмотрим пример.
DOCTYPE html> html> head> title>TODO supply a titletitle> meta charset="UTF-8"> link rel="stylesheet" media="all" type="text/css" href="css/style2.css" /> head> body> div class=" prozrachen "> Тут будет много Вашего текста div> body> html>
body background: url(./vaden-pro-logo.png); /* Фон для тела страницы */ > . prozrachen padding: 10px; /*Отступы для текста*/ background: darkturquoise; /* Задаем цвет фона */ margin: 0 auto; /* Центрируем блок */ width: 50%; /* Задаем ширину блока */ opacity: 0.7; /* Задаем прозрачность */ font: 48px/64px Times New Roman; text-align: justify; >
В результате мы получили полупрозрачный блок:

- Opacity принимает значения из диапазона: 0 (полная прозрачность) — 1 (непрозрачность).
- Кросс-браузерность. В IE до седьмой версии включительно Opacity не поддерживается. Добиться одинакового отображения элемента поможет следующая строчка:
filter: alpha(Opacity=70);
- с абсолютным позиционированием (position: absolute)
- с фиксированным линейным размером (height или width).
Для лучшего понимания материала последнего пункта, в предыдущем примере зададим тексту белый цвет
color: white;
и рассмотрим его под микроскопом:

Как видим, контент нашего блока (текст) тоже стал полупрозрачным. Но что делать, если на практике прозрачность содержимого вас не интересует, а интересует лишь прозрачность фона? В таком случае, переходим к следующему пункту.
Использование PNG -картинки
Интересной особенностью формата PNG является то, что он имеет 256 уровней прозрачности. Думаю, Вы уловили ход мыслей, и наверняка уже построили алгоритм работы такого подхода. Мне остается только его озвучить.

- Создаем в Photoshop, однотонную полупрозрачную картинку (назовем ее transparent) и сохраняем в формате png.
- Используем ее в качестве бэкграунда:
body background: url(./vaden-pro-logo.png); > .prozrachen padding: 10px; background: url(./transparent.png); margin: 0 auto; width: 50%; font: 48px/64px Times New Roman; color: white;li> text-align: justify; >
В результате мы получили блок с прозрачным фоном и непрозрачным содержимым:

- В отличии от свойства opacity прозрачность задается только для фона
- Кросс-браузерность. Работает почти во всех браузерах, и это плюс. Но прозрачность PNG не поддерживается в IE6. Если вы оптимизируете свой сайт под такую древность — придется применять другие методы или скрипты.
- При отключении отображения картинок, ваш фон пропадет (учтите этот момент при оптимизации отображения на мобильных устройствах, ведь безлимитный интернет не всегда есть под рукою).
- Для изменения цвета и/или степени прозрачности вам нужно создать новую картинку и перезалить ее на серв.
Формат системы RGBA
Одним из самых современных методов изменения транспарантности фона является применение системы RGBA.
RGBA – система представления цвета при помощи трех стандартных каналов RGB (красный, зеленый, синий), и четвертого, так называемого Alpha-канала, характеризующего степень прозрачности.
background: rgba(r, g, b, a);
В уже известном нам примере, заменим содержимое в CSS файле на следующее:
body background: url(./vaden-pro-logo.png); /* Фоновый рисунок */ > .prozrachen padding: 10px; background: rgba(0, 206, 209, 0.7); margin: 0 auto; width: 50%; font: 48px/64px Times New Roman; color: white; text-align: justify; >

- В отличии от свойства opacity прозрачность задается только фону
- В отличии от метода PNG картинки, для изменения цвета или степени транспарентности нам нужно просто поменять значения rgba.
- Кросс-браузерность. Работает во всех современных браузерах (начиная с IE9, Op10, Fx3,Sf3.2).Для более старых браузеров придется либо пожертвовать прозрачностью, либо применять opacity, png методы.
Клетчатые изображения, или с уважением к истории
Этот метод стоял у истоков веб-дизайна, и видел старые-старые браузеры, которые ничего толком не умели. Он заключается в создании клетчатого фона, в котором цветные квадратики чередовались с прозрачными.

В результате применения такой картинки в качестве background получали псевдо-прозрачный фон.

- При просмотре текста на таком фоне могут быстро уставать глаза (особенно давит рябь при прокрутке).
- В остальном особенности применения аналогичны с методом «PNG -картинки».
Подытожим?
Напоследок, несколько общих рекомендаций по использованию прозрачности в своих проектах:
- Под прозрачным блоком должна находиться яркая не однообразная картинка. На однотонном фоне изюминка прозрачности теряется.
- При выборе конкретного практического подхода, ориентируйтесь на то, какими браузерами пользуется ваша целевая аудитория. Кросс-браузерность — вещь важная.
Предыдущая запись
