2018-10-31day03css属性

1.标准流和浮动

1.标准流布局:在标准流中,块级标签是一个占一行,默认宽度是父标签的宽度,默认高度是内容的高度并且可以设置宽度和高度
行内标签,一行可以显示多个,默认的宽度和高度都是内容的宽度和高度;设置宽和高无效
行内块标签,一行可以显示多个,默认的宽度和高度也都是内容的宽和高,可以设置宽度和高度。
块级标签:h1-h6,p 列表标签 table tr
行内标签:a,img td input select option textarea span

2.display

1.display(设置标签的性质)
block --将其他的标签转换成块级标签
inline-block --将标签设置为行内块标签(注意坑:一般不会将标签转换成行内块解决问题)
因为inline-block在显示的时候每个标签内容之间会有空隙,衔接不完美。
inline --将标签设置为行内标签

3.float浮动

1.浮动会让标签脱离标准流进行布局(脱流)
2.float属性
left--左浮动
rigjt--右浮动
3.脱流后的布局规则,不管什么标签,脱流后都可以一行显示多个
而且可以设置高度和宽度

    <!--设置float属性后的标签会脱流-->
        <!--<p style="background-color: cadetblue;">我是段落</p>
        <p>段落2</p>
        <!--<a href="" style="background-color: aquamarine;">123</a>-->
        <!--<a href="">abc</a>-->-->
        <div style="background-color: #0000FF;width: 200px;height: 300px;float: left;">1</div>
        <div style="background-color: aqua;width: 200px;height: 500px;float: left;">2</div>
        <div style="background-color: #A52A2A;width: 200px;height: 300px;float: left;">3</div>
        <div style="background-color: bisque;width: 200px;height: 600px;">4</div>

4.清除浮动

1.清除浮动
清除浮动指的是因为浮动而产生的高度塌陷问题
2.高度塌陷
当父标签不浮动,并且不设置高度,但是子标签浮动的时候就会产生高度塌陷问题
3.清除方法
a.添加空的div。在父标签的最后添加一个空的div设置样式clear属性为both
b.将会塌陷的标签中添加样式style,将overflow属性的值设置为hidden

5.文字环绕效果

文字环绕效果:被环绕的标签,例如图片对应的标签浮动,文字对应的标签不浮动,就可以产生
文字环绕图片的效果。文字不会被覆盖

6.定位

CSS可以通过left、right、top、bottom来对标签进行定位。前提是设置好参考对象

1.定位属性:
left - 标签左边距
right -标签右边距
bottom - 标签下边距
top -标签上边距

注意:a.定位需要通过position设置参考对象
b.当标签的宽度固定的时候,同时设置left和right只有left有效
c.可以同时设置left和right不设置width的时候,width会自动拉伸,top和bottom同理

2.position属性
initial--(所有标签的默认值)
(没什么用处)static-- 不希望被相对定位的时候就设置属性为static,也可以不设置,因为一般标签的默认值都为initial

absolute --相对第一个非static和非initial的父标签进行定位(如果没有就相对body定位,即浏览器边界)
relative--相对于自己在标准流位置进行定位,
如果一个标签希望子标签相对自己定位就设置position为relative
fixed --相对于浏览器定位。会一直存在浏览器屏幕不会被划走。会一直存在于浏览器的底部
sticky --粘性定位,只针对网页底部标签定位,会跟着当前页面内容的最底部,相当于内容的一部分一样
将left、right等四个的属性值设为负值可以反方向移动
在相对移动的父类里面设置overflow: hidden 可以裁剪掉子类反向移动超出的部分

    <head>
        <meta charset="UTF-8">
        <title></title>
        <style type="text/css">
            
            #div1{
                background-color: #0000FF;
                width: 600px;
                height: 600px;
                position: relative;
                overflow: hidden;
                
            }
            #div2{
                background-color: aqua;
                width: 400px;
                height: 400px;
        }
            #div3{
                background-color: brown;
                width: 200px;
                height: 200px;
                position: absolute;
                right: -50px;
            }
            #div4{
                background-color: aquamarine;
                width: 100px;
                height: 100px;
                position: absolute;
                left: -50px;
                top: -50px; 
                
            }
            
        </style>
    </head>
    <body>
        <div id="div1">
            <div id="div2">
                <div id="div4">
                    
                </div>
                <div id="div3">
                    
                </div>
            </div>
        
        </div>
    
    </body>

7.盒子模型

html中多有课件的标签都是盒子模型。有固定的结构,结构中包括内容部分、padding、border、margin四个部分。
内容--可见的,设置width和height实质就是设置内容的大小;添加子标签或者设置文字内容都是添加或者显示在内容部分的
设置的background-color会作用于内容部分

padding--可见的,分上下左右四个部分。一般默认值都是零。设置背景颜色也会作用于padding

可以给style添加padding-left/right\top/bottom来设置padding的宽度增加标签的大小。相当于给四周加了一圈

border --可见的,分上下左右四个部分;一般默认都是0;
border的背景颜色需要单独设置
格式 border:线的样式 颜色 宽度
线的样式 solid实线、double双实线、dashed点划线、dotted虚线
border-radius 可以设置切圆角,可以同时切 也可以通过left等切单独的角

margin --不可见,但是占位置;分上下左右四个部分,一般默认值是0

    <head>
        <meta charset="UTF-8">
        <title></title>
        <style type="text/css">
            
            #div1{
                /*设置内容部分*/
                background-color: #0000FF;
                width:300px;
                height: 400px;
                padding:40px ;          
            }
            #div6 div{
                background-color: #0000FF;
                width: 200px;
                height: 200px;
                margin: 10px;
                float: left;
            }
            #div5 div{
                background-color: #0000FF;
                width: 200px;
                height: 200px;
                margin: 10px;
                float: left;
        </style>
    </head>     
    <body>
        
        <!--<div id="div1"><div style="background-color: #A52A2A;width: 50px;height: 50px;"></div></div>-->
        <div id="div6" style="height: 220px;">
            <div ></div>
            <div></div>
            <div></div>
            
        </div>
        <div id="div5">
            <div></div>
            <div></div>
            <div></div>
        </div>

    </body> 
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,805评论 1 92
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,720评论 1 45
  • 一、CSS入门 1、css选择器 选择器的作用是“用于确定(选定)要进行样式设定的标签(元素)”。 有若干种形式的...
    宠辱不惊丶岁月静好阅读 1,628评论 0 6
  • 学会使用CSS选择器熟记CSS样式和外观属性熟练掌握CSS各种选择器熟练掌握CSS各种选择器熟练掌握CSS三种显示...
    七彩小鹿阅读 6,342评论 2 66
  • 概述 在网易云课堂学习李南江老师的《从零玩转HTML5前端+跨平台开发》时,所整理的笔记。笔记内容为根据个人需求所...
    墨荀阅读 2,368评论 0 7