Html 如何在没有设置宽度的情况下将列表块居中?

Html 如何在没有设置宽度的情况下将列表块居中?,html,css,css-float,Html,Css,Css Float,我正在处理一个UL块,一个可以收缩和增长的导航菜单。它充满了向左浮动的列表项,并且是用户定义的任意长度的列表项。它没有固定的宽度,我不能修改HTML或使用javascript。我所能做的就是添加CSS。什么是最安全的居中方式 我必须处理的一个简单示例: 请记住,我只能添加CSS。我无法添加html、js或删除现有css。将ul居中的最简单方法是将其显示属性更改为table并修改边距 使ul居中的最简单方法是将其显示属性更改为table并修改边距 是否要将列表本身或列表内容置于中心位置?请添加

我正在处理一个
UL
块,一个可以收缩和增长的导航菜单。它充满了向左浮动的列表项,并且是用户定义的任意长度的列表项。它没有固定的宽度,我不能修改HTML或使用javascript。我所能做的就是添加CSS。什么是最安全的居中方式

我必须处理的一个简单示例:
请记住,我只能添加CSS。我无法添加html、js或删除现有css。

将ul居中的最简单方法是将其显示属性更改为table并修改边距


使ul居中的最简单方法是将其显示属性更改为table并修改边距


是否要将列表本身或列表内容置于中心位置?请添加一段HTML或提供指向活动示例的链接。@cimmanon,抱歉。我想把整个名单放在中间。UL模块。里面的东西长得很满。如果我可以在不定义宽度的情况下将其居中,则无论内容如何,它都会自动居中。这可能会有所帮助。是否要将列表本身或列表内容居中?请添加一段HTML或提供指向活动示例的链接。@cimmanon,抱歉。我想把整个名单放在中间。UL模块。里面的东西长得很满。如果我可以在不定义宽度的情况下将其居中,无论内容如何,它都会自动居中。也许这会有所帮助。谢谢。我会继续用这个方法。谢谢。我将继续采用这种方法。
ul {
    border: 1px solid;
    padding: 0;
    display: table;
    margin-left: auto;
    margin-right: auto;
}

li {
    border: 1px solid red;
    display: inline-block;
}