Как да задам прозрачност на фоновото изображение в CSS? CSS прозрачност на фона. Прозрачен фон или текст с CSS Сив полупрозрачен фон

Здравейте всички. Както може би знаете, фонът е свойство на CSS, което ви позволява да зададете цвета на фона или да качите изображение, което да действа като фон. CSS3 въведе и възможността за създаване на линейни и радиални градиенти, но това е тема за отделна статия. В същия исках да ви кажа как да зададете прозрачност за свойството на фона в css.

Задайте прозрачност за css фон

И така, всичко това се прави много просто благодарение на такъв формат за цветен запис като rgba. Ако работите с графични редактори, вероятно знаете, че цветовият режим rgb се декодира, както следва: пропорцията на червеното (червено), пропорцията на зеленото (зелено) и синьото (синьо). И така, rgba е почти същото, само че се добавя още един параметър - прозрачност. Написано е така:

Цвят на фона: rgba(173, 57, 22, 0.5)

Първо, ние изрично посочваме, че задаваме цвета в режим rgba. След това посочваме стойностите на наситеност на трите основни цвята от 0 до 255, където 255 е най-високата наситеност. Четвъртият параметър е нашата прозрачност. Тук стойността се записва от 0 до едно. 1 е напълно непрозрачен елемент, а 0 е напълно прозрачен елемент. Съответно, ако го зададете на 0, тогава цветът на фона изобщо няма да се вижда.

Сега знаете как да зададете прозрачност за свойството на фона в css. За да направите това, трябва да използвате цветовия режим rgba. Има и свойство за непрозрачност, но то се отнася за целия елемент като цяло. Тоест при прилагане на непрозрачност може да се приложи и прозрачност към текста, което ще го направи нечетлив.

Пример за прозрачен фон

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

А сега нека зададем същия черен цвят на блока, но го уточним с помощта на цветовия формат rgba, като последната стойност е 0,7, например. Ще се получи така:
Сега фонът на блока е полупрозрачен и фоновото изображение се вижда през него. Тази снимка и фон са само за илюстрация. Както разбирате, в css прозрачността на фона може да бъде полезна, когато имате нужда фонът на вложен елемент да се показва, без да закрива други фонове, разположени в други слоеве.

Самият цвят не е труден за настройка с помощта на rgba. Както вече споменахме, първите три букви означават трите основни цвята: червено, зелено и синьо, или по-скоро техния дял (от 0 до 255). Чрез задаване на различни стойности можете да получите милиони различни цветове, а полупрозрачността ще ви позволи да измислите много красиви ефекти за сайта, ако е необходимо.

Доста често можете да намерите подходящо изображение в интернет, например, за да го вмъкнете в уебсайт. Или може би правите колаж и трябва да добавите други към една снимка. Просто желаните изображения обикновено имат някакъв фон.

Да видим как можем направете прозрачен фон за изображението с помощта на редактораAdobeфотошоп. Имам инсталирана английската версия на Adobe Photoshop CS5, така че ще я покажа на нея.

Ще се опитам да дам различни комбинации от горещи клавиши.

Ако все още нямате инсталиран Photoshop, рядко го използвате или е на английски, можете да направите прозрачен фон в Paint.net. Това е прост редактор на изображения на руски език, който няма да заема много място на вашия твърд диск. Като кликнете върху връзката, можете да прочетете подробната статия. Можете да изтеглите програмата Paint.net от нашия уебсайт.

Да започнем с един прост пример. Да предположим, че имате изображение на обикновен фон, то може да бъде лого или име на нещо. Нека направим това лого или надпис на прозрачен фон във Photoshop.

Отворете желаното изображение в редактора. Сега нека направим прозрачен фон за слоя. В прозореца "Слоеве" щракнете двукратно върху добавения слой - срещу него ще има заключване. Ще се отвори прозорец за нов слой, щракнете върху OK. След това ключалката ще изчезне.

Изберете инструмента Magic Wand. В лентата със свойства посочете нивото на чувствителност, задайте различни стойности, за да разберете как работи, например 20 и 100. За да премахнете избора от снимката, натиснете "Ctrl + D".

