老师,请帮忙看一下为什么做出来是这种效果,调半天调不好。谢谢!

老师,请帮忙看一下为什么做出来是这种效果,调半天调不好。谢谢!


http://img1.sycdn.imooc.com//climg/5f3006fc094fd30312040825.jpg

<!DOCTYPE html>

<html>

<head>

        <!-- 此处编写样式 -->

        <style>

            #div0{

                    border: 1px grey dashed;

                    width: 750px;

                    height: 360px;

                    margin: 10px 5px;

                    float: left;


            }

            #div1{

                    margin-top: 5px;

                    margin-left: 5px;

                    margin-right: 5px;

                    margin-bottom: 5px;

                    text-align: center;

                    line-height: 1px;

                    border:1px grey solid;

                    float:left;

            }

            #div2{

                    margin-top: 5px;

                    margin-left: 5px;

                    margin-right: 5px;

                    margin-bottom: 5px;

                    text-align: center;

                    line-height: 1px;

                    border:1px grey solid;

                    float: left;

            }

                 #div3{

                    margin-top: 5px;

                    margin-left: 5px;

                    margin-bottom: 5px;

                    text-align: center;

                    line-height: 1px;

                    border:1px grey solid;

                    float: left;

            }

                 #div4{

                    margin-left: 5px;

                    margin-right: 5px;

                    text-align: center;

                    line-height: 1px;

                    border:1px grey solid;

                    float: left;

            }

                 #div5{

                    margin-left: 5px;

                    margin-right: 5px;

                    text-align: center;

                    line-height: 1px;

                    border:1px grey solid;

                    float: left;

            }

                 #div6{

                    margin-left: 5px;

                    margin-right: 5px;

                    text-align: center;

                    line-height: 1px;

                    border:1px grey solid;

                    float: left;

            }

        </style>

</head>

<body>   

        <!-- 此处写代码 -->    

        <div id="div0">

            <div id="div1">

                <img src="http://img1.sycdn.imooc.com/climg//590fe9770001e63102400135.jpg">

                <p>欢迎来到慕课网学习新知识</p>

            </div>


            <div id="div2">

                <img src="http://img1.sycdn.imooc.com/climg//590fe97d00011bda02400135.jpg">

                <p>欢迎来到慕课网学习新知识</p>

            </div>


            <div id="div3">

                <img src="http://img1.sycdn.imooc.com/climg//590fe982000150ba02400135.jpg">

                <p>欢迎来到慕课网学习新知识</p>

            </div>


            <div id="div4">

                <img src="http://img1.sycdn.imooc.com/climg//590fe9770001e63102400135.jpg">

                <p>欢迎来到慕课网学习新知识</p>

            </div>


            <div id="div5">

                <img src="http://img1.sycdn.imooc.com/climg//590fe97d00011bda02400135.jpg">

                <p>欢迎来到慕课网学习新知识</p>

            </div>

                <img src="http://img1.sycdn.imooc.com/climg//590fe982000150ba02400135.jpg">

                <p>欢迎来到慕课网学习新知识</p>

            <div id="div6"></div>                 

        </div>

</body>

</html>


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

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

2回答
好帮手慕燕燕 2020-08-10 18:19:18

同学你好,

1、div3不设置浮动,div1、div2设置左浮动,div1、div2顶在div3的位置,div3没有设置宽度,占整个div0的宽度,左边被div1和div2遮盖,所以整个边框比较长;div6和div3是一样的原理

2、同学可以优化div0的最大宽度,增大一点,每行将3个div全部能放进去,再将每个div左浮动,div3的边框就不会把div1和div2包进去,可参考下面的示例

http://img1.sycdn.imooc.com//climg/5f311cd60952700f03230238.jpg

http://img1.sycdn.imooc.com//climg/5f311d63095cb9f803140610.jpg

为同学的认真细致点赞,祝学习愉快~~~

好帮手慕燕燕 2020-08-10 11:32:53

同学你好,可参考下面的思路调试代码

1、div1和div2已经设置了左浮动,此时div0还有足够的空白宽度,后面的div3将自动浮上来,和前面的div1、div2并列于一行

http://img1.sycdn.imooc.com//climg/5f30bcdb090a416b03050191.jpg

2、最后一个图片和文字,要放在div6中,属性设置同div3一样,div4、div5已经设置了左浮动,后面的div6自动浮上来,和前面的div4、div5并列于一行

http://img1.sycdn.imooc.com//climg/5f30bd830982497207640181.jpghttp://img1.sycdn.imooc.com//climg/5f30bdde091855de02880157.jpg

3、div3缺少右边距,导致与div6右侧不对齐,为div3添加属性margin-right: 5px;即可

加油,祝学习愉快~~~

  • 提问者 慕粉1504263447 #1
    按照老师讲的,大致实现功能了。但是有一点不懂,按照视频老师的讲解,div3和div6不设置浮动不应该是顶在div1和div4的位置,并且被div1和div4遮盖吗?
    2020-08-10 11:44:06
  • 提问者 慕粉1504263447 #2
    另外还有一个问题,div3和div6如果不设置float,虽然位置对了,但是边框会特别长,把div3的边框会把div1和div2都包进去,有什么办法可以不包进去啊?
    2020-08-10 11:52:40
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
3.从网页搭建入门Python Web
  • 参与学习           人
  • 提交作业       218    份
  • 解答问题       3562    个

本阶段带你用Python开发一个网站,学习主流框架Django+Flask是Python Web开发的第一步,在基础知识上实现积分商城的项目开发,体验真实的项目开发流程,提高解决编程问题和效率的能力。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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