2018-09-19 CSS布局

  今天主要学习CSS布局。

  一、标准流和display属性

  1.标准流:浏览器对标签默认的布局方式就是标准流
  2.标准流布局原则:
  块级:a.块级标签一个占一行(不管标签的宽度是否是父标签的宽度)。
     b.默认宽度是父标签的宽度,默认高度是内容的高度
     c.直接设置宽高有效
  行内块标签:
     a.多个行内块可以在一行显示
     b.默认的宽高都是内容的宽高
     c.直接设置宽高有效
  行内标签:
     a.多个行内可以在一行显示
     b.默认的宽高都是内容的宽高
     c.直接设置宽高无效

  3.display属性:转换标签的性质

block:块级
inline:行内
inline-block:行内块
注意:行内块标签和其他标签之间默认有间隙,而且这个间隙无法消除

  二、浮动

  1.怎么浮动
  通过给float属性赋值为left或者right来让标签浮动。浮动会让标签脱流。
  浮动的目的就是让竖着显示的可以横着来(针对块)
  2.浮动的效果:
  a.所有的标签浮动后,一行可以显示多个;默认的宽高是内容的大小;可以设置宽度和高度
  b.一行显示不了的时候才会自动换行

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style type="text/css">
        </style>
    </head>
    <body>
        <div id="div1" style="background-color: rgba(255,255,0,0.3); width: 50%; height: 100px; float: left;">
        </div>
        <div id="" style="background-color: slateblue;width: 40%; height: 150px; float: left;">
        </div>
        <div id="div2">
        </div>
    </body>
</html>

  三、清除浮动

  1.定义:
  清除浮动:清除浮动不是将标签的浮动给去掉,而是清除因为浮动而产生的高度塌陷的问题。
  高度塌陷:父标签不浮动,子标签浮动,并且不设置父标签的高度,就会产生高度塌陷的问题(父标签)。
  2.方法
  方案一:添加空盒子,在高度塌陷的标签(父标签)的最后添加一个空的div,并设置样式clear的值为both。
  方案二:给父标签添加样式设置overflow的值为hidden。
  方案三: 万能清除法。

            #father:after{
                display: block;
                clear: both;
                content: '.';
                visibility: hidden;
                height: 0;
            }
            #father{
                zoom: 1;
注意:father为父标签。

  四、定位

  CSS中可以通过left,right,bottom,top属性来设置标签到上下左右的距离(但是默认情况下这些值不是都有效的);
  想要让定位属性有效,必须通过position属性来设置参考对象。
  1.position
  initial: 默认值, 没有相对定位。
  absolute: 相对第一个非static/initial父标签进行定位。
  relative: 相对于自己在标准流中位置来定位。(当标签本身不希望去定位,只是想让自己的子标签可以相对本身来定位的时候使用)。
  fixed:相对于浏览器定位。
  sticky:当网页的内容不超过一屏(不滚动)的时候,就按照标准流进行定位。超过了就相对浏览器定位。
  2.注意:如果想要设置right值要保证相对标签的宽度是确定的。如果想要设置bottom值要保证相对对象的高度是确定的。
  3.技巧:当遇到某个方向定位死活都无效的时候,可以尝试让这个标签浮动,然后再定位。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 210,978评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 89,954评论 2 384
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,623评论 0 345
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,324评论 1 282
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,390评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,741评论 1 289
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,892评论 3 405
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,655评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,104评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,451评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,569评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,254评论 4 328
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,834评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,725评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,950评论 1 264
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,260评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,446评论 2 348

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,734评论 1 92
  • 学会使用CSS选择器熟记CSS样式和外观属性熟练掌握CSS各种选择器熟练掌握CSS各种选择器熟练掌握CSS三种显示...
    七彩小鹿阅读 6,306评论 2 66
  • 1. 前言 前端圈有个“梗”:在面试时,问个css的position属性能刷掉一半人,其中不乏工作四五年的同学。在...
    YjWorld阅读 4,428评论 5 15
  • CSS 是什么 css(Cascading Style Sheets),层叠样式表,选择器{属性:值;属性:值}h...
    崔敏嫣阅读 1,475评论 0 5
  • 一、标准流 标准流:浏览器对标签默认的布局方式就是标准流。标准流布局原则: 块级标签:a、块级标签一个占一行(不管...
    Deathfeeling阅读 147评论 0 1