2015-04-30 48 views
0

我有一个ASP.NET(剃刀)页面中的“动态式”(不要问为什么,就是这样)破解:修改:在之前内联CSS

<div class="myClass" style="background-image: url('@myUrl');"> 

一切就像一个魅力。但它现在需要将URL放在“.myClass:before”(通过myClass:before{height:100px; position: absolute; background-image:url('@myUrl'); z-index:-1;}裁剪背景图像高度)。

此修改只能在CSS中完成,但@myUrl是一个动态值...而且我们还没有动态CSS ...应该如何做quickfix?

+0

你不能,这主要是因为:前元素不是操纵一个真正的元素? – jbutler483

+0

AFAIK没什么。 CSS无法检测到内联样式,并将其扩展到样式表中的某些内容。 –

+0

我明白,但正在寻找黑客... – Serge

回答

4

使用inherit关键字为:before pseudoelement的background-image,所以它会自动继承为div定义的背景。

也设置一个background-size: 0 0到div所以图像不会visibile两次。

div { 
    background-size: 0 0; 
} 

div:before { 
    content: ""; 
    display: block; 
    background-image: inherit; 
    background-size: <your size here>; 
    position: absolute; 
    ... 
} 

例子:http://codepen.io/anon/pen/PqbKde

+0

谢谢。不过,我需要看到只有一个图像(前一个),而不是两个... – Serge

+0

不起作用:http://codepen.io/anon/pen/aOByjd – Serge

+1

@serge http://codepen.io/anon/笔/ PqbKde – fcalderan

相关问题