在前端开发html页面的时候,可以使用js中实现,修改元素的属性,达到隐藏元素,以及隐藏后的元素的显示的效果;需要修改元素的display方法或者visibility,两种方案实现的效果不同,可参考下图中的GIF动画;
设置display隐藏后不占用原来的位置;
通过visibility进行隐藏后元素位置任然被占用。
预览效果下动图;
script主要代码;
<script>
test_display=function(){
var test_div=document.getElementsByTagName('div');
if (test_div[0].style.display!='none') {
test_div[0].style.display='none'
} else{
test_div[0].style.display=''
}
}
test_visibility=function(){
var test_div=document.getElementsByTagName('div');
if (test_div[0].style.visibility != 'hidden') {
test_div[0].style.visibility = 'hidden'
} else{
test_div[0].style.visibility = 'visible';
}
}
</script>
HTML全部代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>元素隐藏</title>
</head>
<body>
设置display隐藏后不占用原来的位置,<br>而通过visibility进行隐藏后元素位置任然被占用。<br>
<button onclick="test_display()">display隐/显</button>
<button onclick="test_visibility()">visible隐/显</button>
<div style="background-color:rgb(255, 0, 149);height: 100px; width: 200px; ">
元素内的内容
</div>
元素外的内容
<script>
test_display=function(){
var test_div=document.getElementsByTagName('div');
if (test_div[0].style.display!='none') {
test_div[0].style.display='none'
} else{
test_div[0].style.display=''
}
}
test_visibility=function(){
var test_div=document.getElementsByTagName('div');
if (test_div[0].style.visibility != 'hidden') {
test_div[0].style.visibility = 'hidden'
} else{
test_div[0].style.visibility = 'visible';
}
}
</script>
</body>
</html>
以上为,javascript中display方法或者visibility隐藏元素实现的效果全部代码;