为了账号安全,请及时绑定邮箱和手机立即绑定

设置两个ul,样式中设置ul为行内元素,为什么两个ul会跑到一行

http://img1.sycdn.imooc.com//5a1fb1340001b71506630484.jpg

http://img1.sycdn.imooc.com//5a1fb1330001aa9f15340206.jpg

为什么两个列表会跑到同一行呢?不应该是两行么,123和456分别占一行


正在回答

6 回答

<!DOCTYPE HTML>
<html >
    <head>
        <title></title>
        <style>
        .container{
            text-align:center
        }
        .container ul{
            display:inline;
            margin:0;
            padding:0;
            list-style:none;
        }
        .container li{
            margin-left:8;
            display:inline;
        }
      
        </style>
    </head>
    <body >
        <div class="container">
            <ul >
                <li>1</li>
                <li>2</li>
                <li>3</li>
            </ul>
        </div>
        
        <div>
            <ul>
            <li>4</li>
            <li>5</li>
            <li>6</li>
            </ul>
        </div>
        
    </body>
</html>

注意<div>的结构。

text-align:center;     对所有子元素起作用 。

自己思考一下。

0 回复 有任何疑惑可以回复我~

首先ul这种属于块级元素,自己会主动换行的。然后你现在把ul都设置为行内元素,行内元素是在同一行不会换行的。其实li也是换行的,li也属于块级元素。你可以把li的那个设置去掉,你会看到1 2 3换行。你把那个li设置的margin设置小一点同时把最开始的块级元素居中注释掉,也可以看到ul也是并列的。

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>不定宽块状元素水平居中</title>
<style>
/*.container{text-align:center;}*/
.container ul{list-style:none;margin:0;padding:0;display:inline;}
.container li{margin-right:20px;display:inline;}
</style>
</head>

<body>
<div class="container">
    <ul>
     <li><a href="#">1</a></li>
        <li><a href="#">2</a></li>
        <li><a href="#">3</a></li>
    </ul>
      <ul>
     <li><a href="#">4</a></li>
        <li><a href="#">5</a></li>
        <li><a href="#">6</a></li>
    </ul>
</div>
</body>
</html>

http://img1.sycdn.imooc.com//5a4f4f9e00014b3c09400547.jpg

1 回复 有任何疑惑可以回复我~

.container ul{} 这是后代选择器,设置的属性作用于其内的所有。

0 回复 有任何疑惑可以回复我~

<h>标签写错了,不是<h>,而是<h1>...<h6>,h后面得带上数字才是标题标签。

0 回复 有任何疑惑可以回复我~

还是不清楚,如图下面三种情况,望能详细解答,自己理解不清楚,谢谢。

  1. 如果仅仅设置ul为内联元素:


    http://img1.sycdn.imooc.com//5a1fc72200019dec13450541.jpg

  2. 仅仅设置li为内联元素,这个就很能理解。


    http://img1.sycdn.imooc.com//5a1fc7600001a20313570545.jpg

  3. 两者都为内联元素时,为何下面的h也跟着在同一行


    http://img1.sycdn.imooc.com//5a1fc77d0001b0e114210552.jpg

0 回复 有任何疑惑可以回复我~
#1

lagina_lin

你是想写标题标签吗?标题标签是<hn>(n=1,2,3……6)你那个<h>标签没写正确被自动忽略了,所以“哈哈”这两个字还是在一行显示,不是块级元素,你在标签里面加上数字就不会跟着上去了
2018-01-12 回复 有任何疑惑可以回复我~

因为是行内元素啊、所以不分行,相当于两个ul同占一行

0 回复 有任何疑惑可以回复我~
#1

慕斯8308057 提问者

请看评论中的描述,我回复错地方了。
2017-11-30 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

设置两个ul,样式中设置ul为行内元素,为什么两个ul会跑到一行

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信