zoukankan      html  css  js  c++  java
  • CSS

    CSS样式----层叠样式表

        作用:给html加各种各样的样式---html结构和css样式  离  ----便于维护更新

    CSS语法:

        选择器{   属性名:属性值;属性名:属性值;   }  

    导入CSS文件的方法:

           1.行内样式表  

          格式:  <标签  style="属性名:属性值;">  内容  </标签>

              行内样式,只能应用当前文档中的当前对应的html标签加样式,或者里面包含的标签加该样式

        2.内嵌样式表

          格式:    在head中输入

                <style  type="text/css">

                  选择器  { 属性名:属性值;属性名:属性值; }

                  </style>

                  内嵌样式:在当前的文档可以使用该样式                      

        3.外部样式表

          格式:  <link rel="stylesheet"  href="外部样式表文件   XX.css"  />

              保存的时候,存为css文件,可以应用多个文档,哪个html标签需要,就可以引用

        4.导入样式表 

          管理css样式

          格式:@import   url(另一个CSS样式)

              @import是CSS样式标签,所以必须放到css文件中,必须放到css样式表的最上端

    选择器的分类

    • 基本选择器

        标签选择器:选择给哪一个标签加样式,自动指向该标签

        语法:

              标签选择器名 {   属性名 :属性值;  属性名: 属性值;   }

                不用引用,它会把样式自动添加到对应的标签上   但所有的对应标签都加上该样式

          类选择器:  给一类html标签加样式

           语法      选择器名{   属性名:属性值;属性名:属性值;   }

                  类用 .  表示  ,如   .class{}    .mybody{}

                必须得引用,每一个标签都有一个class属性

                    <标签  class="选择器名"></标签>  可以引用多次

          Id选择器:  给特定的html标签加样式

          格式:  id选择器名{   属性名:属性值;   属性名:属性值;  }

                id 用  #  表示,如#mybody{}

                  <标签  id="选择器名"></标签>

            必须得引用,并且只能引用一次,表示唯一,通常id是给javascript用,而不是用来设置样式

            如果想设置样式,用类选择器

          通用选择器:(*所有)给所有的标签加样式,不是所有浏览器都支持  IE6不支持

          语法:  *{   属性名:属性值;属性名:属性值;  }

    • 复合选择器

        多元素选择器 : 多个标签共有的属性和属性值,放在一起

           语法:  选择器,选择器,选择器....{ 共有的属性: 属性值;  }

        后代元素选择器:   给html的后代标签加样式

           语法:  选择器1     选择器2     选择器3{属性名:属性值;}

                    给选择器1下的 选择器2选择器3 标签添加样式

            .body .table .tr{属性名:属性值}

        子元素选择器:  给html标签的子标签加样式

          格式:   选择器>选择器{属性名:属性值;}

              .body>table{属性名:属性值;}

                某个标签里面的第一层  比后代选择器指向更明确 

       伪类:----锚点<a>(内容必须做好链接)

          a:link      未访问的链接

          a:visited     访问过的链接

          a:hover    鼠标移动到链接上

          a:active    单击鼠标左键的那一时刻的样式

     

    • 文本属性

           font-size     文本的大小    

         font-weight      文本是否加粗   bold    normal

         font-style   文本是否倾斜  italic     normal

         font-family   文字的字体

         text-decoration  文本是否有线条

         text-decoration:   underline        下划线

         text-decoration:   overline      上划线

         text-decoration:   line-through     删除线

         text-decoration:  none        去掉所有线条

         text-indent:  2em          文本首行缩进2个字符

         color            文本的颜色

         letter-spacing     字母与字母之间的距离

         word-spacing  单词和单词之间的距离

         text-align    文本的对齐方式

    •  背景属性    

        background-color    背景颜色

        background-image   背景图片

        background-repeat  背景图片是否平铺  no-repeat     不平铺

                              repeat-x/y    横向平铺/纵向平铺

                              repeat     横向和纵向都平铺(默认)

        background-position    背景图片的显示方式  水平   left  center  right

                                  垂直 top  middle  bottom

          简写为: background:背景颜色  背景图片  背景图片是否平铺      水平  垂直  ;

    • 列表   

      去掉列表前面的项目符号    list-style-type: none  简写为  list-style:none

      用小图片代替项目符号     list-style-image: url(图片的地址)

     

    • 合并表格边框线

        border-collapse:collapse;  合并表格边框线

    • 边框线的属性    

      边框(top  right  bottom  left)  

        border-top-color      上边框的颜色值

        border-top-style      上边框的线形  solid  实线  dashed  虚线  dotted    点状线

        border-top-width       上边框的粗细

        简写:  border-top: 线形  粗细  颜色

     

      盒子模型:
        1.内容区:width 和 height

        2.边框: border

        3.内边距: padding 内容和边框之间的距离,也可以分为上 右 下 左 四个属性确定内容位置

            padding:10px 20px 30px 40px;上 右 下 左
            padding:10px 20px 30px; 上10px 左右20px 下30px
            padding:10px 20px; 上下10px 左右20px
            padding:10px; 上下左右均为10px

        4.外边距:margin 边框以外的距离 与内边框的属性相同

          注 意:外边距叠加问题,取较大的那一个作为  最后的margin

      

      清除格式:

      清除html原有的样式,代码:

      *{margin:0;padding:0;} 或

      body,h1,h2,p,ul,ol,li....{margin:0;padding:0} 消除这些标签的格式

      写在CSS中

     

      网页的布局思想

      1.清除格式

      2.设置页面属性,即body{}

      body{背景颜色/背景图片 文本的大小 文本的颜色 文本的字体 行间距}

      例如:body{background:blue;font-size:14px;font-color:black;font-family:宋体;line-height:150%;}

      3.划分结构:提前划分好整个网页的结构,在哪个地方放什么东西等等......

      网站的结构就是两部分(横向和纵向)

      1.纵向就是正常的文档流,设置内容器的宽度和高度,设置内容和边框之间的padding,

      边框以外的margin,边框border等属性就可以。

      2.横向就需要使用浮动

     

      行内元素和块元素

      1.行内元素: 输入完标签后,自己不占一行的,如:span b i u strong a

      特点:行内元素的宽度和高度是由内容来决定的,宽度(width)和高度(height)不能用

      默认的CSS样式是display:inline;

      2.块元素:输入完标签后,自己独占一行的,如:div p table ul ol li dl dt dd h1......

      特点:块内元素的宽度和高度可以设置,默认的CSS样式是display:block;

      块--转换--行:display:inline;

      行--转换--块:display:block;

      
      浮动的特点:

      1.设置浮动的元素,不占空间

      2.设置浮动元素的层级高于普通元素

      3.如果在一行的元素想要横向排列,都设置浮动就可以了

        4.设置浮动之后,无论之前是否是块元素,设置浮动之后一定是块元素

       如何让盒子在页面水平居中

          margin:   xx    auto;

     

    • 内容溢出处理  

          overflow  当内容溢出,如何处理

        hidden    隐藏

        auto    如果盒子装不下,就会出现滚动条

        scroll    无论是否装下,都有滚动条

    • 继承

         外层元素的样式,会被里面的元素所继承

         哪些样式可以继承:  文本的属性可以继承

        自己有的属性,不会向外继承

    • 优先级

       单个选择器的优先级   

         行内样式   >  id选择器  >  类选择器  >  标签选择器   

       复合选择器的优先级

         在单个选择器的基础上,写的越精细,优先级越高

    •  清除浮动

         clear:left    清除左浮动

         clear:right    清除右浮动

         clear:both    清除所有浮动

           如果div里面还有div,外面的div(即父盒子)没有设置固定高

            里面设置了浮动,父元素受影响,无法正常计算,欲让父盒子得到自然高

               在父盒子的里面最下方加<div>,给该盒子设置清除浮动属性  clear: both

              浏览器的一个bug  ---  在父元素的样式中设置overflow:hidden

    •  定位

        坐标   偏离目标元素多远的距离  距左left    距右right     距上top     距下bottom

      position  定位方式:  static            默认  

                    fixed           固定

                      相对于浏览器窗口的定位    如果不设置定位坐标,就在原来的位置

                      层级要比普通元素高      结合定位坐标,就是相对于目标位置的距离            

                      设置固定定位之后,一定是块元素   

                   relative        相对定位

                      相对定位占空间      如果不结合定位坐标,就是在原来位置

                      层级高于普通元素       如果结合定位坐标,相对于自身,作为定位的原点  

                  absolute      绝对定位 

                       绝对定位不占空间      如果不结合定位坐标,就是原来的位置

                      层级高于普通元素     结合定位坐标,以祖先元素(设置绝对定位,相对定位)作为坐标的参考点

                                  如果祖先没有设置定位,一直往上找,直到找到body,就以body来进行定位,                                                                                                          就是相对于整个窗口来定位            

    • 盒子的深入

            

          

          

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

  • 相关阅读:
    张量自动求导和计算图
    34 深入浅出 x86 中断机制(下)
    33 深入浅出 x86 中断机制(上)
    使用STM32 PWM控制LCD背光
    32 获取物理内存容量 下
    ucGUI内存管理相关
    STM32 SPI双机通信参考
    IAR_UCOSII_UCOSIII
    每日总结
    每日总结
  • 原文地址:https://www.cnblogs.com/strive-for-life/p/6127575.html
Copyright © 2011-2022 走看看