宽度自适应,且内容右对齐

如图所示的一个下拉菜单,想让菜单的宽度自适应,而不是和选项框同宽。但是按钮部分又需要右对齐。
图片描述

当使用浮动,将按钮部分右对齐后,列表的宽度就无法自适应了。

clipboard.png

所以,应该如何写,才能做到两个需求都能满足呢。

阅读 7.6k
3 个回答

看你的描述,需要右对齐的内容(两个button)的宽度应该是固定的,如果是这样,你可以设置li有一个合适的padding-right属性,让padding-right的大小能包含两个button的宽度,并且和左侧的文本之间有合适的间距,然后在两个button外边包一层父元素,设置

position: absolute;
top: 0px;
right: 0px;

因为是相对于li定位,所以需要把li设置为定位的父元素position: relative
效果截图如下:

clipboard.png

clipboard.png

你这个改了后的怎么感觉看起来像是没有清浮动导致的。。。。。。。

话说回来,其实我觉得你可以试试把li用display:flex然后设置justify-content:space-between应该就可以了,我试验的时候效果是这样的。图片描述

简单,你给ul设置
display: inline-block;
li设置
width:100%;
a设置
float:right

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题