Розробка, підтримка, SEO, просування, соцмережі та реклама сайтів ☣
Кабінет клієнта
Зареєструватись Забули пароль?
Розробка та створення сайтів » Блог » css » CSS прозорість для фону

CSS прозорість для фону

Створюю і просуваю комерційні сайти та інтернет-магазини з 2008 року. 2-12-2014, 21:43 5 463 1
CSS прозорість для фону

При створенні прозорості для кольору чи фону виникає проблема, або створювати за допомогою напівпрозорої картинки, або за допомогою параметру opacity. Але у двох випадка є мінуси:

- png картинка є лишньою...

- opacity застосовується до тега div і його вмісту, і тому текстом в блоці теж стає напівпрозорий.

Тому є лише один вихід! Якщо використовувати RGBA.
Формат опису кольору RGBA

CSS3 дозволяє задавати колір, використовуючи функції RGB і RGBA. При цьому ми повинні вказати частку кожної колірної складової, під яку  відводиться один байт (від 0 до 255, раптом хто не знає).

Синтаксис у RGBA дуже простий:


background: rgb( 0, 255, 0); /* зелений колір */


Для RGBA додається четвертий параметр - альфапрозрачность (від 0 до 1).


background: rgba( 255, 0, 0, 0.5); /* червоний колір з прозорістю 50% */

Ось воно, рішення нашої задачі. Досить задати колір фону за допомогою rgba і все буде виглядати як нам потрібно. Без зайвих картинок і елементів!

 

Подивитися на складові кольору можна використовуючи інструмент фотошопа «піпетка»


Про кросбраузерність:

Так як функція RGB значно старше, ніж RGBA і присутній ще з часів стандарту CSS2, то для підстраховки від найдавніших браузерів можна використовувати таку дублюючу конструкцію RGB:


.someBlock {
 background: rgb( 255, 0, 0);
 background: rgba( 255, 0, 0, 0.5);
}


При такому підході у прадідусів сучасних Тенет не буде напівпрозорості, але сам колір залишиться правильним.

 

Окремо доведеться подбати про IE - це лайно аж до 8 версії включно не розуміє RGBA.

Для ІЕ задамо прозорість фільтром gradient.

Само собою, в бойових умовах виносимо це правило в окремий CSS, який підключаємо умовними коментарями.


.someBlock {
 background:transparent;
 filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#80ff0000,endColorstr=#80ff0000);
 zoom: 1;
 }

Фішка в тому, щоб вказати початковий і кінцевий кольори однаковими (ff0000 - червоний) і скористатися тим, що для градієнта в цьому фільтрі можна задати альфаканал (у прикладі значення 80).

Для довідки: у фільтрі використовується шістнадцяткова система і повністю непрозорого кольору відповідає код FF (в десятковій це 255). Відповідно шістнадцятеричне 80 - це десяткове 128, тобто 50% прозорості.

 
 

Розробка сайтів | Створення сайтів

Коментарі

anonymous ⇝
◈ Гости
№ 1

Скільки років статі а досі допомагає людям

⤹ Залишити свій коментар ⤸

  • Натисніть на зображення, щоб оновити код, якщо він нерозбірливий
Останнє на сайті
  • seo

    Українські каталоги для реєстрації сайту

    coments/16 vievs/ 1
  • faq

    Які існують російські домени?

    coments/15 vievs/ 0
  • seo

    Українська двигун для сайту - Ardilla-CMS

    coments/106 vievs/ 0
Останнє в магазині
Картинка в meta з додаткового поля Картинка в meta з додаткового поля / Платні модулі DLE
Коментарі
Популярне на сайті

Для усіх любителів Анекдотів українською існує чудовий сайт з безліччю приколів, смішних історій та відео: Анекдоти

Тарифні плани

Потужний старт Стандартний запуск сайту від $400
  • - ♜ -
  • В стартовий тарифний план входить:

  • Розробка та налаштування сайту
  • Семантичне ядро
  • Оптимізація швидкості
  • Наповнення до SEO 5 сторінок
  • Ліцензія двигунчика DLE
Просунутий SEO оптимізований сайт від $700
  • - ♚ -
  • В SEO тарифний план входить:

  • Створення та налаштування сайту
  • Семантичне ядро
  • Оптимізація швидкості
  • Наповнення до SEO 10 сторінок
  • Ліцензія двигунчика DLE
  • 5 силок + перелінковка
Імперський винущувач конкурентів від $999
  • - ♛ -
  • В імперський тарифний план входить:

  • Розробка сайту
  • Наповнення до SEO 20 сторінок
  • Повна оптимізація
  • Ліцензія двигунчика DLE
  • МОЄ НАТХНЕННЯ та ДОСВІД!
/* soc-knopki */