【问题标题】::before pseudo element without moving actual content:before 伪元素而不移动实际内容
【发布时间】:2014-06-23 18:18:21
【问题描述】:

我希望某个链接元素始终位于下一行,并且在它之前有一个图标,如下所示:

  Lorem ipsum dolor sit amet, consectetur adipiscing      
  imperdiet turpis vulputate vel. Duis erat purus,     
  Maecenas eu odio eget felis commodo lacinia. Sed pellentesque, 
  metus id blandit volutpat, mi nisl egestas lacus, ut
> THIS IS THE LINK

这样

  Lorem ipsum dolor sit amet, consectetur adipiscing      
  imperdiet turpis vulputate vel. Duis erat purus,     
  Maecenas eu odio eget felis commodo lacinia. Sed pellentesque, 
  metus id blandit volutpat, mi nisl egestas lacus, ut
  > THIS IS THE LINK

现在当我使用 :before 伪元素时,它可以完成这项工作,但是在更改字体或字体大小时,缩进是错误的。

a:before{
   content:"> ";
   width:0;
}

有人吗?

【问题讨论】:

    标签: css pseudo-element


    【解决方案1】:

    应该这样做:

    Demo Fiddle

    a{
       position:relative;
    }
    a:before{
       content:"> ";
       width:0;
       position:absolute;
       left:-10px;
    }
    

    您需要为之前的:psuedo 设置定位,然后将其向左偏移。为了做到这一点,它需要确定自己的相对位置,这就是为什么你还要给'父'a一个位置。

    正如 Duroth 所说 - 如果您不希望它看起来占用空间,您也可以将伪位置值指定为 absolute

    【讨论】:

    • 你为什么选择position: relative而不是absolute作为伪元素?
    猜你喜欢
    • 1970-01-01
    • 2018-09-03
    • 1970-01-01
    • 2013-01-09
    • 2020-02-15
    • 1970-01-01
    • 2013-04-17
    • 2021-12-27
    • 1970-01-01
    相关资源
    最近更新 更多