所以我正在和jquery(imma nub)开玩笑。现在我发现了一些有趣的东西:为什么我不能隐藏section标签中的文字。像<section><p>blabla text text</p></section>
那样工作正常
我没有在谷歌上找到任何东西。我想用jquery执行代码修复它!
问题代码:
$(document).ready(function() {
$("button").click(function() {
$("p section").hide();
});
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!DOCTYPE html>
<h2>This is a heading</h2>
<p>
<section>This is a paragraph.</section>
</p>
<p>This is another paragraph.</p>
<button>Click me to hide paragraphs</button>
&#13;
提前致谢
答案 0 :(得分:1)
部分不能嵌套在任何其他元素中。部分独立于
来自HTML5 Doctor section元素表示通用文档或应用程序节... section元素不是通用容器元素。当一个元素仅用于样式目的或作为脚本编写的便利时,鼓励作者使用div元素。一般规则是,只有元素的内容在文档的大纲中明确列出时,section元素才是合适的。 section是一小段内容,您可以将其存储为数据库中的单个记录。它通常看起来像这样(并注意标题在section元素内部,而不是在它之前):
更改您的代码段,因为以下内容应该有效
$(document).ready(function() {
$("button").click(function() {
$("section").hide();
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!DOCTYPE html>
<h2>This is a heading</h2>
<section><p>This is a paragraph.</p></section>
<p>This is another paragraph.</p>
<button>Click me to hide paragraphs</button>
答案 1 :(得分:0)
问题是<section>
无法驻留在<p>
标记内。想一想,“部分”不应该位于“段落”中。您可能正在寻找的是<span>
。这样,您可以设置段落的部分样式:
$("p > span").hide();
<p>
<span>This is a paragraph.</span>
</p>
我创造了一个展示这个here的工作小提琴。
希望这有帮助! :)
答案 2 :(得分:0)
HTML5规范告诉我们<p>
元素的内容模型是短语内容。
因此<p>
标记内只能包含以下标记。不是jquery bug;)
a(如果它只包含措辞内容),abbr区域(如果它是a 地图元素的后代)音频b bdi bdo br按钮帆布引用 代码命令datalist del(如果它只包含措辞内容)dfn em嵌入i iframe img输入ins(如果它只包含措辞内容) kbd keygen标签贴图(如果它只包含短语内容)标记数学 米noscript对象输出进度q ruby s samp脚本选择 小跨度强大的时间u var video wbr text