ფონის გამჭვირვალობა css - ნაცრისფერი გამჭვირვალე ფონი. როგორ დავაყენოთ ფონის სურათის გამჭვირვალობა CSS-ში? css გამჭვირვალე ფონი

კარგი დღე, ვებ დეველოპერები, ისევე როგორც მისი დამწყები. მათთვის, ვინც არ მიჰყვება IT სფეროს ტენდენციებს, უფრო სწორად, ვებ მოდას, მინდა საზეიმოდ განვაცხადო, რომ ეს პუბლიკაცია თემაზე: „როგორ გავაკეთოთ გამჭვირვალე css ბლოკი ხელსაწყოებით“ სწორედ თქვენთვისაა. მართლაც, მიმდინარე 2016 წელს, ონლაინ სერვისებში სხვადასხვა გამჭვირვალე ობიექტების დანერგვა თანამედროვე ნაბიჯად ითვლება.

ამიტომ, ამ სტატიაში მე გეტყვით გამჭვირვალობის შექმნის ყველა არსებულ მეთოდზე, დაწყებული ანტიდილუვიური გადაწყვეტილებებიდან, ფოკუსირებული გადაწყვეტილებების თავსებადობაზე ბრაუზერებთან და ასევე მივცემ პროგრამის კოდის კონკრეტულ მაგალითებს. და ახლა მუშაობა!

მეთოდი 1. ანტიდილუვიური

როდესაც ჯერ კიდევ სუსტი კომპიუტერები იყო და „უნარები“ არ იყო განვითარებული, დეველოპერებმა გამოიგონეს გამჭვირვალე ფონის შექმნის საკუთარი გზა: გამოიყენეს გამჭვირვალე პიქსელები, თავის მხრივ, ფერადი პიქსელებით. ამგვარად შექმნილი ბლოკი მასშტაბირებისას ჭადრაკის დაფას წააგავდა, მაგრამ ნორმალური ზომით ის რაღაც გამჭვირვალობას წააგავდა.

ეს, ჩემი აზრით, რა თქმა უნდა, "ყავარჯენი" ეხმარება ბრაუზერების ძველ ვერსიებს, რომლებშიც თანამედროვე გადაწყვეტილებები არ მუშაობს. მაგრამ აღსანიშნავია, რომ ტექსტის ჩვენების ხარისხი , ჩაწერილი ასეთი , მკვეთრად ეცემა.

მეთოდი 2. არ არის დაბნეული

იშვიათ შემთხვევებში, დეველოპერები წყვეტენ პრობლემას გამჭვირვალე გამოსახულების დანერგვით ... უკვე დასრულებული გამჭვირვალე სურათის ჩასმით! ამისათვის გამოიყენება PNG-24 ფორმატში შენახული სურათები. ეს გრაფიკული ფორმატი საშუალებას გაძლევთ დააყენოთ გამჭვირვალობის 256 დონე.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 მაგალითი 1

მაგალითი 1

ტექსტი სურათზე png ფორმატში.

თუმცა, ეს მეთოდი არ არის მოსახერხებელი რამდენიმე მიზეზის გამო:

  1. Internet Explorer 6 არ მუშაობს ამ ტექნოლოგიით, თქვენ უნდა დაწეროთ სკრიპტის კოდი;
  2. თქვენ არ შეგიძლიათ შეცვალოთ ფონის ფერები css-ში;
  3. თუ გამოსახულების ჩვენების ფუნქცია გამორთულია ბრაუზერში, ის გაქრება.

მეთოდი 3. დაწინაურებული

ბლოკის გამჭვირვალე გასაკეთებლად ყველაზე გავრცელებული და ცნობილი გზა არის საკუთრება გამჭვირვალობა.

პარამეტრის მნიშვნელობა მერყეობს დიაპაზონში, სადაც 0-ზე ობიექტი უხილავია, ხოლო 1-ზე ის სრულად არის ნაჩვენები. თუმცა, აქ არის რამდენიმე უსიამოვნო მომენტი.