Задайте чувствителността и натиснете вълшебната пръчица върху областта на фона. За да добавите към избрания фон онези части, които не са избрани, задръжте натиснат клавиша "Shift" и продължете селекцията. За да изтриете избраните области, щракнете върху „Изтриване“.

Сега, вместо фон, шахматна дъска - това означава, че успяхме да направим белия фон прозрачен. Премахнете селекцията - "Ctrl + D".

Ако имате изображение или снимка с много различни цветове и обекти, нека да разгледаме как да направите прозрачен фон за изображение във Photoshop.

В този случай ще използваме инструмента за бърз избор. Щракваме върху магическата пръчка с левия бутон на мишката с леко забавяне и избираме желания инструмент от менюто.

Сега трябва да изберем обекта, който искаме да оставим на прозрачен фон. В лентата със свойства задайте различни размери и щракнете върху обекта, като добавите области към него. Ако погрешно е маркиран ненужен фон, натиснете "Alt" и го премахнете.

Натиснете "Q", за да видите резултата. Частите от изображението, които стават прозрачни, ще бъдат маркирани в розово.

Копирайте избраните области, като натиснете "Ctrl + C". След това създайте нов файл, "Ctrl + N", с прозрачен фон.

Поставете копираните фрагменти в него, "Ctrl + V". Ако върху тях има ненужни части от фона, премахнете ги с инструмента Eraser. Запазваме изображения, направени на прозрачен фон в PNG или GIF формат.

Направете белия фон на картина прозрачен или направете прозрачен фон за отделни фрагменти от цветно изображение или снимка във Photoshop. След това можете да ги използвате, където е необходимо: да ги поставите на сайта, да ги добавите към друга снимка или да направите интересни колажи.

CSS прозрачност на фона

Прозрачността на фона на сайта се създава чрез CSS свойства. Има два начина за постигане на прозрачност: чрез свойството opacity и background:rgba(). Нека да разгледаме всеки от тях и след това да направим сравнение.

1. Свойство за непрозрачност на CSS за прозрачност на фона

CSS има свойство opacity, с което можете да зададете прозрачността на изображения, текстове, включително фонове.

Прозрачността се определя просто чрез посочване на реално число между 0,0 и 1,0. Колкото по-ниско е числото, толкова по-малко видим ще бъде обектът.

непрозрачност: 0,5 // непрозрачност на полупрозрачност: 0.2; // Обектът се вижда само при 20% непрозрачност: 0.8; // Обектът е видим само 80%.

Нека да разгледаме пример със свойството opacity.

Текстът също е прозрачен



2. Прозрачност чрез CSS свойство background:rgba()

Втората опция за настройка на прозрачността на фона на сайта е свойството CSS background:rgba. Помислете за пример

Текстът също е прозрачен



Този код се превежда на страницата в следното:

Разликата между двата метода е, че текстът вътре в блока става прозрачен, когато се използва непрозрачност.

Във втория случай няма такъв проблем. Следователно, трябва вече да погледнете ситуацията - какво точно чакате.

Прозрачност на CSS - решение за различни браузъри - 3.8 от 5 на базата на 6 гласа

В този урок ще разгледаме прозрачността на CSS, ще научим как да направим различни елементи от страницата прозрачни и да постигнем пълен кросбраузър, т.е. същият ефект на този ефект в различни браузъри.

Как да настроите прозрачността на всеки елемент

В CSS3 свойството opacity е отговорно за създаването на прозрачни елементи, които могат да бъдат приложени към всеки елемент. Това свойство има стойности от 0 до 1, които определят степента на прозрачност. Където 0 е напълно прозрачен (стойността по подразбиране за всички елементи), а 1 е напълно непрозрачен. Стойностите се записват като дроби: 0.1, 0.2, 0.3 и т.н.

Пример за употреба:

Прозрачност



Прозрачност на различни браузъри

Не всички браузъри възприемат и прилагат горното свойство на непрозрачност по един и същи начин. В някои случаи е необходимо да използвате различно име на свойство или филтри.

Свойството непрозрачност на CSS3 се поддържа от следните браузъри Mozilla 1.7+, Firefox 0.9+, Safari 1.2+, Opera 9+.

