这段代码contrainer右边的border显示不太正确,应该是随着图片的,而不是整个网页的宽度

这段代码contrainer右边的border显示不太正确,应该是随着图片的,而不是整个网页的宽度

<!DOCTYPE html>
<html>
<head>
       <style type="text/css">
          *{ 
              margin:0;
              padding:0;
          }
          .container{
              width:100%;
              border:dotted 1px #ccc;
              margin:10px;
              overflow:hidden;
              zoom:1;
          }
          
          .content{
              border:solid 1px #ccc;
              margin:10px;
              float:left;
          }
          
       </style>
</head>
<body>   
     <div class="container">
         <div class="content">
             <img src="http://img1.sycdn.imooc.com/climg//590fe9770001e63102400135.jpg"/>
             <p>欢迎来到慕课网学习新知识!</p>
         </div>
         
         <div class="content">
             <img src="http://img1.sycdn.imooc.com/climg//590fe97d00011bda02400135.jpg"/>
             <p>欢迎来到慕课网学习新知识!</p>
         </div>
         
         <div class="content">
             <img src="http://img1.sycdn.imooc.com/climg//590fe982000150ba02400135.jpg"/>
             <p>欢迎来到慕课网学习新知识!</p>
         </div>
         
         <div class="content">
             <img src="http://img1.sycdn.imooc.com/climg//590fe9770001e63102400135.jpg"/>
             <p>欢迎来到慕课网学习新知识!</p>
         </div>
         
         <div class="content">
             <img src="http://img1.sycdn.imooc.com/climg//590fe97d00011bda02400135.jpg"/>
             <p>欢迎来到慕课网学习新知识!</p>
         </div>
         
         <div class="content">
             <img src="http://img1.sycdn.imooc.com/climg//590fe982000150ba02400135.jpg"/>
             <p>欢迎来到慕课网学习新知识!</p>
         </div>
     </div>    
</body>
</html>


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

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

1回答
好帮手慕星星 2019-04-10 15:47:57

你好,经测试显示效果如下:

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

是因为container盒子设置了宽度为100%,所以边框是浏览器的宽度上添加的,所以会有这种效果。可以调整container盒子的宽度,如下:

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

每小盒子宽度是242px,三个小盒子就是726px,然后加上每个小盒子有左右margin值10px,所以就是726+10*6=786px。

给大盒子设置padding为10px是因为图片之间的间距是图片与边界之间的2倍,所以给大盒子加上padding值,这样每个部分间距就是一样的。

自己可以修改测试下,祝学习愉快!

  • 提问者 Di1860 #1
    老师,在计算786px的时候为什么没有计算border的值呢?我测试的结果是,如果你加上6pxd border值,变成三行两列的图片展示效果,所以是不是contrainer的width应该为792px
    2019-04-10 16:19:07
  • 好帮手慕星星 回复 提问者 Di1860 #2
    说的是小盒子的border吗?是添加上的,每个小盒子宽度里面包括border了,图片是240px,加上左右的border2px,每个小盒子就是242px。
    2019-04-10 16:57:33
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

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

在线咨询

领取优惠

免费试听

领取大纲

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