პირველ რიგში, ყველა ბავშვის ელემენტი მემკვიდრეობით იღებს გამჭვირვალობას. და ეს ნიშნავს, რომ ჩაწერილი ტექსტი ასევე "გაბრწყინდება" ფონთან ერთად.

მეორეც, Internet Explorer ისევ აწვება ცხვირს და 8 ვერსიამდე არ მუშაობს გამჭვირვალობა.

ამ პრობლემის გადასაჭრელად გამოიყენეთ ფილტრი:ალფა (გამჭვირვალობა=მნიშვნელობა).

განვიხილოთ მაგალითი.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 მაგალითი 2

მაგალითი 2

ჩვენს მაღაზიაში ნახავთ ყველა სახის ყვავილს.

მეთოდი 4. თანამედროვე

დღეს პროფესიონალები იყენებენ rgba (r, g, b, a) ინსტრუმენტს.

მანამდე ვთქვი, რომ RGB არის ერთ-ერთი პოპულარული ფერის მოდელი, სადაც R პასუხისმგებელია წითელის ყველა ელფერზე, G - მწვანე და B - ლურჯის ფერებში.

css პარამეტრის შემთხვევაში ცვლადი A პასუხისმგებელია ალფა არხზე, რომელიც თავის მხრივ პასუხისმგებელია გამჭვირვალობაზე.

ამ უკანასკნელი მეთოდის მთავარი უპირატესობა ის არის, რომ ალფა არხი არ ახდენს გავლენას სტილიზებული ბლოკის შიგნით არსებულ ობიექტებზე.

rgba (r, g, b, a) მხარდაჭერილია, რადგან:

  • ოპერის 10 ვერსია;
  • Internet Explorer 9;
  • Safari 3.2;
  • Firefox-ის 3 ვერსია.

მინდა აღვნიშნო ერთი საინტერესო ფაქტი! საყვარელი Internet Explorer 7 უშვებს შეცდომას საკუთრების გაერთიანებისას ფონის ფერიფერების სახელწოდებით (ფონი-ფერი: ოქრო). ამიტომ, თქვენ უნდა გამოიყენოთ მხოლოდ:

ფონის ფერი: rgba (255, 215, 0, 0.15)

და ახლა მაგალითი.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 მაგალითი 3
ჩვენს მაღაზიაში ნახავთ ყველა სახის ყვავილს.

მაგალითი 3

ჩვენს მაღაზიაში ნახავთ ყველა სახის ყვავილს.

გაითვალისწინეთ, რომ ბლოკის ტექსტის შინაარსი სრულად ჩანს (100% შავი), ხოლო ფონი დაყენებულია ალფა არხზე 0.88, ე.ი. 88%.

ეს პოსტი დასრულდა. გამოიწერეთ ჩემი ბლოგი და არ დაგავიწყდეთ თქვენი მეგობრების მოწვევა. წარმატებებს გისურვებთ ვებ ენების სწავლაში! Ნახვამდის!

აღწერა

განსაზღვრავს ელემენტის ფონის ფერს. მიუხედავად იმისა, რომ ეს თვისება არ იღებს თვისებებს მისი მშობლისგან, რადგან საწყისი მნიშვნელობა დაყენებულია გამჭვირვალეზე, ბავშვის ელემენტების ფონის ფერი იგივეა, რაც მთავარი ელემენტის ფონის ფერი.

Სინტაქსი

ფონის ფერი:<цвет>| გამჭვირვალე | მემკვიდრეობით

ღირებულებები

გამჭვირვალე აყენებს გამჭვირვალე ფონს. inherit მემკვიდრეობით იღებს მშობლის ღირებულებას.

HTML5 CSS2.1 IE Cr Op Sa Fx

ფონის ფერი

Lorem ipsum dolor sit amet

Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diem nonummy nibh euismod tincidunt ut lacreet dolore magna aliguam erat volutpat.

ეს მაგალითი იყენებს სამ განსხვავებულ გზას ვებ გვერდის ელემენტების ფონის ფერის დასაყენებლად. მაგალითის შედეგი ნაჩვენებია ნახ. ერთი.

