• CSS.04 -- 浮动float、overflow、定位position、CSS初始化


    标准流:行内/行内块元素横向有序排列 ; 块元素纵向有序排列。

    浮动:Float

    语法:float:left/right ;  设置浮动的元素,脱离标准流

    浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。

    由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样。

    可能的值    描述

    left      元素向左浮动。

    right      元素向右浮动

    none      默认值,元素不浮动,并会显示在其在文本中出现的位置

    inherit    规定应该从父元素继承float属性的值

     

    特点:浮动找浮动,不浮动找不浮动

    浮动只影响后面的元素

    浮动以元素顶部为基准对齐

    浮动可是实现模式转换(span设置浮动可以设置宽高 )

    让块级元素在一行显示

    浮动的作用: 文本绕图 |  制作导航  |  网页布局 

     

    当把框 1 向右浮动时,它脱离文档流并且向右移动,直到它的右边缘碰到包含框的右边缘。

     当框 1 向左浮动时,它脱离文档流并且向左移动,直到它的左边缘碰到包含框的左边缘。因为它不再处于文档流中,所以它不占据空间,实际上覆盖住了框 2,使框 2 从视图中消失。

    如果把所有三个框都向左移动,那么框 1 向左浮动直到碰到包含框,另外两个框向左浮动直到碰到前一个浮动框。

    如果包含框太窄,无法容纳水平排列的三个浮动元素,那么其它浮动块向下移动,直到有足够的空间。如果浮动元素的高度不同,那么当它们向下移动时可能被其它浮动元素卡住

    清除浮动: 当父盒子没有定义宽度,嵌套的盒子浮动后,下边的元素发生位置错误。 清除浮动不是不用浮动,清除浮动产生的方法

     清除浮动的方式:

    给父容器设置高度/ 通过设置clear:left | right| both /给父容器设置overflow:hidden

     Left:不允许左浮动

     Right:不允许右浮动

     Both:左右都不允许浮动

     None:默认值,允许浮动元素出现在左右两侧

     Inherit:继承

    通过伪元素

    Overflow 介绍:

    Overfolw属性规定当内容溢出元素框时发生的事情。

     overflow:visible 默认值。内容不会被修剪,会呈现在元素框之外

     Overflow:hidden 内容会被修剪,并且其余内容是不可见的。

     Overflow:scroll 内容被修剪,但浏览器会显示滚动条以便查看其余的内容。

     Overflow:auto 若内容被修建,则浏览器会显示滚动条以便查看其余的内容。

     

    ——————————————————————

    最好的方法:

    .clearfix : after {

             Content: . ;

             Display:block ;

             Line-height:0;

             Height:0;

             Visibility:hidden;

             Clear:both;

            }

    .clrarfix{

        Zoom:1 ;

          }

    ————————————————

     CSS定位机制

     CSS 有三种基本的定位机制:普通流、浮动和绝对定位

     除非专门指定,否则所有框都在普通流中定位。

    块级框从上到下一个接一个地排列,框之间的垂直距离是由框的垂直外边距计算出来。

    行内框在一行中水平布置。可以使用水平内边距、边框和外边距调整它们的间距。但是,垂直内边距、边框和外边距不影响行内框的高度。由一行形成的水平框称为行框(Line Box),行框的高度总是足以容纳它包含的所有行内框。不过,设置行高可以增加这个框的高度

    定位 position

     定位方向:left 、right、top、bottom

    Position : static    静态定位

    Position :absolute   绝对定位

    Position :relative    相对定位

    Position : fixed     固定定位

    静态定位:(static)

    按照标准流的显示方式  取消定位:position:static

     

    绝对定位:(absoloute)

    绝对定位以浏览器左上角为基准设置位置 ,脱离标准流

    当一个盒子包含在另一个盒子中,父盒子设置定位,子盒子以父盒子左上角为基准设置位置

    绝对定位绝对不占空间位置(与浮动一样)

    绝对定位可以 实现模式转换 给行内元素使用绝对定位之后,转换为行内块。(不推荐使用,推荐使用display:inline-bolck;

    相对定位:position  -  relative

    相对定位以自身元素的位置为基准设置位置

    相对定位 占位置

    一般子元素设置相对定位,父元素设置绝对定位(子绝父相)

    行内元素使用相对定位不能转行内块

    嵌套的盒子,父元素相对定位,子元素绝对定位,子元素从父元素出发设置自身位置。

    固定定位: position--fixed

    固定定位之后,不占据原来的位置(脱标)

    元素使用固定定位之后,位置从浏览器出发

    元素使用固定定位之后,会转化为行内块(不推荐使用)

    css初始化

    腾讯:

    body,ol,ul,h1,h2,h3,h4,h5,h6,p,th,td,dl,dd,form,fieldset,legend,input,textarea,select{margin:0;padding:0}

    body{font:12px"宋体","Arial Narrow",HELVETICA;background:#fff;-webkit-text-size-adjust:100%;}

    a{color:#2d374b;text-decoration:none}

    a:hover{color:#cd0200;text-decoration:underline}

    em{font-style:normal}

    li{list-style:none}

    img{border:0;vertical-align:middle}

    table{border-collapse:collapse;border-spacing:0}

    p{word-wrap:break-word}

    新浪:

    body,ul,ol,li,p,h1,h2,h3,h4,h5,h6,form,fieldset,table,td,img,div{margin:0;padding:0;border:0;}

    body{background:#fff;color:#333;font-size:12px; margin-top:5px;font-family:"SimSun","宋体","Arial Narrow";}

    ul,ol{list-style-type:none;}

    select,input,img,select{vertical-align:middle;}

    a{text-decoration:none;}

    a:link{color:#009;}

    a:visited{color:#800080;}

    a:hover,a:active,a:focus{color:#c00;text-decoration:underline;}

    淘宝:

    body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td { margin:0; padding:0; }

    body, button, input, select, textarea { font:12px/1.5tahoma, arial, 5b8b4f53; }

    h1, h2, h3, h4, h5, h6{ font-size:100%; }

    address, cite, dfn, em, var { font-style:normal; }

    code, kbd, pre, samp { font-family:couriernew, courier, monospace; }

    small{ font-size:12px; }

    ul, ol { list-style:none; }

    a { text-decoration:none; }

    a:hover { text-decoration:underline; }

    sup { vertical-align:text-top; }

    sub{ vertical-align:text-bottom; }

    legend { color:#000; }

    fieldset, img { border:0; }

    button, input, select, textarea { font-size:100%; }

    table { border-collapse:collapse; border-spacing:0; } 

    TIY 实例练习

    float 属性的简单应用
    使图像浮动于一个段落的右侧。
    将带有边框和边界的图像浮动于段落的右侧
    使图像浮动于段落的右侧。向图像添加边框和边界。
    带标题的图像浮动于右侧
    使带有标题的图像浮动于右侧
    使段落的首字母浮动于左侧
    使段落的首字母浮动于左侧,并向这个字母添加样式。
    创建水平菜单
    使用具有一栏超链接的浮动来创建水平菜单。
    创建无表格的首页
    使用浮动来创建拥有页眉、页脚、左侧目录和主体内容的首页。

     

    作者:明明
    出处: http://www.cnblogs.com/mingm/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意,必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。

  • 相关阅读:
    分类和预测
    机器学习&数据挖掘笔记_16(常见面试之机器学习算法思想简单梳理)
    字符串匹配的KMP算法
    灰度共生矩阵提取纹理特征源码
    redis永不过期,保留最新5条数据,StringUtils.join()等总结
    Session问题以及解决方案
    spring boot 配置 log4j2
    每日知识记载总结54
    spring cloud踩坑指南
    每日知识记载总结53
  • 原文地址:https://www.cnblogs.com/mingm/p/6476986.html
Copyright © 2020-2023  润新知