css如何让ul居中
3个回答
展开全部
第一个问题
UL设置margin:0px auto是指UL本身相对于父级对象居中。你的UL父级对象是DIV,所以并不是相对屏幕居中,而是相对父级DIV300个PX的居中。解决这个问题的方法是把DIV的宽度去掉,让DIV默认为BODY的宽度。或者干脆直接把父级的DIV去掉。
第二个问题
如果要垂直居中,valign很多浏览器兼容性不好,一般解决方法:如果是一行的话可以设置行高line-height属性和高度height相等;如果是多行的话要复杂的多,可以考虑将父级对象设置为相对定位position:relative,要居中的对象设置为绝对定位position:absolute,然后慢慢调整left和top的值。
第二个问题你还有一个错误就是一个对象如果加了padding之后的话,跟它的宽度没有关系,也就是说。如果你设置一个对象的宽度为200px,padding为50px,它的真实宽度就是200px 加上左边的50px的padding,右边的50px的padding,加起来一共300px;
第三个问题
同第一个问题,li的左右居中依然是相对于它的父级对象即ul居中,只浏览器的宽度没有关系。
第四个问题
没明白你的意思,一个UL里有好多个LI,你要是多个li同时居中?就是全部重叠在一起?还是说
什么居中?或者你的意思是比如ul高200,一共有两个LI,两个LI一个人有50的高度,居中的意思就是说两个LI应该本身占100的高度,然后上面空50,下面空50?
UL设置margin:0px auto是指UL本身相对于父级对象居中。你的UL父级对象是DIV,所以并不是相对屏幕居中,而是相对父级DIV300个PX的居中。解决这个问题的方法是把DIV的宽度去掉,让DIV默认为BODY的宽度。或者干脆直接把父级的DIV去掉。
第二个问题
如果要垂直居中,valign很多浏览器兼容性不好,一般解决方法:如果是一行的话可以设置行高line-height属性和高度height相等;如果是多行的话要复杂的多,可以考虑将父级对象设置为相对定位position:relative,要居中的对象设置为绝对定位position:absolute,然后慢慢调整left和top的值。
第二个问题你还有一个错误就是一个对象如果加了padding之后的话,跟它的宽度没有关系,也就是说。如果你设置一个对象的宽度为200px,padding为50px,它的真实宽度就是200px 加上左边的50px的padding,右边的50px的padding,加起来一共300px;
第三个问题
同第一个问题,li的左右居中依然是相对于它的父级对象即ul居中,只浏览器的宽度没有关系。
第四个问题
没明白你的意思,一个UL里有好多个LI,你要是多个li同时居中?就是全部重叠在一起?还是说
什么居中?或者你的意思是比如ul高200,一共有两个LI,两个LI一个人有50的高度,居中的意思就是说两个LI应该本身占100的高度,然后上面空50,下面空50?
展开全部
可以在#menu里面加个
margin:0
auto;和width:900px;(一般网页有个整体宽度的)
这样页面整体就在中间了,UL漂浮也就漂到中间的最左边
margin:0
auto;和width:900px;(一般网页有个整体宽度的)
这样页面整体就在中间了,UL漂浮也就漂到中间的最左边
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
ul跟div不是一样的块级元素,所不像div那样用margin:0px
auto来居中,要想让ul居中,需要加上display:block
ul{margin:0px
auto;display:block}
auto来居中,要想让ul居中,需要加上display:block
ul{margin:0px
auto;display:block}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询