Толкова добре :) Браузър като Internet Explorer до версия 9.0 не поддържа свойство за прозрачност и за да създадете прозрачност за този браузър, трябва да използвате свойство за филтър и стойност alpha(Opacity=X), където X е цяло число между 0 и 100, което определя нивото на прозрачност. 0 е пълна прозрачност, а 100 е пълна непрозрачност.

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

Браузъри като Safari 1.1 и Konqueror 3.1, изградени на KHTML машината, използват свойството -khtml-opacity за контрол на прозрачността.

Как да задам прозрачност в CSS, така че да изглежда еднакво във всички браузъри? За да се създаде решение за кръстосани браузъри за прозрачност на елементи, те трябва да регистрират не само едно свойство на непрозрачност, но следния набор от свойства:

филтър: алфа(Непрозрачност=50); /* Прозрачност за IE */ -moz-opacity: 0.5; /* Поддръжка за Mozilla 3.5 и по-ниски версии */ -khtml-opacity: 0.5; /* Поддръжка за Konqueror 3.1 и Safari 1.1 */ непрозрачност: 0.5; /* Поддръжка за всички други браузъри */

Прозрачност на различни елементи

Нека да разгледаме някои примери за настройка на прозрачност на определени елементи, които се използват най-често на страницата.

CSS прозрачност на изображението.

Обмислете няколко опции за създаване на полупрозрачно изображение. В следващия пример първата снимка няма прозрачност, втората има 50% прозрачност, а третата има 30%.

Прозрачност



Резултат:

Прозрачност в CSS при задържане на курсора на мишката върху изображение.

Често е необходимо да направите картина или друг елемент прозрачен в момента, в който курсорът е поставен върху него. Това може да стане с помощта на CSS псевдокласа :hover. За да направите това, нашата картина трябва да регистрира два класа, един обикновен - това ще бъде неактивното състояние на картината и вторият клас с псевдо-клас: hover, тук трябва да посочите прозрачността на картината в момента на задържане на курсора.

Прозрачност



Можете да видите резултата в демото.

CSS прозрачност на фона

Тук трябва да запомните, че прозрачността се отнася за всички вложени елементи и те не могат да имат по-голяма прозрачност от вложения елемент.

Като пример, нека дадем вариант с фон на страница, създаден с помощта на изображение и блок с фон, създаден с помощта на цвят и имащ прозрачност от 50%.

Примерен код:

Прозрачност

Текст


Ето резултата от горния код:

С появата на CSS3 работата на дизайнерите на оформление стана много по-проста и по-логична: в края на краищата сега можете наистина гъвкаво да конфигурирате всеки обект, прибягвайки до JavaScript все по-рядко. Да речем, че трябва да настроите прозрачността на фона - CSS веднага предлага няколко опции.

Фонът се определя от набор от атрибути, background-repeat, background-attachment, background-origin, background-clip, background-color) и всеки от тях може да бъде указан отделно или комбиниран под атрибута background. Нека анализираме всеки от тях по-подробно.

атрибут цвят на фона

Дори IE8 поддържа този метод. Няколко изображения като фон се използват в течно оформление. Най-важното е, че когато използвате което и да е изображение, задайте и цвета на фона в CSS, тъй като потребителите може просто да не заредят изображението.

атрибут за фонова позиция

Ако използвате изображение, за да зададете фона на блок, CSS ще ви позволи да позиционирате изображението навсякъде на екрана. По подразбиране изображението се намира в горния ляв ъгъл. Атрибутът приема или словесни указания (отгоре, отдолу, отляво, отдясно) или числени указания (проценти, пиксели и други мерни единици). В този случай трябва да посочите две стойности: хоризонтално и вертикално:

body (background-position: right center;) - в този пример фонът ще бъде разположен от дясната страна на страницата, а долното и горното разстояние до изображението са еднакви.

атрибут за размер на фона

Понякога искате да разтегнете фона или да намалите размера му с помощта на CSS. За да направите това, използвайте атрибута размер на фона и размерът на фона може да бъде зададен както в пиксели или проценти, така и във всякакви други мерни единици.

