我在这里有这段代码,我正在尝试ul.submenu li
根据其内容进行拉伸。正如你所看到的,第三li
个ul.submenu
有一个很长的文本,它隐藏而不是拉伸li
.
我尝试display
使用各种组合更改 DOM 上所有元素的属性,但我无法做到正确。
我做错了什么,为什么会这样?我错过了什么?
任何帮助将不胜感激!:)
我在这里有这段代码,我正在尝试ul.submenu li
根据其内容进行拉伸。正如你所看到的,第三li
个ul.submenu
有一个很长的文本,它隐藏而不是拉伸li
.
我尝试display
使用各种组合更改 DOM 上所有元素的属性,但我无法做到正确。
我做错了什么,为什么会这样?我错过了什么?
任何帮助将不胜感激!:)
目前,由于块显示和绝对定位,文本对布局影响不大。
您可以通过给出li
sdisplay: inline-block
和white-space: nowrap
. 我已经分叉了一个示例,其中子菜单与最长项目所需的长度一样长。
inline-block
给出inline
和block
显示的元素属性:inline
因为元素应该像文本一样流动,并从它包含的文本中获取其初始布局和尺寸。但是该block
部分意味着您还可以指定顶部和底部填充和边距,清除等。即使使用此设置,包含元素仍然是绝对定位的(大多数文本内容只要它需要就可以流动,因为通常包含块元素填充 100 % width - 不是绝对、相对和固定元素的情况),所以它的本能是折叠到最小宽度,即第一个单词的宽度。但是如果我们使用white-space: nowrap
,我们可以强制文本尽可能多地扩展,因此使用完整的句子作为衡量标准。