我试图将伪元素
无论列表项文本的长度如何,我都希望该元素距离右侧30像素。
我已将以下代码简化为我认为必需的最基本内容以解决此问题。
请注意这是一个移动端菜单。菜单和
上述代码产生以下结果:
正如您所看到的,我需要将其定位到左边150像素,以使元素向右移动30像素。它可以工作,但我可以预见一个问题,即如果菜单项有很多文本,它将超过150像素,元素将位于文本中。例如:
我需要元素在文本右侧30像素,无论文本长度如何。因此它会看起来像这样:
:after
定位在菜单列表项的右侧30像素处。无论列表项文本的长度如何,我都希望该元素距离右侧30像素。
我已将以下代码简化为我认为必需的最基本内容以解决此问题。
请注意这是一个移动端菜单。菜单和
a
标签链接延伸到浏览器(手机)的整个宽度。
#menu-main-menu-1 li {
position: relative;
list-style: none;
}
#menu-main-menu-1 li a {
padding: 18px 0;
display: block;
text-align: center;
}
#menu-main-menu-1 a:after {
content: "\25CF";
position: absolute;
right: 0;
left: 150px;
top: 20px;
}
<ul id="menu-main-menu-1">
<li class="menu-item">
<a href="#">Menu Item</a>
</li>
<li class="menu-item">
<a href="#">Long Menu Item Text</a>
</li>
</ul>
这是JSFiddle链接: JSFiddle
请注意,我已经删除了许多不影响此问题功能的不必要样式(颜色、字体等)。
任何帮助将不胜感激!
谢谢