[英]Positioning relative to table-cell
'position:relative'对table-row-group,table-header-group,table-footer-group,table-row,table-column-group,table-column,table-cell和table-caption元素的影响未定义。
来源: http : //www.w3.org/TR/CSS21/visuren.html#propdef-position
有什么想法要相对的位置:我使用:before或:after选择器将显示属性设置为table-cell?
.someclass{display: table-cell; position: relative; z-index: auto;}
/*this won't work*/
恕我直言: 在支持CSS3 position:relative
浏览器中 position:relative
对于表格元素应该起作用 。 现在,它仅在Firefox中有效。
https://www.w3.org/TR/css-position-3/#valdef-position-relative
https://www.w3.org/TR/css-position-3/#property-index
属性名称:
position
适用于:除table-column-group
和table-column
以外的所有元素
https://developer.mozilla.org/zh-CN/docs/Web/CSS/position#relative关于“堆栈上下文”,但这不是此问题的主题
当z-index的值不是auto时,此值(
position: relative
)创建一个新的堆叠上下文。 它对table-*-group
,table-row
,table-column
,table-cell
和table-caption
元素的影响是不确定的。
有一种没有其他元素使用负余量的hacky方法:
td span {
display: block;
width: 10px;
height: 10px;
margin: -5px;
background: red;
position: relative;
top: -5px;
left: -5px;
}
您只需相对于像元放置元素,即可通过在所有侧面上增加与元素自身尺寸相关的负边距来消除其对其他元素的尺寸影响。
这里的问题是,定位的元素必须具有固定的尺寸(不能使用负边距百分比,因为这取决于外部元素)。
另一种可能更常见的解决方案是在相对于单元格宽度的位置内添加一个附加包装元素,并将其他子元素绝对定位到该包装。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.