hover选择器和display属性实现隐藏显示样式

在CSS中,可以利用“:hover”选择器和display属性来实现鼠标经过隐藏显示样式;只需要利用“:hover”选择器选择鼠标指针浮动在上面的元素,并给该状态的元素设置“display:none;”样式即可,语法“指定元素:hover {display:none;}”。

前端(vue)入门到精通课程:进入学习
API 文档、设计、调试、自动化测试一体化协作工具:点击使用

本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。

在CSS中,可以利用“:hover”选择器和display属性来实现鼠标经过隐藏显示样式。

只需要利用“:hover”选择器选择鼠标指针浮动在上面的元素,并给该状态的元素设置“display:none;”样式,让其隐藏即可。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

<!DOCTYPE html>

<html>

<head>

<style>

div {

width: 520px;

height: 50px;

background-color: #008000;

}

div:hover {

display:none;

}

</style>

</head>

<body>

<div>

hello

</div>

</body>

</html>

说明:

:hover 选择器

:hover 选择器用于选择鼠标指针浮动在上面的元素。

提示::hover 选择器可用于所有元素,不只是链接。

在 CSS 定义中,:hover 必须位于 :link 和 :visited 之后(如果存在的话),这样样式才能生效。

:link 选择器设置指向未被访问页面的链接的样式,:visited 选择器用于设置指向已被访问的页面的链接,:active 选择器用于活动链接。

用法1:

这个表示的是:当鼠标悬浮在a这个样式上的时候,a的背景颜色设置为黄色

1

2

3

4

a:hover

{

background-color:yellow;

}

这个是最普通的用法了,只是通过a改变了style

用法2:

使用a 控制其他块的样式:

使用a控制a的子元素 b:

1

2

3

.a:hover .b {

background-color:blue;

}

使用a控制a的兄弟元素 c(同级元素):

1

2

3

.a:hover + .c {

color:red;

}

使用a控制a的就近元素d:

1

2

3

.a:hover ~ .d {

color:pink;

}

总结一下:

1. 中间什么都不加 控制子元素;

2. ‘+’ 控制同级元素(兄弟元素);

3. ‘~’ 控制就近元素;

实例

用一个按钮控制一个盒子的运动状态,当鼠标移到按钮上方时,盒子停止运动,鼠标移开时,盒子继续运动

body代码:

1

2

3

4

<body>

<div class="btn stop">stop</div>

<div class="animation"></div>

</body>

css样式:

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

26

27

28

<style>

.animation {

width100px;

height100px;

background-color: pink;

margin100pxauto;

animation: move2s infinite alternate;

-webkit-animation: move2s infinite alternate;

}

@keyframes move{

0%{

transform: translate(-100px0);

}

100%{

transform: translate(100px0);

}

}

.btn {

padding20px50px;

background-color: pink;

colorwhite;

display: inline-block;

}

.stop:hover ~ .animation {

-webkit-animation-play-state: paused;

animation-play-state: paused;

}

</style>

“display:none;”样式

display:none可以不占据空间,把元素隐藏起来,所以动态改变此属性时会引起重排(改变页面布局),可以理解成在页面中把该元素删除掉一样;不会被子孙继承,但是其子孙是不会显示的,毕竟都一起被隐藏了。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

<!DOCTYPE html>

<html>

<head>

<metacharset="UTF-8">

<style>

.display{

display:none;

}

</style>

</head>

<body>

<div>正常显示元素</div>

<divclass="display">隐藏元素</div>

<div>正常显示元素</div>

</body>

</html>

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值