Има някои проблеми с този атрибут: за правилното показване на фона в по-ранните версии на браузърите трябва да се използват префикси. Разбира се, текущите версии поддържат напълно този атрибут и необходимостта от специфични свойства е изчезнала.

атрибут на фоново прикачване

Този атрибут определя поведението на фоновото изображение при превъртане. Така че може да приеме 3 стойности (без да се взема предвид наследяването, което е общо за всички атрибути, представени в тази статия):

Пример за употреба:

тяло (прикаченият фон е фиксиран).

В момента Firefox не поддържа последното свойство (локално).

атрибут на произход на фона

Този атрибут отговаря за позиционирането на елемента. Ранните браузъри изискват използването на префикси. Самият имот има три параметъра:

Ако са дадени няколко стойности, тогава браузърите може да реагират по различен начин: Firefox и Opera приемат само първата опция.

атрибут за повторение на фона

По принцип, ако фонът е зададен на изображение, то трябва да се повтори хоризонтално или вертикално. За това служи атрибутът за фоново повторение. Например, фонът на блок, чийто CSS съдържа такова свойство, може да има една от няколко опции:

Пример за използване на атрибута:

тяло (фоново повторение: повторение без повторение)- по същия начин фоново повторение: повторение-y.

В CSS3 е възможно да зададете стойности за множество изображения чрез изброяване на опциите, разделени със запетаи.

атрибут background-clip

Този атрибут определя поведението на фона под граници (например в случай на пунктирани граници):

Пример за употреба:

тяло (background-clip: content-box;).

Chrom и Safari изискват използването на префикса -webkit-.

атрибути на непрозрачност и филтър

Атрибутът opacity ви позволява да зададете прозрачността на фона - свойството CSS ще работи във всички браузъри. Стойността е зададена между 0,0 и 1,0 включително. В този случай можете да зададете прозрачността на CSS фона без целочислена стойност: вместо 0.3, просто напишете .3:

.block (фоново изображение: url(img.png); непрозрачност: .3;).

За да зададете прозрачността на фона, чийто CSS е подходящ дори за IE под деветата версия, използвайте филтърния атрибут:

.block (фоново изображение: url(img.png); филтър: alpha(opacity=30);).

В този случай стойността на непрозрачност е зададена в диапазона от 0 до 100. Имайте предвид, че атрибутът на непрозрачност се различава от настройката на прозрачност, използваща RGBA по наследство: когато използвате непрозрачност, не само фонът става прозрачен, но и всички елементи вътре в блока .

Винаги следете статистиката за използване на браузъра за ОНД и всички други страни. Най-големият проблем за всички дизайнери на оформление са старите версии на IE, те не ви позволяват да използвате напълно CSS3. Когато оформяте, не забравяйте да използвате специални услуги, които проверяват дали вашият браузър поддържа някое CSS свойство. Ако не можете да инсталирате стари версии на браузъри, намерете услуга, която ще тества сайта в различни браузъри онлайн.

Прозрачността на фона на сайта се създава чрез CSS свойства. Има два начина за постигане на прозрачност: чрез свойството opacity и background:rgba(). Нека да разгледаме всеки от тях и след това да направим сравнение.

1. Свойство за непрозрачност на CSS за прозрачност на фона

CSS има свойство opacity, с което можете да зададете прозрачността на изображения, текстове, включително фонове.

Прозрачността се определя просто чрез посочване на реално число между 0,0 и 1,0. Колкото по-ниско е числото, толкова по-малко видим ще бъде обектът.

непрозрачност: 0,5 // Полупрозрачностнепрозрачност: 0.2 // Обектът е видим само 20%.непрозрачност: 0.8 // Обектът се вижда само на 80%.

Нека да разгледаме пример със свойството opacity.

Текстът също е прозрачен

Този код се превежда на страницата в следното:

Текстът също е прозрачен

2. Прозрачност чрез CSS свойство background:rgba()

Втората опция за настройка на прозрачността на фона на сайта е свойството CSS background:rgba. Помислете за пример

Текстът също е прозрачен

Този код се превежда на страницата в следното.