Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 如何确定伪元素的中心_Css - Fatal编程技术网

Css 如何确定伪元素的中心

Css 如何确定伪元素的中心,css,Css,我试图用css创建一个绿色的框,里面有一个白色的减号。我试图让负号在绿色框内垂直和水平居中 通过明确指定伪减号的顶部和左侧位置,我可以很容易地做到这一点。然而,我想知道是否有另一种非显式的方法来做到这一点。我正在尝试文本对齐和垂直对齐。它不起作用了。外面有人能帮忙吗 *,*:之前,*:之后{ 框大小:边框框; } .集装箱{ 背景颜色:绿色; 显示:内联块; 高度:4em; 宽度:4em; 位置:相对位置; 文本对齐:居中; } .货柜:在{ 内容:“; 背景色:白色; 显示:内联块; 高度:

我试图用css创建一个绿色的框,里面有一个白色的减号。我试图让负号在绿色框内垂直和水平居中

通过明确指定伪减号的顶部和左侧位置,我可以很容易地做到这一点。然而,我想知道是否有另一种非显式的方法来做到这一点。我正在尝试
文本对齐
垂直对齐
。它不起作用了。外面有人能帮忙吗

*,*:之前,*:之后{
框大小:边框框;
}
.集装箱{
背景颜色:绿色;
显示:内联块;
高度:4em;
宽度:4em;
位置:相对位置;
文本对齐:居中;
}
.货柜:在{
内容:“;
背景色:白色;
显示:内联块;
高度:0.5em;
宽度:2米;
位置:绝对位置;
垂直对齐:中间对齐;
}

*,*:之前,*:之后{
框大小:边框框;
}
.集装箱{
背景颜色:绿色;
显示:内联块;
高度:4em;
宽度:4em;
位置:相对位置;
文本对齐:居中;
}
.货柜:在{
内容:“;
背景色:白色;
高度:0.5em;
宽度:2米;
位置:绝对位置;
左:50%;
最高:50%;
-webkit转换:翻译(-50%,-50%);
-moz变换:平移(-50%,-50%);
-ms转换:翻译(-50%,-50%);
-o变换:平移(-50%,-50%);
转换:翻译(-50%,-50%);
}

给出左值和顶值。因为有
位置:绝对用于
.container::before

并且不需要
显示:内联块
垂直对齐:中间然后

*,*:之前,*:之后{
框大小:边框框;
}
.集装箱{
背景颜色:绿色;
显示:内联块;
高度:4em;
宽度:4em;
位置:相对位置;
文本对齐:居中;
}
.容器::之前{
背景色:白色;
内容:“;
高度:0.5em;
左:50%;
线高:0.5em;
位置:绝对位置;
最高:50%;
转换:翻译(-50%,-50%);
宽度:2米;
}

您走对了方向,只需进行两次轻微调整。既然您使用了它们,那么这段代码也应该可以很好地扩展

.container:before {
    content:"";
    background-color:white;
    display:inline-block;
    height: 0.5em;
    width:2em;
    position:absolute;
    top: 1.75em;
    left: 0.5em
}

我所做的是从顶部推1.75em。因为你的方块是4em高,负的是0.5em高,所以准确的中间应该是4em/2-0.5em/2=2-0.25=1.75。同样的数学方法也适用于左设置:4em/2-2em/2=2-1=1em。

你的意思是像这样吗???不指定左或上。@Jeeves在不使用flexbox的左和上值的情况下检查我编辑的答案。