我有一个.content CSS类,缩进55px。在某些情况下,我想在段落的开头包含一个链接,但这个链接我不想缩进。
除了创建一个不包含缩进的新.content2类之外,还是使用直接应用于链接的类来否定缩进吗?
我尝试使用通过调用链接格式的类来应用于链接的负缩进值,但这似乎只会改变链接自己的框中的文本,而实际上我希望链接框是没有缩进。
有问题的网页:http://www.fccorp.us/development/index.jfx.php
非常感谢图片snaplemouton!
这提出了一个新的但相关的问题:多个类的级联顺序是什么?我在firefox中测试(当前版本19.0.2,非beta),链接通常使用两个类,但某些类使用第三个类。
- 更新 -
第一个类配置链接的“框”(框模型)的外观,包括边距以及配置链接文本的外观(链接,访问,活动)。现在的第二类(以前称为第三类)仅在这些链接放在段落中时使用,用于否定因链接在段落内而不再适用的值。我设置了顶级&通过第一类的底部边距,适用于(几乎)每个按钮。对于(现在)第二类,我试图否定放在段落中的少数链接的边距。但由于某些原因,那些通过第二类使用0px(零)的边际值而被否定的值不会被改变。他们保留了第一堂课所赋予的价值。
(正如我输入的那样,我意识到如何消除调整链接/访问/活动属性的键,因此现在正在改变。但我怀疑这会改变什么。如果确实如此,我会更新它。 ) - 正如我在更新中所说的那样,这一改变并没有解决边缘没有消除的问题。
然而,我是否需要通过使用负数来实际否定它们,而不是试图取消现有的边距?这应该有效,但我认为CSS级联意味着某些样式会覆盖其他样式,如果它们相互矛盾的话。或者他们加在一起?
答案 0 :(得分:3)
有多种方法可以做到这一点。通过覆盖边缘或填充(请参阅编辑3中的链接),将缩进设置为0,或者按照我喜欢的方式,通过对内容使用宽度为100%的宽度div元素并将其浮动到左侧。
<div style="float:left; width:100%;">
<a style="float:left">stuff</a>
</div>
编辑:它还应该修复锚点旁边有一行的文本。如果你真的希望你的横幅文本正确,你可以删除div并简单地浮动左边的锚。
我更喜欢使用Div,因为它非常灵活,允许您真正设置或删除空白空格,就像您希望的那样。
编辑2:我甚至制作了一幅油漆图片来向您展示其中的差异。 :)
编辑3:要回答你的新问题,这里有一个链接,可以解释关于级联顺序的所有内容。
http://monc.se/kitchen/38/cascading-order-and-inheritance-in-css
基本上是最重的胜利。如果两者具有相同的重量,后者总是赢。 (无论哪个最后都会生效。)
按顺序:样式直接添加到元素&gt;样式表&gt;默认
内部样式表,#id&gt; .class&gt;元件
如果有多个相同,则最后一个将获胜。
编辑4:对不起,我在答案中的第二句错了。我编辑了它。
您只需将其添加到锚点
即可margin-left:0px;
margin-bottom: 0px;
margin-top: 0px;
删除保证金。
答案 1 :(得分:3)
级联主要由特异性决定。以下是优先级列表,从高到低。
1. !important modifier
2. Dynamically-applied styles using JavaScript
3. Inline styles specified using the style attribute
4. Specificity of the selector (higher specificity wins)
(a) #id (100 points each)
(b) .class, :pseudo-class, [attribute] ( 10 points each)
(c) element, ::pseudo-element ( 1 point each )
(d) * ( 0 points each)
5. Whichever one appears last
最后应用具有最高优先级的样式。在平局中,代码中稍后出现的那个胜出。
这有点过于简单化,但它应该传达基本的想法。更详细:
!important
修饰符的样式会在没有它的情况下击败任何样式。特异性示例
formal informal
selector notation notation
--------- -------- --------
* {} 0,0,0,0 0000
div {} 0,0,0,1 0001
.a {} 0,0,1,0 0010
#a {} 0,1,0,0 0100
div#a.b.c {} 0,1,2,1 0121
此外,内联样式的特殊性是1000点(1,0,0,0)。
答案 2 :(得分:1)
text-indent: 0px;
CSS属性。
否定该值并将其用于链接的左侧或左侧边距,将得到您想要的结果。
<p style="text-indent:40px;">
<a hre="#" style="margin-left:-40px;" onclick="this.style.display='none';">Un-indent</a> blah blah blah blah blah</p>