Home >Web Front-end >CSS Tutorial >CSS3 achieves the effect of transparent background and opaque text
This article mainly introduces the relevant information about the sample code of CSS3 to achieve transparent background and opaque text. The content is quite good. I will share it with you now and give it as a reference.
I recently encountered a requirement to display text with a translucent background on a picture. The effect is as shown below:
Requirement.png
After seeing this requirement, the first reaction is to use opacity in CSS3 to set the transparency of the element.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>背景透明,文字也透明</title> <style> * { padding: 0; margin: 0; } .container { width: 600px; height: 400px; background: url('https://img1.dongqiudi.com/fastdfs3/M00/18/56/ChOxM1stHByARuNmAAGsJDKXtuM269.jpg') no-repeat; background-size: cover; -webkit-background-size: cover; -o-background-size: cover; background-position: center 0; } .demo { position: absolute; width: 260px; height: 60px; top: 260px; line-height: 60px; text-align: center; background-color: black; opacity: 0.5; } .demo p { color: #FFF; font-size: 18px; font-weight: 600; } </style> </head> <body> <p class="container"> <p class="demo"> <p>2018世界杯已开幕:10天</p> </p> </p> </body> </html>
The effect is as follows:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>背景透明,文字不透明</title> <style> * { padding: 0; margin: 0; } .container { width: 600px; height: 400px; background: url('https://img1.dongqiudi.com/fastdfs3/M00/18/56/ChOxM1stHByARuNmAAGsJDKXtuM269.jpg') no-repeat; background-size: cover; -webkit-background-size: cover; -o-background-size: cover; background-position: center 0; } .demo { position: absolute; width: 260px; height: 60px; top: 260px; line-height: 60px; text-align: center; background-color: rgba(0,0,0,0.5); } .demo p { color: #FFF; font-size: 18px; font-weight: 600; } </style> </head> <body> <p class="container"> <p class="demo"> <p>2018世界杯已开幕:10天</p> </p> </p> </body> </html>The effect is as follows:
Summary
In fact, to achieve this requirement, this is not the only way to think about it. You can also use two p's in the same position. , one is a translucent background p, and the other is a text p, which can also solve the problem, but it requires absolute positioning or negative margin, and a p with empty content appears. This method will be slightly complicated in some scenarios, as shown in the following example Therefore, in actual demand scenarios, specific problems still need to be analyzed in detail.Implementation of linear color gradient in CSS3
Using CSS3 to implement text timing upward scrolling
CSS to implement adaptive width menu button effect
The above is the detailed content of CSS3 achieves the effect of transparent background and opaque text. For more information, please follow other related articles on the PHP Chinese website!