后端人员常用的前端知识

进入新公司接近两个月,让我这个后端人员做了两个月的前端开发。布局中总会踩坑,总结一些技巧分享一下。

1. 两个盒子模型

     布局之前先初始化一下样式,因为不同的浏览器会设置默认的一些样式,例如 body 的 margin、ul li 或者 ol li 的默认样式 。

chrome浏览器默认样式

      确定一下用哪个盒子模型,才能让自己设置的 margin、padding、border 跟自己想布局的那样展示出来。盒子模型如下图,中心的 content 是布局的地方,依次往外分别是 padding border margin。

第一种,为 W3C的标准盒子模型,特点: css 中设置的 width 就是content 的长度,例子如下,设置的 width 为 100px 浏览器渲染之后, div 会占 120px;

 <style>
        div{
            -webkit-box-sizing: content-box;
            -moz-box-sizing: content-box;
            box-sizing: content-box;
        }
        #div1{
            width: 100px;
            height: 100px;
            padding: 5px;
            border: 5px solid yellow;
            background-color: red;
        }
</style>

<body>
    <div id="div1"></div>
</body>

 

第二种,为 ie盒子模型(我一般用这个),特点: css 中设置的 width 就是 content + padding + border 的长度,例子如下,设置的 width 为 100px 浏览器渲染之后, div 会占 100px;

2. position 定位

     经常在面试的时候遇到。第一种,普通的 position 不设置的话默认为 static ,不会脱离文档流。第二种 relative 不会脱离文档流,本身位置会被保留,但是本身的元素会相对于原来文档流中的位置进行定位。如果没有设置 top left right bottom 的话,元素就会在原位置,例子如下

<style>
        div{
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
        }
        #container{
            width: 800px;
            height: 500px;
            margin: 0 auto;
            border: 1px  solid red;
        }
        #div1{
            width: 100px;
            height: 100px;
            border: 1px  solid red;
        }
        #div2{
            width: 100px;
            height: 100px;
            border: 1px  solid red;
            position: relative;
            left: 10px;
        }
        #div3{
            width: 100px;
            height: 100px;
            border: 1px  solid red;
        }
</style>

<body>
    <div id="container">
        <div id="div1">1</div>
        <div id="div2">2</div>
        <div id="div3">3</div>
    </div>
</body>

第三种 absolute 会脱离文档流,本身位置不会被保留,本身的元素会相对于离它最近的 position 不是 static 的父元素进行定位。如果没有设置 top left right bottom 的话,元素就会在原位置。一般常用的用法:外层元素相对定位,内层元素绝对定位,这样交替定位。水平垂直居中(top: 0;  left: 0;  right: 0;  bottom: 0;margin: auto;) 

第四种, fixed 会相对于界面固定,一般用于广告,导航栏,功能栏上。

3. 杂项

     font-size: 单位可以用 em;em 是利用离它最近的定义了 font-size 的元素尺寸的相对值;一般浏览器默认 font-size 默认 16px。

    <!DOCTYPE html> 头部声明是让浏览器用标准模式去解析 html ,这样才会统一,否则浏览器会用奇异模式解析,就是不同的浏览器使用不同的解析方式,这样结果就不同了;还声明这是使用 h5 解析,可以使用  audio video 等标签,可以连接摄像头等。

   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值