ბრინჯი. 1. გამოიყენეთ ფონის ფერი

ობიექტის მოდელი

document.getElementById("elementID").style.backgroundColor

ბრაუზერები

Internet Explorer 7.0 ვერსიამდე არ აქვს მემკვიდრეობის მნიშვნელობა.

არ არსებობს პირდაპირი გზა ფონის სურათის გამჭვირვალობის დასაყენებლად (მინიმუმ 2016 წლისთვის) CSS-ის (მათ შორის CSS 3) საშუალებით. ამ პრობლემის მრავალი გამოსავალი არსებობს.

ფონის შერწყმა

უმარტივესი გამოსავალი არის ორი ფონის შერწყმა (გამოსახულება და გამჭვირვალე ფერი). ეს მეთოდი შესაფერისია, თუ "გამჭვირვალე ფონის სურათის" ქვეშ არის იგივე ტიპის ფონი. ეს საერთოდ არ არის გამჭვირვალობა, არამედ მისი იმიტაცია გამოსახულების ფერთან შერევით. დააყენეთ ორმაგი ფონი, რომელიც შედგება ფონის სურათისა და სასურველი ფერისგან ალფა არხით. ამის შემდეგ შეარჩიეთ შერწყმის ყველაზე შესაფერისი რეჟიმი და გამოიყენეთ ფერის ალფა არხი კომპოზიციის სასურველ შედეგზე დასარეგულირებლად.

ფონი: url("/images/img1.jpg"), rgba(255,255,255,0.9); ფონი-შერევის რეჟიმი: ფერი;

ფსევდო ელემენტის დამატება

საუკეთესო საშუალებაა მიიღოთ ის, რაც გსურთ. ჩვენ ვქმნით ფსევდო ელემენტს შემდეგ ფსევდო კლასის გამოყენებით. ხელმისაწვდომია

პოზიციით: აბსოლუტური; ადრე (ან შემდეგ) #main და იმავე სიმაღლეზე, როგორც #main , შემდეგ გამოიყენეთ background-image და opacity: 0.2; .

#main ( პოზიცია: შედარებითი; ) #main:after ( შინაარსი: ""; ჩვენება: დაბლოკვა; პოზიცია: აბსოლუტური; ზედა: 0; მარცხნივ: 0; ფონის სურათი: url(/wp-content/uploads/2010/11 /tandem.jpg); სიგანე: 100%; სიმაღლე: 100%; გამჭვირვალობა: 0.2; z-ინდექსი: -1; )

Გამარჯობა ყველას. როგორც მოგეხსენებათ, ფონი არის 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-მდე). სხვადასხვა მნიშვნელობების შეყვანით, შეგიძლიათ მიიღოთ მილიონობით განსხვავებული ფერი, ხოლო გამჭვირვალეობა საშუალებას მოგცემთ შექმნათ ბევრი ლამაზი ეფექტი საიტისთვის, საჭიროების შემთხვევაში.

CSS იყენებს გამჭვირვალობის თვისებას გამჭვირვალე ეფექტის შესაქმნელად.

IE8 და ადრინდელი ვერსიები მხარს უჭერენ ალტერნატიულ თვისებას - filter:alpha(opacity=x), სადაც "x"-ს შეუძლია მიიღოს მნიშვნელობა 0-დან 100-მდე, რაც უფრო მცირეა მნიშვნელობა, მით უფრო გამჭვირვალე იქნება ელემენტი.

ყველა სხვა ბრაუზერი მხარს უჭერს სტანდარტული CSS გამჭვირვალობის თვისებას, რომელსაც შეუძლია მიიღოს მნიშვნელობა 0.0-დან 1.0-მდე, რაც უფრო მცირეა მნიშვნელობა, მით უფრო გამჭვირვალე იქნება ელემენტი:

დოკუმენტის სახელი სცადე »

გადაიტანეთ გამჭვირვალობა

:hover ფსევდო-კლასი საშუალებას გაძლევთ შეცვალოთ ელემენტების გარეგნობა, როდესაც მაუსით ატარებთ მათზე. ჩვენ გამოვიყენებთ ამ ფუნქციას იმისთვის, რომ სურათმა დაკარგოს გამჭვირვალეობა ჰოვერის დროს:

