我在这里的第一篇文章,不幸的是,它不会那么令人兴奋,我需要一个包含IE6的答案。
为了在段落之间获得空间,我正在为我的<p>
标签设置样式:
div.content_cms p {
margin-top: 0px;
margin-bottom: 15px;
padding: 0px 15px 0px 0px;
}
边距底部以展开段落。这当然很好。但是我还需要用html设置链接样式:
<p><a href="#">Text</a> </p>
如上例所示有链接时,我不希望应用margin-bottom。我试着解决这个问题:
div.content_cms p a {
margin-bottom: 0px !important;
}
这当然不起作用。
我正在使用jQuery向<a>
标签添加一个类,因此我可以自动为链接添加一个图标。我尝试添加
margin-bottom: 0px !important;
到我正在使用jQuery添加的类,但这也不起作用。
在<p>paragraphs</p>
与文字之间设置间距的最佳方式是什么,而不是带链接的段落?
谢谢。
答案 0 :(得分:1)
您可以使用jQuery轻松完成此操作:
$('p').has('a').css('margin-bottom', 0);
现场演示: http://jsfiddle.net/NyjvT/
如果您需要设置多个样式,请考虑以下事项:
$('p').has('a').addClass('whatever');
CSS:
p.whatever { margin-botttom:0; font-size:20px; ... }
答案 1 :(得分:0)
我认为你不能。
您最好的选择是为这些特定的<p>
元素添加一个类,并覆盖这些元素的边距:
div.content_cms p.nomargin {
margin-bottom: 0px;
}
<p class="nomargin"><a href="#">Text</a></p>
如果在服务器端无法做到这一点,你可以做一些jQuery hackery来处理它。
也许有一些可以使用的CSS3魔法,但我不确定;而且既然你想要IE6支持,那么无论如何都是不可能的。
答案 2 :(得分:0)
仅使用CSS无法实现。
CSS(层叠样式表)仅适用于文档树。
原因在于表现。
欲了解更多信息,请阅读:
http://snook.ca/archives/html_and_css/css-parent-selectors
http://www.shauninman.com/archive/2008/05/05/css_qualified_selectors#comment_3940
你需要使用javascript才能工作。