CSS的clip实现元素的逐渐显示和消失

. clip属性的用法

clip属性的值指定了元素的剪切区域,目前它的剪切区域只能是矩形的。

语法:clip: rect(top right bottom left);
单位:为像素为长度值,不允许使用百分比,可以使用负数,表示剪切区域的可以延伸到指定元素的长度之外;
可以使用auto:表示剪切区域与相应边界一致;
JavaScript语法:element.style.clip = “rect(top right bottom left)”;
二. 小例子代码:

<!DOCTYPE html>
<html>
<head>
<style>

.container{
clip: rect(0px 0px 0px 0px);
position: absolute;
width: 400px;
height:500px;
}

.item{
width:100%;
height:20%;
}

.item1{
background: red;
}

.item2{
background: blue;
}

.item3{
background: yellow;
}

.item4{
background: green;
}

.item5{
background: pink;
}


</style>
</head>
<body>

<div class="container">
<div class="item item1"></div>
<div class="item item2"></div>
<div class="item item3"></div>
<div class="item item4"></div>
<div class="item item5"></div>
</div>

<script type="text/javascript">

var height = 0;
var divid = document.querySelector(‘.container‘);

/*这两个标记为了完成出现和消失的相互转换*/
var addflag = 0;
var subflag = 0;

/*逐渐出现*/
function changeAdd(){
height = height + 100;
divid.style.clip = "rect(0px 400px "+ height+"px 0px)";
if (height == 500)
addflag = 1;
}
/*逐渐消失*/
function changeSub(){
height = height - 100;
divid.style.clip = "rect(0px 400px "+ height+"px 0px)";
if (height == 0)
subflag = 1;
}

setInterval(function(){
if (addflag == 0){
changeAdd();
}
else if(subflag == 0){
changeSub();
}
else{
/*循环显示*/
addflag = 0;
subflag = 0;
}
}, 500);
</script>

</body>
</html>

 

CSS的clip实现元素的逐渐显示和消失

上一篇:JQuery CDN


下一篇:linux安装nodejs