დოკუმენტის სახელი სცადე »

ფონის გამჭვირვალობა

ელემენტის გამჭვირვალობის ორი შესაძლო გზა არსებობს: ზემოთ აღწერილი გამჭვირვალობის თვისება და RGBA ფონის ფერის მითითება.

თქვენ შეიძლება უკვე იცნობდეთ RGB ფერის წარმოდგენის მოდელს. RGB (წითელი, მწვანე, ლურჯი - წითელი, მწვანე, ლურჯი) - ფერის სისტემა, რომელიც განსაზღვრავს ფერს წითელი, მწვანე და ლურჯი შერევით. მაგალითად, ტექსტის ფერის ყვითლად დასაყენებლად, შეგიძლიათ გამოიყენოთ ნებისმიერი შემდეგი განცხადება:

ფერი: rgb(255,255,0); ფერი: rgb(100%,100%,0);

RGB-ით მითითებული ფერები განსხვავდება იმ თექვსმეტობითი მნიშვნელობებისგან, რომლებიც ადრე ვიყენებდით, რადგან ისინი საშუალებას აძლევს გამოიყენონ ალფა არხი გამჭვირვალობისთვის. ეს ნიშნავს, რომ ის, რაც ქვემოთ არის, გამოჩნდება ალფა გამჭვირვალობის მქონე ელემენტის ფონზე.

RGBA ფერის დეკლარაცია სინტაქსით მსგავსია RGB სტანდარტული წესების. თუმცა, სხვა საკითხებთან ერთად, ჩვენ უნდა გამოვაცხადოთ მნიშვნელობა, როგორც RGBA (RGB-ის ნაცვლად) და დავაყენოთ დამატებითი ათობითი გამჭვირვალობის მნიშვნელობა ფერის მნიშვნელობის შემდეგ 0.0 (სრულიად გამჭვირვალე) და 1 (სრულიად გაუმჭვირვალე) შორის.

ფერი: rgba(255,255,0,0.5); ფერი: rgba(100%,100%,0,0.5);

გამჭვირვალობის თვისებასა და RGBA-ს შორის განსხვავება არის ის, რომ გამჭვირვალობის თვისება ვრცელდება გამჭვირვალობაზე მთელ ელემენტზე, ანუ ელემენტის მთელი შინაარსი გამჭვირვალე ხდება. და RGBA საშუალებას გაძლევთ დააყენოთ გამჭვირვალობა ელემენტის ცალკეულ ნაწილებზე (მაგალითად, მხოლოდ ტექსტი ან ფონი):

ტექსტი ( ფონის სურათი: url(img.jpg); ) .prim1 ( სიგანე: 400 პიქსელი; ზღვარი: 30 პიქსელი 50 პიქსელი; ფონის ფერი: #ffffff; კონტური: 1 პიქსელი მყარი შავი; შრიფტის წონა: თამამი; გამჭვირვალობა: 0.5; ფილტრი : alpha(გაუმჭვირვალობა=70); /*IE8-ისთვის და უფრო ადრე*/ ტექსტის გასწორება: ცენტრში; ) .prim2 (სიგანე: 400 პიქსელი; ზღვარი: 30 პიქსელი 50 პიქსელი; ფონის ფერი: rgba(255,255,255,0.5); კონტური: 1px მყარი შავი; შრიფტის წონა: თამამი; ტექსტის გასწორება: ცენტრში; ) სცადეთ »

შენიშვნა: RGBA მნიშვნელობები არ არის მხარდაჭერილი IE8-ში და უფრო ადრე. ძველი ბრაუზერებისთვის, რომლებიც არ უჭერენ მხარს ფერთა მნიშვნელობებს ალფა არხებით დასაბრუნებელი ფერის გამოსაცხადებლად, ჯერ მიუთითეთ ის RGBA მნიშვნელობის წინ: ფონი: rgb(255,255,0); ფონი: rgba(255,255,0,0.5);