Geek Slack

Introduction to CSS
About Lesson



CSS Opacity / Transparency


CSS Opacity / Transparency

CSS opacity is used to control the transparency of an element. The opacity property specifies the transparency level of an element, with values ranging from 0 (completely transparent) to 1 (completely opaque).

1. Basic Opacity

To set the opacity of an element, you use the opacity property.

Example:

<div class="box">Default opacity</div>
<div class="box low-opacity">Low opacity (0.3)</div>
<div class="box high-opacity">High opacity (0.8)</div>

<style>
.box {
    width: 200px;
    height: 200px;
    background-color: #4caf50;
    margin: 10px 0;
}
.box.low-opacity {
    opacity: 0.3;
}
.box.high-opacity {
    opacity: 0.8;
}
</style>
Default opacity
Low opacity (0.3)
High opacity (0.8)

2. Using RGBA for Background Colors

You can also achieve transparency using the rgba color model, where the “a” stands for alpha, representing the opacity level.

Example:

<div class="text-box">Opaque Box</div>
<div class="text-box transparent-text">Transparent Box</div>

<style>
.text-box {
    width: 200px;
    height: 200px;
    background-color: #4caf50;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2em;
}
.text-box.transparent-text {
    background-color: rgba(76, 175, 80, 0.5);
}
</style>
Opaque Box
Transparent Box

3. Applying Opacity to Images

Opacity can also be applied to images, making them semi-transparent.

Example:

<img src="example.jpg" alt="Example Image" class="low-opacity">

<style>
.low-opacity {
    opacity: 0.5;
}
</style>

Example Image

4. Opacity and Child Elements

When applying opacity to a parent element, all child elements will inherit the same opacity. To avoid this, use RGBA for the background color of the parent element.

Example:

<div class="box low-opacity">
    <p>This text will inherit the opacity of the parent.</p>
</div>
<div class="text-box transparent-text">
    <p>This text will not inherit the opacity of the parent.</p>
</div>

<style>
.low-opacity {
    opacity: 0.5;
}
.text-box.transparent-text {
    background-color: rgba(76, 175, 80, 0.5);
}
</style>

This text will inherit the opacity of the parent.

This text will not inherit the opacity of the parent.

Conclusion

The CSS opacity property and RGBA color model provide powerful tools for creating transparent effects in your designs. By using these properties, you can create visually appealing and layered designs.

Join the conversation