我想隐藏我的页面上的元素,但我仍然希望它在那里。我想要一个仍然可以点击的按钮,但我希望它不可见。如何使用css隐藏元素,同时仍然保留在页面上?
1
A
回答
1
有三种方法来隐藏要素,并保持页面位置。您可以获取有关Normal flow和css样式(即:opcity,visibility)属性关系的更多信息。
- 知名度
- opcity
- 透明
$('div').click(function(){
alert(this.innerHTML)
})
div{
border: 1px solid #000;
}
.one{
visibility:hidden;
}
.two{
opacity: 0;
}
.three{
background: transparent;
color: transparent;
}
<!DOCTYPE html>
<html>
<head>
<script src="//code.jquery.com/jquery-2.1.1.min.js"></script>
<meta charset="utf-8">
<title>JS Bin</title>
</head>
<body>
1
<div class="one">visibility</div>
2
<div class="two">opticy</div>
3
<div class="three">transparent</div>
4
</body>
</html>
1
只是让你按键透明:
$("#invisible").click(function() {
alert("Invisible is clicked");
});
#invisible {
background: transparent;
color: transparent;
border: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="invisible">I am invisible</button> <- Click here
0
只需添加一个背景/颜色:RGBA(0,0,0,0); border:none;到CSS属性。
2
使用不透明度:0,如果您还想访问div的子元素,您需要隐藏。
.opacityZero {
opacity:0;
}
为了澄清,3个属性的说明如下:
能见度
使用CSS visibility属性,您可以切换使用隐藏的价值元素的可见性或可见。如果隐藏了该元素,则该元素将对用户隐藏,并且用户无法访问它的子元素,但仍然在DOM中元素的空间将被消耗。
透明度
如果使用不透明度:0隐藏的元素,它看起来像隐藏乍一看,但仍是用户可以访问的子元素。它也消耗DOM中元素的空间。如果你有一个链接作为子元素,如果你设置不透明度为0,它仍然是可点击的。这是你的选择。
显示
如果您使用display:none,则浏览器会考虑仿佛元素不具备的DOM的结果也不会占用空间。
DEMO
$(".opacityZero, .visibilityHidden").click(function() {
alert("Button is clicked");
});
.opacityZero {
opacity:0;
}
.visibilityHidden {
visibility:hidden;
margin-top:20px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div class="opacityZero">
<button >I am invisible</button>
</div><span>↑ Click above (Opacity:0 - children clickable</span>
<div class="visibilityHidden">
<button>I am invisible</button>
</div><span>↑ Click above (Visibility hidden - children not clickable</span>
相关问题
- 1. 隐藏元素,同时在页面布局中保留其空间
- 2. 如何使用jQuery隐藏页面上的某些元素
- 3. 在页面加载时隐藏同位素元素
- 4. 在Sencha Touch中隐藏元素但保留CSS间距
- 5. 在页面上隐藏具有相同文本的元素
- 6. AnySoftKeyboad在隐藏后仍然保留垃圾数据
- 7. 如何在滚动到达页面底部时隐藏元素?
- 8. CSS:隐藏的元素仍然占用空间在打印输出
- 9. 显示:没有项目仍然保留页面上的空间
- 10. 如何隐藏HTML页面上的元素,直到用户将它悬停在使用CSS的位置上?
- 11. 我可以使用CSS变换缩放元素并仍然保留在包含元素中吗?
- 12. 如何在使用jquery.validationEngine.js进行验证时忽略隐藏的页面元素?
- 13. 如何将HTML元素隐藏在仅用于桌面的其他页面上?
- 14. CSS - 将表格保留在页面上
- 15. 在移动设备上加载页面时隐藏使用PHP的元素
- 16. 使用CSS来隐藏非锚元素
- 17. 使用CSS隐藏元素的文本
- 18. 使用CSS空的隐藏元素
- 19. 我发现了一种使用data-html2canvas-ignore =“true”隐藏元素的方法。然而,尽管这个隐藏元素,它仍然留下一个空的空间
- 20. 如何隐藏HTML元素与CSS
- 21. jQuery在元素外面隐藏元素
- 22. 如何防止css伪元素从主元素中保留css?
- 23. javascript jquery在页面刷新后仍然隐藏/删除
- 24. 如何通过元素id在CSS中隐藏元素标签?
- 25. 从视图中隐藏页面元素
- 26. CSS只隐藏子元素
- 27. CSS变化时隐藏多个元素
- 28. 如何在页面加载之前隐藏HTML元素
- 29. 如何在页面加载到rails之前隐藏元素?
- 30. 取消隐藏div然后在页面重新载入后保留div
你当答案只说 “添加显示:无;到CSS属性” 被downvoted。你真的*确定你不知道它为什么被低估? – JJJ
@Juhana在我纠正了我的信息后,我第一次意识到自己被低估了。 – Athax