主要是练习h5的过渡效果,没其他意义
<!doctype html>
<html>
<head>
<meta charset="utf-8"/>
<title>html5</title>
<style>
*{
padding:0;
margin:0;
}
.menu{
300px;
margin:80px auto;
}
.item{
float:left;
cursor:pointer;
text-align:center;
}
.item span{
100px;
height:30px;
display:block;
background-color:silver;
line-height:30px;
}
.item ul{
list-style:none;
background-color:pink;
display:none;
/*此时给display设置过渡是没有效果的,
因为过渡transition是从一个值到另一个值的过程,
display没有具体的值*/
transition-property:display;
transition-duration:1s;
}
.item:hover ul{
display:block;
}
</style>
</head>
<body>
<div class="menu">
<div class="item">
<span>item</span>
<ul>
<li>item_1</li>
<li>item_2</li>
<li>item_3</li>
<li>item_4</li>
</ul>
</div>
<div class="item">
<span>item</span>
<ul>
<li>item_1</li>
<li>item_2</li>
<li>item_3</li>
<li>item_4</li>
</ul>
</div>
<div class="item">
<span>item</span>
<ul>
<li>item_1</li>
<li>item_2</li>
<li>item_3</li>
<li>item_4</li>
</ul>
</div>
</div>
</body>
</html>
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
此时过渡没有效果,我们可以把ul的高度设为0px,让过渡效果的属性为height,在hover添加一个具体的height,记得要设置overflow:hidden,不然内容也是不会隐藏的
代码如下
.item ul{
height:0px;
overflow:hidden;
list-style:none;
background-color:pink;
transition-property:height;
transition-duration:1s;
}
.item:hover ul{
height:85px;
}
————————————————
版权声明:本文为CSDN博主「aabWzq」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/aabWzq/article/details/103207027