我有这个HTML
<div id="body" role="main">
我每页都有<h1> and <p>
或<h1>
。
我想要隐藏<p>
和<div id="body" role="main">
或&#34;标题&#34;的内部文字和#34;我的网站是mysite.com&#34;在特定网址上,不会影响其他网页上的<h1> and <p>
或{{1}}。
请帮我用css或js隐藏它们?
由于
答案 0 :(得分:1)
您可以隐藏身体的直接子元素:
body > h1, body > p {
display: none;
}
请知道它是否适合您。
答案 1 :(得分:1)
只需使用.innerText = '';
设置空内容即可。请查看下面的代码段。
更新:要检查URI并仅在匹配时应用,请使用
var uri = window.location.pathname.substr(1).replace('/', '');
if (uri == 'secret') {
var div = document.getElementById('body');
div.getElementsByTagName('h1')[0].innerText = '';
div.getElementsByTagName('p')[0].innerText = '';
}
var div = document.getElementById('body');
div.getElementsByTagName('h1')[0].innerText = '';
div.getElementsByTagName('p')[0].innerText = '';
<div id="body" role="main">
<h1>Title</h1>
<p>My site is mysite.com</p></div>
答案 2 :(得分:0)
您可以像这样使用Css显示属性:
B
答案 3 :(得分:0)
您可以使用h1{
display : none;
}
display: none;
答案 4 :(得分:0)
我不喜欢id所以我更喜欢上课。
<style>
.hide {
display: none;
}
</style>
所以你的HTML:
<div id="body" role="main">
<h1 class="hide">Title</h1>
<p class="hide">My site is mysite.com</p>
</div>
希望这会有所帮助。
如果你不能改变html类或id,并且两个元素总是在第一和第二位,那么使用它。
#body > h1:nth-child(1),
#body > p:nth-child(2) {
display: none;
}
答案 5 :(得分:0)
要从h1
的显示中删除p
和/secret/
,您可以使用javascript。只需将其添加到/secret/
的底部。
<script>
var target = document.getElementById('body');
target.querySelector('p').style = 'display: none;';
target.querySelector('h1').style = 'display: none;';
</script>
或者,如果您必须将JS添加到所有页面,则可以检查URI并仅在匹配/secret/
<script>
var uri = window.location.pathname.substr(1).replace('/', '');
if (uri == 'secret') {
var target = document.getElementById('body');
target.querySelector('p').style = 'display: none;';
target.querySelector('h1').style = 'display: none;';
}
</script>
答案 6 :(得分:0)
您可以使用{display:none}样式隐藏特定标记的文本
H1-1我的网站是mysite.com
h1 {display:none}