zoukankan      html  css  js  c++  java
  • CSS三大特性及属性,选择器进阶,外边距塌陷问题

    • max-width和min-

      • 用来设置元素的最大宽度和最小宽度

    • max-height和min-height:

      • 用来设置元素的最大高度和最小高度

    圆角属性

    • <!DOCTYPE html>
      <html lang="en">
      <head>
         <meta charset="UTF-8">
         <meta name="viewport" content="width=device-width, initial-scale=1.0">
         <title>Document</title>
         <style>
             .box1 {
                  300px;
                 height: 300px;
                 background-color: red;
                 /*
                    圆角属性
                  */
                 /* border-radius: 30px; */
                 /* border-radius: 10px 20px 30px 40px; */
                 /*
                    如果设置为50%,会变成一个圆形,椭圆还是正圆根据宽高来控制
                  */
                 border-radius: 50%;
            }
             /* 半圆 */
             .box2 {
                  400px;
                 height: 200px;
                 background-color: blue;
                 border-radius: 200px 200px 0 0;
            }
             /* 四分之一圆 */
             .box3 {
                  300px;
                 height: 300px;
                 background-color: deeppink;
                 border-radius: 300px 0 0 0;
            }
         </style>
      </head>
      <body>
         <div class="box1"></div>
         <div class="box2"></div>
         <div class="box3"></div>
      </body>
      </html>
    •  

    背景属性

    • .box {
                100%;
                height: 500px;
                /* 背景颜色 */
                background-color: red;
                /* 背景图片 */
                background-image: url(https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=3547703274,3363083080&fm=11&gp=0.jpg);
                /*
                    是否重复
                    默认是repeat重复,可以设置为no-repeat不重复
                */
                background-repeat: no-repeat;
                /* 设置背景图片的尺寸: 第一个值代表宽度 第二个值代表高度 */
                background-size: 200px 300px;
                /*
                    背景图片定位
                        1.固定的像素值
                        2.百分比
                        3.方向的英文单词(center/left/right/top/bottom)
                */
                /* background-position: 100% 100%; */
                background-position: right bottom;
            }
    • background-color : red

    • background-image: url(./img/bg.jpg)

    • background-repeat: no-repeat

    • background-size: 50% 50%

    • background-position: 50% 50%

    • background:red url(./img/bg.jpg) no-repeat top

    选择器进阶

    • 群组选择器

      • /* 
                  群组选择器
                      多个选择器组合到一起用逗号分隔
                */
               .box,h3,p,span {
                   color: gold;
              }
        
      -
    • 交集选择器

      • /* 
                  交集选择器
                      用两个或者两个以上条件寻找
                      即有div又有.box1类名
                */
               div.box1 {
                   color: deeppink;
              }
      •  

    • 子代选择器

      • /* 
                  子代选择器
                */
               .wrap>.box {
                   color: blue;
              }
        
      -
    • 后代选择器

      • /* 后代选择器 */
               .wrap .box {
                   color: gold;
              }
      •  

    • 伪类链接选择器

      • :link 未访问状态

      • :visited 已访问状态

      • :hover 鼠标悬停状态

      • :active 鼠标点击那一刻

    css三大特性

    • 层叠性

      • 样式冲突就近原则,也就是后引入生效

      • 样式不冲突的代码不会受影响

    • 继承性

      • 子标签继承父标签的样式

        • 文本字体属性都会继承,text-, line- ,font-, color

    • 优先级

      • 选择器类型权值
        通配符选择器 0
        标签选择器 1
        类选择器,伪类选择器 10
        ID选择器 100
      • 复合选择器的权值计算方式:组成其所有单一选择器的权值之和 ul>li .red 1+1+10=12

      • 行内样式优先

        • 权值1000

      • !important 无限权重

      • 继承样式的权值为最低,甚至比通配符选择器还低

    标签显示模式特点与转换

    • 标签的嵌套规则

      • h标签和p标签只能嵌套其他行内标签或者文字

      • h标签和p标签不能嵌套其他块级标签

      • a标签属于行内标签,但是比较特殊,可以嵌套任何标签,除了a标签

      • 其他行内标签只能嵌套文字,或者行内标签

      • ul和ol子标签必须是li

    • 块级标签

      • div h1-h6 p ul li ol li dl dt dd

      • 总是从新行开始

      • 高度、行高、外边距以及内边距都可以控制

      • 宽度默认是容器的100%

      • 可以容纳内联标签和其他块级标签

    • 行内标签

      • strong b em i ins u del s span

      • 和相邻行内标签在一行上

      • 高、宽无效,但水平方向的padding和margin可以设置,垂直方向的无效

      • 默认宽度就是它本身内容的宽度

      • 行内标签只能容纳文本或者其他行内标签

    • 行内块标签

      • img input td

      • 和相邻的行内标签在一行,但之间会有白色缝隙

      • 默认宽度就是它本身内容的宽度

      • 高度、行高、外边距以及内边距都可以控制

    • 标签显示模式转换 display

      • 块转行内:display : inline;

      • 行内转块 : display : block;

      • 块、行内转行内块 : display : inline-block;

    外边距传递和塌陷

    • 给父级设置边框或内边距

    • 给父标签添加overflow:hidden属性,触发BFC

    盒子居中技巧

    • <!DOCTYPE html>
      <html lang="en">
      <head>
         <meta charset="UTF-8">
         <title>Document</title>
         <style>
            * {
                 padding: 0;
                 margin: 0;
            }
             .box {
                  300px;
                 height: 300px;
                 background-color: red;
                 text-align: center;
                 line-height: 300px;
            }
             .box span {
                 background-color: blue;
            }

             .wrap {
                  400px;
                 height: 400px;
                 background-color: gold;
                 overflow: hidden;
            }
             .box1 {
                  200px;
                 height: 200px;
                 background-color: green;
                 margin: 100px auto;
            }
         </style>
      </head>
      <body>
         <div class="box">
             <span>hello world</span>
         </div>
         <div class="wrap">
             <div class="box1"></div>
         </div>
      </body>
      </html>
    •  

  • 相关阅读:
    PHP项目学习1
    常见的几种单例模式
    CGlib和JDK动态代理
    jar打包方法使用整理
    JVM内存分配原理
    JDK环境变量配置目录jre,jvm
    android学习笔记13——ExpandableListView
    android学习笔记12——ListView、ListActivity
    android学习笔记11——ScrollView
    android学习笔记十——TabHost
  • 原文地址:https://www.cnblogs.com/zxy37/p/14172979.html
Copyright © 2011-2022 走看看