如何定义宽度:在伪元素之前相对于包含元素

时间:2016-10-12 09:36:37

标签: html css width pseudo-element relative

我想在特定字词上放置一个图像圈。

<p>
   <span class="Subjekt">Vater</span>
   <span class="Praedikat">bringt</span>
</p>

.Subjekt:before {
    position: absolute;
    background-image: url(images/markup/einkreisen1.png);
    background-size: 100% 100%;
    display: inline-block;
    margin-left: -20px;
    width: 100px; 
    height: 50px;
    content:"";
}

哪个工作正常。但是有一个固定的大小。

有没有办法定义相对于.Subjekt元素的伪元素的宽度?

1 个答案:

答案 0 :(得分:1)

relative元素before元素使用Subjekt定位。

见下面的例子:

  1. relative提供Subjekt位置。

  2. 尝试更改width的{​​{1}}和height(请注意,我已将该元素设置为Subjekt,因为inline-block元素 - 这是默认的显示类型 - 不会占用宽度或高度)

  3. inline元素的heightwidth设为100%。

  4. 我将before放到z-index: -1后面的地方。

  5. before
    .Subjekt {
        position: relative;
        width: 200px;
        height: 200px;
        display: inline-block;
    }
    .Subjekt:before {
        position: absolute;
        background-image: url(http://placehold.it/100x100);
        background-size: 100% 100%;
        display: inline-block;
        width: 100%; 
        height: 100%;
        content:"";
        z-index: -1;
    }

    希望你能从这里开始。请告诉我您对此的反馈。谢谢!