zoukankan      html  css  js  c++  java
  • css笔记之css总结

    css总结

    文字属性

    color可以定义字体颜色
    font-size: 字体大小
    font-weight:字体粗细 
        normal:  默认值,标准粗细
        bold:    粗体
        bolder:  更粗
        lighter: 更细
        100~900: 设置具体粗细,400等同于normal,而700等同于bold
        inherit: 继承父元素字体的粗细值
    font-style: 字体风格
        normal: 默认值,浏览器会显示标准的字体样式
        italic: 浏览器会显示斜体的字体样式
        oblique:浏览器会显示倾斜的字体样式
     font-family: 字体
     综合:
     {font:font-style  font-weight  font-size/line-height  font-family;}
     其他属性可以省略,必须保留font-size和font-family属性

    外观属性

    line-height:行间距   行间距=weight,可以设置水平居中
    text-align:水平对齐方式
        left    左对齐,默认值
        right    右对齐
        center    居中对齐
        justify    两端对齐
    text-decoration:文字装饰
        none        默认。定义标准的文本
        underline    定义文本下的一条线
        overline    定义文本上的一条线
        line-through    定义穿过文本下的一条线
        inherit    继承父元素的text-decoration属性
    letter-spacing:字间距
    text-indent:首行缩进
    color: rgba(r,g,b,a); :颜色半透明 a取值范围 0~1之间
    text-shadow:水平位置 垂直位置 模糊距离 阴影颜色;

    行内元素和块级元素

    块级元素的特点:
    (1)总是从新行开始
    (2)高度,行高、外边距以及内边距都可以控制。
    (3)宽度默认是容器的100%
    (4)可以容纳内联元素和其他块元素。
    行内元素的特点:
    (1)和相邻行内元素在一行上。
    (2)高、宽无效,但水平方向的padding和margin可以设置,垂直方向的无效。
    (3)默认宽度就是它本身内容的宽度。
    (4)行内元素只能容纳文本或则其他行内元素
    display:块级元素和行级元素互换
    display:"none"    html文档中元素存在,但是在浏览器中不显示,一般用于配合javascript用
    display:"block"    默认占满整个页面宽度,如果设置了指定宽度,则会用margin填充剩下的部分
    display:"inline"    按照行类元素显示,此时在设置元素的width、height、margin-top、margin-bottom和float属性都不会有什么影响
    display:"inline-block"    使元素同时具有行内元素和块级元素的特点

    背景属性

    背景图片(image)
    background-image : none | url (url)
    none :  无背景图(默认的) 
    url :  使用绝对或相对地址指定背景图像 
    background-image 属性允许指定一个图片展示在背景中(只有CSS3才可以多背景)可以和 background-color 连用。
    如果图片不重复地话,图片覆盖不到地地方都会被背景色填充。 如果有背景图片平铺,则会覆盖背景颜色。
    背景平铺(repeat):background-repeat : repeat | no-repeat | repeat-x | repeat-y      
        repeat :  背景图像在纵向和横向上平铺(默认的) 
        no-repeat :  背景图像不平铺 
        repeat-x :  背景图像在横向上平铺 
        repeat-y :  背景图像在纵向平铺 设置背景图片时,默认把图片在水平和垂直方向平铺以铺满整个元素。 
    背景位置(position):
    background-position : length || length
    background-position : position || position 
        length :  百分数 | 由浮点数字和单位标识符组成的长度值
        position :  top | center | bottom | left | center | right
    背景附着:background-attachment : scroll | fixed 
        scroll :  背景图像是随对象内容滚动 
        fixed :  背景图像固定
    背景简写:background:背景颜色 背景图片地址 背景平铺 背景滚动 背景位置
        如:background: transparent url(image.jpg) repeat-y  scroll 50% 0 ;
    背景透明(CSS3):background: rgba(0,0,0,0.3);
    背景缩放(CSS3):background-size:
        a) 可以设置长度单位(px)或百分比(设置百分比时,参照盒子的宽高)
        b) 设置为cover时,会自动调整缩放比例,保证图片始终填充满背景区域,如有溢出部分则会被隐藏。
        c) 设置为contain会自动调整缩放比例,保证图片始终完整显示在背景区域。
    多背景(CSS3)
    
    以逗号分隔可以设置多背景,可用于自适应布局
    background-image: url('images/gyt.jpg'),url('images/robot.png');

    选择器

    标签选择器(元素选择器)

    标签名{属性1:属性值1; 属性2:属性值2; 属性3:属性值3; }

    类选择器

    .类名{属性1:属性值1; 属性2:属性值2; 属性3:属性值3; }

    多类名选择器

    .类名1 .类名2{属性1:属性值1; 属性2:属性值2; 属性3:属性值3; }

    id选择器

    #id名{属性1:属性值1; 属性2:属性值2; 属性3:属性值3; }

    通配符选择器

    * { 属性1:属性值1; 属性2:属性值2; 属性3:属性值3; }

    链接伪类选择器

    :link      未访问的链接   
    :visited   已访问的链接   
    :hover     鼠标移动到链接上   
    :active    选定的链接   

    结构(位置)伪类选择器

    :first-child :选取属于其父元素的首个子元素的指定选择器
    :last-child :选取属于其父元素的最后一个子元素的指定选择器
    :nth-child(n) : 匹配属于其父元素的第 N 个子元素,不论元素的类型
    :nth-last-child(n) :选择器匹配属于其元素的第 N 个子元素的每个元素,
    不论元素的类型,从最后一个子元素开始计数。 n 可以是数字、关键词或公式

    目标伪类选择器(CSS3)

    :target目标伪类选择器 :选择器可用于选取当前活动的目标元素

    嵌套

    多种选择器可以混合起来使用,比如:.c1类内部所有p标签设置字体颜色为红色

    .c1 p {
      color: red;
    }

    CSS复合选择器

    复合选择器是由两个或多个基础选择器,通过不同的方式组合而成的,目的是为了可以选择更准确更精细的目标元素标签。

    选择器优先级

    !important      正无穷
    行间样式           1000
    id                 100
    class|属性|伪类      10
    标签选择器|伪元素     1
    通配符               0
     
     
    css中同一横行的那个权重大,以哪个为准,
    权重相等时,遵循后来先到原则,即后来的覆盖之前的

    交集选择器

    交集选择器由两个选择器构成,其中第一个为标签选择器,第二个为class选择器,两个选择器之间不能有空格,如h3.special。

    交集选择器 是 并且的意思。 即...又...的意思

    比如:   p.one   选择的是: 类名为 .one  的 段落标签。 

    记忆技巧: 用的相对来说比较少,不太建议使用。

    并集选择器

    并集选择器(CSS选择器分组)是各个选择器通过逗号连接而成的,任何形式的选择器(包括标签选择器、class类选择器id选择器等),都可以作为并集选择器的一部分。如果某些选择器定义的样式完全相同,或部分相同,就可以利用并集选择器为它们定义相同的CSS样式。

     记忆技巧: 并集选择器 和 的意思, 就是说,只要逗号隔开的,所有选择器都会执行后面样式。

    比如  .one, p , #test {color: #F00;}  表示   .one 和 p  和 #test 这三个选择器都会执行颜色为红色。  通常用于集体声明。

    后代选择器

    后代选择器又称为包含选择器,用来选择元素或元素组的后代,其写法就是把外层标签写在前面,内层标签写在后面,中间用空格分隔。当标签发生嵌套时,内层标签就成为外层标签的后代。

     子孙后代都可以这么选择。 或者说,它能选择任何包含在内 的标签。

    子元素选择器

    子元素选择器只能选择作为某元素子元素的元素。其写法就是把父级标签写在前面,子级标签写在后面,中间跟一个 > 进行连接,注意,符号左右两侧各保留一个空格。

    比如:  .demo > h3 {color: red;}   说明  h3 一定是demo 亲儿子。  demo 元素包含着h3。

    属性选择器

    选择器示例含义
    E[attr]   存在attr属性即可
    E[attr=val]   属性值完全等于val
    E[attr*=val]   属性值里包含val字符并且在“任意”位置
    E[attr^=val]   属性值里包含val字符并且在“开始”位置
    E[attr$=val]   属性值里包含val字符并且在“结束”位置

    伪元素选择器(CSS3)

    1. E::first-letter文本的第一个单词或字(如中文、日文、韩文等)

    2. E::first-line 文本第一行;

    3. E::selection 可改变选中文本的样式; 4、E::before和E::after 在E元素内部的开始位置和结束位创建一个元素,该元素为行内元素,且必须要结合content属性使用。

    div::befor {
      content:"开始";
    }
    div::after {
      content:"结束";
    }

    盒模型

    盒子边框(border)border : border-width || border-style || border-color 
        none:没有边框即忽略所有边框的宽度(默认值) 
        solid:边框为单实线(最为常用的)
        dashed:边框为虚线
        dotted:边框为点线
        double:边框为双实线
    圆角边框(CSS3):  border-radius: 左上角  右上角  右下角  左下角;
    内边距(padding):上右下左
        1个值    padding:上下左右边距 比如padding: 3px; 表示上下左右都是3像素
        2个值    padding: 上下边距 左右边距 比如 padding: 3px 5px; 表示 上下3像素 左右 5像素
        3个值    padding:上边距 左右边距 下边距 比如 padding: 3px 5px 10px; 表示 上是3像素 左右是5像素 下是10像素
        4个值    padding:上内边距 右内边距 下内边距 左内边距 比如: padding: 3px 5px 10px 15px; 表示 上3px 右是5px 下 10px 左15px 顺时针
    外边距margin:上外边距 右外边距 下外边距 左外边

    外边距实现盒子居中

    1.必须是块级元素。
    2.盒子必须指定了宽度(width)
    给左右的外边距都设置为auto,就可使块级元素水平居中
    .header{ width:960px; margin:0 auto;}

    清除元素的默认内外边距

    * {
       padding:0;         /* 清除内边距 */
       margin:0;          /* 清除外边距 */
    }

    content宽度和高度

    盒子的总高度= height+上下内边距之和+上下边框宽度之和+上下外边距之和
    盒子的总宽度= width+左右内边距之和+左右边框宽度之和+左右外边距之和

    盒子模型布局稳定性

    width >  padding  >   margin   
    margin 会有外边距合并 还有 ie6下面margin 加倍的bug(讨厌)所以最后使用。
    padding 会影响盒子大小, 需要进行加减计算(麻烦) 其次使用。
    width 没有问题(嗨皮)我们经常使用宽度剩余法 高度剩余法来做。
    ​

    css3盒模型

    1、box-sizing: border-box 盒子大小为 width
    2、box-sizing: content-box 盒子大小为 width + padding + border

    盒子阴影

    box-shadow:水平阴影 垂直阴影 模糊距离 阴影尺寸 阴影颜色  内/外阴影;

    box-shadow:5px 5px 10px 16px rgba(0,0,0,0.3) inside 默认是outside

    浮动

    选择器{float:属性值;}
    属性值描述
    left 元素向左浮动
    right 元素向右浮动
    none 元素不浮动(默认值)

    定位

    边偏移

    边偏移属性描述
    top 顶端偏移量,定义元素相对于其父元素上边线的距离
    bottom 底部偏移量,定义元素相对于其父元素下边线的距离
    left 左侧偏移量,定义元素相对于其父元素左边线的距离
    right 右侧偏移量,定义元素相对于其父元素右边线的距离

    定位模式

    position属性的常用值

    描述
    static 自动定位(默认定位方式)
    relative 相对定位,相对于其原文档流的位置进行定位
    absolute 绝对定位,相对于其上一个已经定位的父元素进行定位
    fixed 固定定位,相对于浏览器窗口进行定位

    3.绝对定位的盒子水平/垂直居中 普通盒子的左右margin改为auto就可以,但是对于绝对定位就无效了 定位的盒子也可以水平或者垂直居中:

    1.首先left 50% 父盒子的一般大小

    2.然后在自己外边距负的一半值就可以了,margin-left

  • 相关阅读:
    [苹果maccms] MACCMS苹果cms宝塔定时任务添加教程说明
    [苹果cmsV10]新版本演员库分类报无权限问题和解决方法!
    CentOS 6.8安装Python2.7.13
    [HOWTO] Install Sphinx for A Script Pro
    A Script Pro nginx URL重写规则无法播放MP4解决方法
    随机跳转
    UI库
    vuex
    vue 数据请求
    vue守卫、储存与路由模式
  • 原文地址:https://www.cnblogs.com/zhangcheng94/p/12188755.html
Copyright © 2011-2022 走看看