Свойство CSS opacity: управление прозрачностью. Полупрозрачный фон


Средствами CSS можно задать прозрачность двумя способами.С помощью свойства opacity или свойства rgba.

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

Синтаксис opacity: значение

Степень прозрачности задается в диапазоне 0 (полностью прозрачен) до 1 (полностью не прозрачен).

К примеру нам надо, чтобы наша картинка была на половину прозрачной

Прозрачность

Добавляем стили

Img1 { Opacity: 0.5; /* Полупрозрачность элемента */ }

Но к сожалению еще не все браузеры поддерживают opacity. Для полной кроссбраузерности применяем:

  • filter:progid:DXImageTransform.Microsoft.Alpha(opacity=50); - для ИЕ версии выше 5.5-7 прозрачность реализуется с помощью фильтра Alpha DirectX. Значение задается в диапазоне от 0 до 100. Сокращенный (не рекомендуемый) вариант - filter: alpha(opacity=50);
  • -moz-opacity - для старых версий Mozilla (1.6 и ниже) и Firefox (до 1.6)
  • -khtml-opacity - для Safari 1.1 и Konqueror 3.1
  • Img1{ filter:progid:DXImageTransform.Microsoft.Alpha(opacity=50); /* IE 5.5+*/ -moz-opacity: 0.5; /* Mozilla 1.6 и ниже */ -khtml-opacity: 0.5; /* Konqueror 3.1, Safari 1.1 */ opacity: 0.5; /* CSS3 - Mozilla 1.7b +, Firefox 0.9 +, Safari 1.2+, Opera 9+ */ }

    Так же на IE может не работать если не указаны width (ширина) или height (высота).

    Свойство RGBA позволяет задать фоновый цвет с альфа-каналом. Альфа-канал определяет прозрачность элемента.

    Значение 0 соответствует полной прозрачности, 1 - непрозрачности, а промежуточное значение вроде 0.5 - полупрозрачности.

    Синтаксис rgba: значение

    Допустим, нам нужен текст с прозрачным фоном.

    Прозрачность

    Наш текст

    Body { background-image: url(http://g.io.ua/img_aa/large/3228/01/32280132.jpg) } .rgba { font-size: 50px; color: rgb(0, 0, 0); background-color: rgba(256,256,256, 0.5); width: 300px; }

    Отличия opacity от rgba

    opacity влияет на весь блок, включая текст. Создаёт новый контекст наложения. Дочерние теги не могут быть ярче родительского элемента.

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

    Свойство CSS opacity отвечает за прозрачность элементов (картинки, текста, блоки) в html.

    Синтаксис CSS opacity

    Где value может принимать вещественные значения в диапазоне от 0.0 до 1.0. Значение 1.0 — означает, что прозрачность отсутствует (по умолчанию).

    Пример №1. Прозрачное изображение в html

    Первая картинка выведена без прозрачности, вторая с прозрачностью 0.5



    Полупрозрачность элемента


    Делаем изображение полупрозрачным при наведении!



    ДемонстрацияСкачать исходники

    Спасибо за внимание!

    Следующая статья
    Как создать div блок с прокруткой?

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

    Краткая информация

    Обозначения

    Описание Пример
    <тип> Указывает тип значения. <размер>
    A && B Значения должны выводиться в указанном порядке. <размер> && <цвет>
    A | B Указывает, что надо выбрать только одно значение из предложенных (A или B). normal | small-caps
    A || B Каждое значение может использоваться самостоятельно или совместно с другими в произвольном порядке. width || count
    Группирует значения. [ crop || cross ]
    * Повторять ноль или больше раз. [,<время>]*
    + Повторять один или больше раз. <число>+
    ? Указанный тип, слово или группа не является обязательным. inset?
    {A, B} Повторять не менее A, но не более B раз. <радиус>{1,4}
    # Повторять один или больше раз через запятую. <время>#
    ×

    Значения

    В качестве значения выступает число из диапазона . Значение 0 соответствует полной прозрачности элемента, 1, наоборот — его непрозрачности. Дробные числа вида 0.6 устанавливают полупрозрачность. Допускается писать числа без нуля впереди, вида opacity: .6 .

    Песочница

    Винни-Пух был всегда не прочь немного подкрепиться, в особенности часов в одиннадцать утра, потому что в это время завтрак уже давно окончился, а обед ещё и не думал начинаться. И, конечно, он страшно обрадовался, увидев, что Кролик достаёт чашки и тарелки.

    div { opacity: 1 ; }

    Пример

    opacity

    Результат данного примера показан на рис. 1.

    Рис. 1. Результат использования opacity

    Объектная модель

    Объект .style.opacity

    Примечание

    Firefox до версии 3.5 поддерживает свойство -moz-opacity .

    Internet Explorer до версии 9.0 для изменения прозрачности использует фильтры, для этого браузера следует записать filter : alpha(opacity=50) , где параметр opacity может принимать значение от 0 до 100.

    Спецификация

    Каждая спецификация проходит несколько стадий одобрения.

    • Recommendation (Рекомендация ) - спецификация одобрена W3C и рекомендована как стандарт.
    • Candidate Recommendation (Возможная рекомендация ) - группа, отвечающая за стандарт, удовлетворена, как он соответствует своим целям, но требуется помощь сообщества разработчиков по реализации стандарта.
    • Proposed Recommendation (Предлагаемая рекомендация ) - на этом этапе документ представлен на рассмотрение Консультативного совета W3C для окончательного утверждения.
    • Working Draft (Рабочий проект ) - более зрелая версия черновика после обсуждения и внесения поправок для рассмотрения сообществом.
    • Editor"s draft (Редакторский черновик ) - черновая версия стандарта после внесения правок редакторами проекта.
    • Draft (Черновик спецификации ) - первая черновая версия стандарта.
    ×

    На этом уроке мы с вами разберем такие CSS свойства – opacity и RGBA . Свойство Opacity отвечает только за прозрачность элементов, а функция RGBA – за цвет и прозрачность, если указать значение прозрачности альфа-канала.

    CSS прозрачность Opacity

    Цифровое значение для opacity задано в пределах от 0.0 до 1.0, где ноль это полная прозрачность, а единица наоборот - абсолютная непрозрачность. Например, для того, чтобы увидеть 50% прозрачности, надо выставить значение в 0.5. Надо иметь ввиду, что opacity распространяется на все дочерние элементы родителя. А это значит, что и текст на полупрозрачном фоне, тоже будет полупрозрачным. А это уже очень существенный недостаток, текст не так хорошо выделяется.




    Прозрачность через CSS Opacity




    На скриншоте отчётливо видно, что черный текст стал таким же полупрозрачным, как и голубой фон.

    Div {
    background: url(images/yourimage.jpg); /* Фон картинка */
    width: 750px;
    height: 100px;
    margin: auto;
    }
    .blue {
    background: #027ав4; /* Цвет полупрозрачного фона */
    opacity: 0.3; /* Значение полупрозрачности фона */
    height: 70px;
    }
    h1 {
    padding: 6px;
    font-family: Arial Black;
    font-weight: bolder;
    font-size: 50px;
    }

    CSS прозрачность в формате RGBA

    Формат для записи цвета RGBA , является более современной альтернативой для свойства opacity . R (red), G (green), B(blue) – значит: красный, зеленый, синий. Последняя буква A – означает альфа-канал, который и задает прозрачность. RGBA в отличии от Opacity не влияет на дочерние элементы.

    Теперь давайте рассмотрим наш пример с использованием RGBA . Заменим эти строчки в стилях.

    Background: ##027ав4; /* Цвет фона */
    opacity: 0.3; /* значение полупрозрачности фона */

    на следующую одну строку

    Background: rgba(2, 127, 212, 0.3);

    Как вы видите значение прозрачности 0.3 совпадает у обоих методов.

    Результат примера с RGBA:

    Второй скриншот намного лучше смотрится, чем первый.

    Играясь с полупрозрачностью фона блоков, можно добиться на сайте интересных эффектов. Важно, чтобы эти полупрозрачные блоки шли поверх пестрого рисунка, например фотографии. Только в этом случае эффект будет заметен. Этот прием уже давно применялся в дизайне, ещё до появления всяких CSS3 , реализовывался он чисто в графических программах.

    Если заказчик требует, чтобы верстка хорошо смотрелась и в старых версиях браузера Internet Explorer , тогда добавляйте свойство filter и не забудьте закомментировать, чтобы не пострадала валидность кода.



    Вывод

    Формат RGBA поддерживают все современные браузеры, за исключением Internet Explorer . Ещё очень важно, что RGBA гибок, он действует только на конкретный заданный элемент, не затрагивая дочерних. Понятно, что для верстальщика это удобнее. Мой выбор однозначно в пользу формата RGBA для получения прозрачности в CSS .

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





    

    2024 © gtavrl.ru.