0
点赞
收藏
分享

微信扫一扫

html+css+js基础内容(二)

以沫的窝 2022-04-20 阅读 94

1.什么是浮动?
    浮动就是让块级标签不独占一行。目的(使用场景):把块级标签元素可以排在一行上。
2.浮动的原理
    就是让元素脱离文档流,不占用标准流。
3.float的属性值:
    left:左浮动
    right:右浮动
    none:默认值,不浮动
4.浮动后,后面的元素不管是块级还是行级元素,不会显示在下一行。
5.清除浮动
    目的:让后面的元素自动掉到下一行。
    方法:
        1)添加空标签,并设置样式:clear:both;
            clear:left;  清除左浮动
            clear:right; 清除右浮动
            clear:both;  清除左右浮动
            clear:none;  左右浮动都不清除
        2)在要清除浮动的父级添加样式:overflow:hidden;
            overflow:hidden;  超出部分隐藏,也可以用来实现清除浮动。
        3)在要清除浮动的父级添加伪元素,并设定样式:
            父元素:after{
                content:"";
                display: block;
                clear:both;
            }

    注意:在实际项目开发中,我们一般首先第2种方案。
6.CSS盒子模型
    每个元素都是一个盒子,一个盒子由margin(外边距),border(边框线),padding(内边距)和content(内容)组成。
    IE的盒子中的content又由padding和content组成。

    区别外边距和内边距是以边框为参照。

    系统默认外边距为8px。
    1)外边距(margin):指元素边框线之外的距离。
        margin-left:左边距
        margin-right:右边距
        margin-top:上边距
        margin-bottom:下边距
        margin:可用来设置任意一个边的边距,可以带1至4个参数。
            1个(apx):表示上下左右都有这样的外边距apx
            2个(apx bpx):表示上下外边距为apx,左右外边距为bpx
            3个(apx bpx cpx):表示上外边距为apx,下外边距为cpx,左右外边距为bpx
            4个(apx bpx cpx dpx):表示上为apx,右为bpx,下为cpx,左为dpx
    2)内边距(padding):指元素的文本内容与边框之间的距离。
        它的用法与margin完全一样。
    3)边框(border)
        border-width:边框线宽度
        border-style:边框线样式
        border-color:边框线颜色

        复合写法(简写):
            border:border-width border-style border-color;
            注意:border-width border-style border-color这三个参数没有位置之分。
7.盒子的真实尺寸
    盒子宽度 = width + padding左右 + border左右
    盒子高度 = height + padding上下 + border上下
8.display属性:用来设置元素的显示方式。
    属性值:
        none:不显示元素
        block:块显示,在元素前后设置换行符。目的:将行级标签转换为块级标签(因为行级标签不识别宽高,
            而块级标签识别,转换后,行级标签也可以设置宽高了)
        inline:行内显示,将块级标签转换为行级标签。
        inline-block;将块级或行级标签转换为行内块级标签。
9.table样式
    table一般不用来布局,主要用来格式化数据。
    属性:
        width:宽度
        height:高度
        border-collapse:collapse; 单线边框
        border:边框线
    td,tr属性:
        width:宽度
        height:高度
        border:边框线
        text-align:文本左右对齐(left(默认)/center/right)
        vertical-align:文本垂直对齐(top/middle(默认)/bottom)
10.列表样式
    不是描述性的文本的任何内容都可以认为是列表。比如:菜单、商品列表等。
    1)列表类型
        无序(ul)、有序(ol)和自定义列表(dl)。
        ul和ol的列表项都是用li表示的,而dl是由一个dt和一个或多个dd组成的。
        dl一般用来设定一个定义,比如名词解释等。dt:标题,dd:描述,用来对dt的内容进行解释并说明的。
    2)样式(用来修改标识类型)
        list-style-image:用图像表示标识
        list-style-position:标识的位置(inside/outside(默认))
        list-style-type:标识类型

        简写:
            list-style:list-style-image list-style-position list-style-type;
            list-style的值可以按任意顺序列出,而且可以任意省略,只要提供一个值,其它的都自动默认。

        list-style-type的属性值:
            a)无序
                disc(默认)/circle/square
            b)有序
                decimal(默认)/decimal-leading-zero/lower-roman/upper-roman/lower-alpha/upper-alpha/
                lower-greek/lower-latin/upper-latin...
            有序和无序:
                none
