4-5编程?元素居中的冲突问题
*{margin:0;padding:0;list-style-type:none;} div.big{text-align:center;} h3{background:#dbdbdb;padding:8px;border:thin solid #BDC4DE;margin-left:30%;margin-right:30%;} ul{display:none;} .div1:hover ul{display:block;} .div2:hover ul{display:block;} .div3:hover ul{display:block;}
这是我最先写的代码,后来发现不论给哪里(ul或相对应的class值)添加border属性,弹出的列表都没有边框。
当改变h3的属性定义之后,即:
h3{width:100px;border:1px solid pink;} ul{display:none;width:100px;border:1px solid pink;}
结果又不居中显示
但是加上“margin:quto;"之后,又可以居中显示。这是为何?
h3{width:100px;border:1px solid pink;margin:auto} ul{display:none;width:100px;border:1px solid pink;margin:auto;}
21
收起
正在回答
3回答
替换第二段代码后,外侧和里层的div 没有设置宽度,所以默认充满整个容器。text-align 只是对文字进行居中,所以没有实现整体居中,里面h3 和 ul 设置了宽度,设置了margin值后,使其针对父元素居中,希望解答你的疑惑,欢迎采纳,加油!
a1376743421
2018-05-03 15:25:34
补充:最先的那段代码,补充border属性后可以显示边框。问题就是下面那两段代码,关于margin的问题
前端小白入门系列课程
- 参与学习 人
- 提交作业 11218 份
- 解答问题 36713 个
从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星