css设置元素继承父元素宽度_CSS:伪元素:之前和之后:从原始元素继承宽度/高度...

我使用CSS伪元素:before和:after在网站上为我的某些图像提供缩进效果。但是,没有指定宽度和高度,这些将不会显示。这将让我为每个图像指定一个固定的宽度和高度,我想这将适用于静态网页。CSS:伪元素:之前和之后:从原始元素继承宽度/高度

但是,因为这些图像是使用jQuery动态生成的并且是用户提交的,所以图像的宽度和高度每次都不相同。现在我可能可以通过从图像中获取宽度并将其传递给:before来解决这个问题,但是对于像这样的东西来说,这看起来太像了。

我的问题是,如果有一种方法可以只用CSS来做到这一点,那么将包含图像的宽度传递给:before在此< li>之前,以便:before和:after pseudo-元素继承了原始元素的宽度和高度。

基本页面布局:

# css style simplefied

ul{ float:left; list-style:none}

li{float:left;}

li img{float:left}

li:before{

content:"":

position:relative;

position:absolute;

float:left;

box-shadow:0 1px 2px rgba(0,0,0,0.4);

}

PS:需要兼容性仅适用于移动WebKit浏览器。

编辑

我可以例如通过使用以下行添加行的CSS使用Javascript:

var heightImg = (($('ul li:nth-child(n)').height())) + 'px';

document.styleSheets[1].insertRule('ul li:before { height: ' + heightImg+ '; }', 0);

但是,这将意味着我还必须动态ID的工作。这不会很难,但我只是想知道是否没有CSS的唯一方式。

+1

为什么你给'li:before'指定'position'两次? –

+0

不理解Q,这个代码(双重定位)在水平线上生成图像,它们之间没有空间,你是说你想要它们之间的空间吗?或者移动应用程序中的图像永远不会水平,如果这是为什么使用浮动的情况?那么你是什么意思“缩进不同的价值观”,你真的希望图像看起来集中......对于愚蠢的问题对不起,但真的没有得到你想要达到什么样子) - 也许是一个嘲弄的形象需要的外观 –

+0

对不起,我的意思是我想让图像沉入页面,所以我在之前应用了一个箱形阴影:在这之前,它与图像重叠并给出图像阴影边缘使它看起来像是沉入页面。 –

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值