老师请问一下,我这四个小li第一个跟最后一个为啥不靠边

老师请问一下,我这四个小li第一个跟最后一个为啥不靠边

<!DOCTYPE html>

<html lang="en">


<head>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Document</title>

    <style>

        header {

            width: 1000px;

            height: 100px;

            /* background-color: black; */

            margin: 0 auto;

        }


        header .logo {

            width: 220px;

            height: 100px;

            float: left;

            background-color: #bfa;

        }


        header .login {

            width: 220px;

            height: 30px;

            background-color: red;

            float: right;

        }


        header>nav {

            margin-top: 10px;

            width: 690px;

            height: 60px;

            background-color: blue;

            float: right;

        }


        .content {

            width: 1000px;

            height: 400px;

            margin: 10px auto;

            /* background-color: black; */

        }


        .content>aside {

            float: left;

            width: 300px;

            height: 400px;

            background-color: pink;

        }


        .content>main {

            width: 690px;

            height: 400px;

            float: right;

            /* background-color: rgb(121, 12, 12); */

        }


        .content>main .banner {

            width: 690px;

            height: 300px;

            background-color: rgb(119, 109, 109);

        }


        .content>main .pics {

            width: 690px;

            height: 85px;

            margin-top: 10px;

            background-color: rgb(143, 44, 44);

        }


        .content>main .pics>ul {

            list-style: none;

        }


        .content>main .pics>ul li {

            float: left;

            width: 150px;

            height: 85px;

            background-color: rgb(212, 150, 150);

            margin-right: 10px;

        }


        .content>main .pics>ul li:last-child {

            margin-right: 0;

        }


        footer {

            width: 1000px;

            height: 100px;

            background-color: black;

            margin: 0 auto;

        }

    </style>

</head>


<body>

    <!-- 头部 -->

    <header>

        <div class="logo"></div>

        <!-- 右上 -->

        <div class="login"></div>

        <!-- 右下 -->

        <nav></nav>

    </header>

    <!-- 内容部分 -->

    <section class="content">

        <!-- 左侧广告部分 -->

        <aside></aside>

        <!-- 右侧内容 -->

        <main>

            <div class="banner"></div>

            <div class="pics">

                <ul>

                    <li></li>

                    <li></li>

                    <li></li>

                    <li></li>

                </ul>

            </div>

        </main>

    </section>

    <!-- 页角 -->

    <footer></footer>

</body>


</html>

相关截图:

https://img1.sycdn.imooc.com//climg/6151e54c09939a8714700341.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕然然 2021-09-28 11:02:56

同学你好,是因为ul元素带有默认的margin和padding,导致与父盒子边缘产生距离,如图

https://img1.sycdn.imooc.com//climg/615285bd09caa51616760662.jpg

建议:html中某些块级元素都会带有默认的margin和padding,所以在开发项目时,会在css代码的开头先将默认的margin和padding清除,再书写其他样式代码,如图

https://img1.sycdn.imooc.com//climg/615285c70992bcb117310637.jpg

祝学习愉快!

  • 提问者 我代码么问题 #1

    老师第一个li可以靠边了,但是最后一个小li靠不了 。

    https://img1.sycdn.imooc.com//climg/615288120910a10013580299.jpg

    2021-09-28 11:12:20
  • 同学你好,需要知道的是,标签一般是默认按照从上到下,从左到右的顺序排列的。

    而此处四个li由于设置了左浮动,会从左向右依次排列,但是如果四个li所占的总空间小于父盒子的总空间的话,那么第四个li肯定无法贴着父盒子右侧。

    因此:需要精确计算一下,每个li的宽度,以及li之间的间距,计算如下:

    假如总空间为500px,li之间的间距为20px,则每个li的宽度 = (500-20*3)/4

    注意:此处假设四个li之间有三个右外边距(matgin-right),最后一个右外边距为0

    祝学习愉快!

    2021-09-28 11:27:48
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师