Javascript 如何定位:在元素到目标元素高度的50%后
如何将Javascript 如何定位:在元素到目标元素高度的50%后,javascript,css,Javascript,Css,如何将:放置在元素之后的父元素高度的50%处 我无法通过js访问:after动态更改,这将是一个简单的计算 元素是一个div,并且的相对绝对位置:后面的应该有一个50%div高度的顶值。尝试以下操作: div{ 高度:200px; 宽度:200px; 背景颜色:蓝色; 显示:表格; } 部门:之后{ 内容:“你好”; 显示:表格单元格; 垂直对齐:中间对齐; } 试试这个: div{ 高度:200px; 宽度:200px; 背景颜色:蓝色; 显示:表格; } 部门:之后{ 内容:“你好”;
:放置在
元素之后的父元素高度的50%处
我无法通过js访问:after
动态更改,这将是一个简单的计算
元素是一个div
,并且的相对绝对位置:后面的应该有一个50%div高度的顶值。尝试以下操作:
div{
高度:200px;
宽度:200px;
背景颜色:蓝色;
显示:表格;
}
部门:之后{
内容:“你好”;
显示:表格单元格;
垂直对齐:中间对齐;
}
试试这个:
div{
高度:200px;
宽度:200px;
背景颜色:蓝色;
显示:表格;
}
部门:之后{
内容:“你好”;
显示:表格单元格;
垂直对齐:中间对齐;
}
您的请求不清楚,但一般来说,如果您使用绝对定位,则定位只是一个百分比问题。这也适用于伪元素的尺寸
div{
宽度:150px;
高度:150像素;
位置:相对位置;
保证金:1em自动;
背景:灰色;
}
div::之后{
内容:"你好",;
位置:绝对位置;
最高:50%;
左:0;
背景:#c0ffee;
身高:50%;
变换:translateY(-50%);/*垂直中心*/
宽度:50%;
文本对齐:居中;
线高:75px;
}
您的请求不清楚,但一般来说,如果您使用绝对定位,则定位只是一个百分比问题。这也适用于伪元素的尺寸
div{
宽度:150px;
高度:150像素;
位置:相对位置;
保证金:1em自动;
背景:灰色;
}
div::之后{
内容:"你好",;
位置:绝对位置;
最高:50%;
左:0;
背景:#c0ffee;
身高:50%;
变换:translateY(-50%);/*垂直中心*/
宽度:50%;
文本对齐:居中;
线高:75px;
}
如果伪元素是绝对定位的,那么只需设置一个top:50%
就可以将伪元素的上边缘放在父元素的中间
否则,如果需要完全垂直中间对齐,则将其向后平移50%:
div::after {
content: "...";
position: absolute;
top: 50%; left: 0;
transform: translateY(-50%);
}
这将首先将伪图元的顶部定位在其图元的中间,然后将其向后平移(在Y坐标中)一半的高度
小提琴:
片段:
div{
位置:相对位置;
高度:200px;宽度:200px;
背景色:#66a;
}
div::之后{
内容:“中”;
位置:绝对位置;
顶部:50%;左侧:0;
转化:translateY(-50%);
}
如果伪元素是绝对定位的,那么只需设置一个top:50%
就可以将伪元素的上边缘放在父元素的中间
否则,如果需要完全垂直中间对齐,则将其向后平移50%:
div::after {
content: "...";
position: absolute;
top: 50%; left: 0;
transform: translateY(-50%);
}
这将首先将伪图元的顶部定位在其图元的中间,然后将其向后平移(在Y坐标中)一半的高度
小提琴:
片段:
div{
位置:相对位置;
高度:200px;宽度:200px;
背景色:#66a;
}
div::之后{
内容:“中”;
位置:绝对位置;
顶部:50%;左侧:0;
转化:translateY(-50%);
}
不清楚你在问什么。您希望伪元素位于何处?元素的高度如果绝对定位,则top:50%
对您不起作用?那是中间的顶部。否则,如果需要完全垂直居中对齐,则将其向后平移50%。看这里——是的:之后是绝对的positioned@Abhitalks请把这个作为一个答案。你问什么还不清楚。您希望伪元素位于何处?元素的高度如果绝对定位,则top:50%
对您不起作用?那是中间的顶部。否则,如果需要完全垂直居中对齐,则将其向后平移50%。看这里——是的:之后是绝对的positioned@Abhitalks请把这个作为一个答案另一个评论有解决方案)另一个评论有解决方案)这么好的答案。