11.轮播图
    作用:主要用于产品或公司相关宣传。
    组成:
        1)轮播的组图(至少两张以上,不能太多)
        2)控制器
        3)计数器

  

1.定位(position)(重点)
    设定元素在文档中的位置。会将标签(元素)转换为块级。
2.定位分类(属性值)
    1)static:静态定位
        默认值,没有定位,不能设置偏移值(left/top/right/bottom),占用标准流(文档流)
    2)relative:相对定位
        占用标准流(文档流),它会出现在文档流中它该出现的位置。可以通过设置偏移值改变其位置。它相对于自身所占的位置做偏移。
    3)absolute:绝对定位
        脱离文档流,相对于body做偏移。
        绝对定位一般与相对定位结合使用,它相对的父级是relative定义的元素做偏移。relative的元素必须是absolute的父级。
        在项目开发中,一般用relative+absolute结合使用。
    4)fixed:固定定位
        脱离文档流,相对于浏览器窗口左上角(0,0)做偏移,它与relative设定的对象没有关系,也就是说,它跟父级的定位没有任何关系。
        一般在开发中用来固定导航栏。
3.z-index
    当多个元素添加绝对定位,元素将会叠加在一起,使用z-index可以设置元素显示的层次。
    文档流默认的z-index的值为0。
    用在static和relative元素上将无效。
4.网站开发策略:先整体再局部,至顶向下,逐步细化。
    1)双飞翼布局
        由三列组成,两端固定,中间自适应。

        双飞翼布局的优点:
        (1)兼容性好,兼容所有主流浏览器,包括万恶的IE6。
        (2)因为在DOM中center_panel在三列结构的最前面,因此可以实现主要内容的优先加载。
    2)圣杯布局
        由三列组成,两端固定,中间自适应。外观与双飞翼布局一样。
        布局时与双飞翼比增加了定位和偏移设置。
    3)侧边栏固定布局
        I)两栏布局
            a)左侧固定,右侧自适应
            b)左侧自适应,右侧固定
            c)左右都固定
        II)三栏布局
            a)左侧固定,中间自适应,右侧固定
            b)左侧自适应,中间和右侧固定
            c)左侧和中间固定,右侧自适应
5.BFC&IFC
      FC:Fomatting Context(格式上下文)。它是CSS2.1规范中的一个概念。它是页面中的一块渲染
  区域,并且有一套渲染规则,它决定了其子元素将如何定位,以及和其他元素的关系和相互作用。
  分为:BFC和IFC。
  1)BFC:块级格式上下文
        a)形成BFC的条件
            i) 浮动元素(float除none以外的值)
            ii)定位元素(position(absolute/fixed))
            iii)display(值为inline-block/table-cell/table-caption时)
            iv)overflow(值为hidden/auto/scroll时)
        b)BFC特性(规则)
            i)内部的盒子会在垂直方向上一个接一个的放置
            ii)垂直方向上的距离会叠加,值由最大margin值决定(如果不要叠加,就需要将该盒子变成一个独立的盒子)
            iii)BFC的区域不会float元素区域重叠
            iv)计算BFC的高度时,浮动元素也参与计算
            v)BFC就是页面上的一个独立的容器,容器里面的子元素不会影响到外面的元素
        c)BFC的作用
            i)解决margin重叠的问题(添加独立BFC)
            ii)解决浮动高度塌陷的问题(在父级添加overflow:hidden)
            iii)解决侵占浮动元素的问题(添加overflow:hidden清除浮动)
  2)IFC:内联(行级)格式上下文
         a)形成IFC的条件
            i)font-size
            ii)line-height
            iii)height
            iv)vertical-align
         b)IFC特性(规则)
            i)IFC的元素会在一行中从左至右排列
            ii)在一行上的所有元素会在该区域形成一个行框
            iii)行宽的高度为包含框的高度,高度为行框中最高元素的高度
            iv)浮动的元素不会在行框中,并且浮动元素会压缩行框的宽度
            v)行框的宽度容纳不下子元素时,子元素会换下一行显示,并且会产生新行框
            vi)行框的元素内遵循text-align和vertical-align
6.容器的高度:
    height = line-height + vertical-align

 

举报

相关推荐

0 条评论