右侧登录框的div向左填充30像素有效果,但是查看发现填充前后的宽度没有变化

右侧登录框的div向左填充30像素有效果,但是查看发现填充前后的宽度没有变化

<!DOCTYPE html>

<html>

<head>

<title>圣杯布局</title>

<meta charset="utf-8">

<style type="text/css">

*{margin:0px;padding:0px;}

body{min-width: 900px;}

.header,.footer{width: 100%;height: 100px;color: white;background-color: black;float: left;}

.header .logo{float: left;}

         a{color: white;text-decoration: none;}

.header .rightsiderba ul{float: right;}

.header .rightsiderba ul li{float: left;list-style: none;height: 100px;line-height: 100px;margin-left: 50px;margin-right: 50px;}

.header .rightsiderba{overflow: hidden;}

.container{padding: 0 350px 0 370px;}

.left,.middle,.right{position: relative;float: left;min-height: 800px;}

.middle{width: 100%;background-color: rgb(255,192,203);}

.left{width: 370px;background-color: rgb(255,239,219);}

.right{width: 350px;background-color:rgb(173,216,230)}

        .left{margin-left: -100%;left: -370px;}

        .right{margin-left: -350px;right:-350px;}

        .footer ul {text-align: center;}

        .footer ul li{display: inline-block;list-style: none;height: 100px;line-height: 100px;margin-left: 100px;text-align: center;}

        .container .left ul li a{color: black;}

        .container .left ul li{text-align: left;list-style: none;}

        .container .left ul{}

        .introduce{width: 293px;margin:0px auto;margin-top: 250px;line-height: 17px}

        h1{height:40px;}

        span{background-color: rgb(251,156,157);}

        .right ul{border: 1px red solid;padding-left:30px }

        .right ul li{list-style: none;}

        .submit{

        width:300px;

        height:50px;

        background-color:#f00;

        border:none;

        cursor:pointer;

        color:white;

        font-size:20px;}

        input{height: 40px;width: 300px;font-size: 15px;}


</style>

</head>

<body>

<!--头部-->

<div class="header">

<!--logo-->

<div class="logo">

<img src="http://img1.sycdn.imooc.com/climg//590037f600016ce303000100.png">

</div>

<!--右导航-->

<div class="rightsiderba">

<div class="introduce">

<h1>课程推荐</h1>

<ul>


       <li><a href="#">课程</a></li>


       <li><a href="#">职业路径</a></li>


       <li><a href="#">实战</a></li>


       <li><a href="#">猿问</a></li>


       <li><a href="#">手记</a></li>


            </ul>

        </div>

</div>

</div>

<!--主体-->

<div class="container">

<!--中间部分-->

<div class="middle">

</div>

<!--左边部分-->

<div class="left">

                      <div class="introduce">

                      <h1>课程推荐</h1>

                   <ul>    

                   

                    <li><span>职业路径</span>&nbsp;HTML5与CSS3实现动态网页</li><br/>    


                    <li><span>职业路径</span>&nbsp;零基础入门Andriod语法与界面</li><br/>    


                    <li><span>职业路径</span>&nbsp;IOS基础语法与常用控件</li><br/>    


                    <li><span>职业路径</span>&nbsp;PHP入门开发</li><br/>    


                    <li><span>职业路径</span>&nbsp;JAVA入门开发</li><br/>    


                  </ul>    

              </div>

</div>

<!--右边部分-->

<div class="right">

<form>

<ul>

<li><h2>登录</h2></li>

<li><input type="text" name="user" placeholder="请输入账号" </li>

<li><input type="password" name="user" placeholder="请输入密码" ></li>

<li><input class="submit" type="submit" name="enter" value="登录"></li>

</ul>

</form>

</div>

</div>

<!--脚部-->

<div class="footer">

<ul>


          <li><a href="#">首页网站</a></li>


       <li><a href="#">企业合作</a></li>


       <li><a href="#">人才招聘</a></li>


       <li><a href="#">联系我们</a></li>


       <li><a href="#">友情链接</a></li>


          </ul>


         </div>

</div>

</body>

</html>


正在回答

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

1回答

同学指的是ul的总宽度没有变化吗 ,如下:

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

因为元素的总宽度包括 : 元素的content( 也就是css中设置的width)  + padding( 填充) +border . 填充是包括在总宽度里面的 ,  如果元素没有设置content的宽度width , 并设置了padding , 那么总宽度不会变化 , 它会挤掉contet的宽度 ,  也就是说 , 总宽度350px , 没有padding时 , content宽度350px :

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

设置padding后 , content宽度变小 :

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

希望解答了你的疑惑 ,祝学习愉快 ! 望采纳


  • qq_初闻陌小瑞_0 提问者 #1
    老师 为啥我给.right 也就是包含登录框的那个DIV设置内填充,.right宽度就会变化囊,而且会被挤下来。为啥给ul内填充内容就会缩短 整体宽度不变。
    2018-09-11 21:05:02
  • 老师在解释中提到了 "元素没有设置content的宽度width" , 那么设置padding后它会自动挤掉content的宽度 , 总宽度就不会变化了 . 同学所说的right会变化是因为right设置了宽度哦 , 也就是说content设置了宽度 , padding就不会去挤掉content的宽度了 , 这时候总宽度就变大了哦
    2018-09-12 09:32:29
  • 多谢老师懂了
    2018-09-12 13:33:49
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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