• css基础


    css绝对是一个能够写到爆炸的东西,so,机智的小北方才不会写各种css样式具体的效果,相比之下更推荐大家记一些常用的key,至于效果,每次用的时候百度下就可以了

    https://developer.mozilla.org/zh-CN/docs/Web/CSS/Reference

    css的作用是对符合条件的标签进行渲染,那么首先就要匹配到对应标签啦,我萌有三种基础的模式来匹配希望改变样式的标签

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>Title</title>
     6     <style>
     7         #id1 {
     8             color: red;
     9         }
    10 
    11         .class1 {
    12             color: blue;
    13         }
    14 
    15         div {
    16             color: green;
    17         }
    18     </style>
    19 </head>
    20 <body>
    21     <div id="id1">id选择器</div>
    22     <div class="class1">class类选择器</div>
    23     <div>标签选择器</div>
    24 </body>
    25 </html>

    显而易见这三种选择器会对符合条件的标签进行对应渲染,在日常使用中我们最多使用的是类选择器,因为在一个页面中一个id只能对应一个标签,而类选择器则可以赋予多个标签,所以id选择器最具有针对性,它的优先级也是最高的,而类选择器则比标签选择器高

    Id > class > 标签

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>Title</title>
     6     <style>
     7         #id1 {
     8             color: red;
     9         }
    10 
    11         .class1 {
    12             color: blue;
    13         }
    14 
    15         div {
    16             color: green;
    17         }
    18     </style>
    19 </head>
    20 <body>
    21     <div id="id1" class="class1">id选择器</div>
    22     <div class="class1">class类选择器</div>
    23     <div class="class1">标签选择器</div>
    24 </body>
    25 </html>

    好啦,我萌知道了怎么给对应的标签加特效了,duang,但是在有多层级的时候怎么办呢,我又不能给每个标签加上id或者class,因为有很多都是没有必要的,so,此时我萌就要用到层级选择器啦

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>Title</title>
     6     <style>
     7         div {
     8             color: red;
     9         }
    10 
    11         div > div {
    12             color: blue;
    13         }
    14 
    15         div > div > div{
    16             color: green;
    17         }
    18     </style>
    19 </head>
    20 <body>
    21     <div>
    22         <div>
    23             <div>3层</div>
    24         </div>
    25 
    26         <div>2层</div>
    27     </div>
    28 
    29     <div>1层</div>
    30 </body>
    31 </html>

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>Title</title>
     6     <style>
     7         #id1 ~ div {
     8             color: red;
     9         }
    10     </style>
    11 </head>
    12 <body>
    13     <div id="id1"></div>
    14     <div>1层</div>
    15 </body>
    16 </html>

    层级的选择主要使用的就是>,代表去子元素中继续匹配,所以我们可以在首层使用一个id,这样就可以立刻锁定一个标签块的范围然后继续去匹配了

    最后还有一个问题,那就是如何使用css呢,我们有三种方法

    1. 在标签的属性内增加style属性,然后进行编辑,这种方式的优先级最高
    2. 在head内增加<style>标签然后编辑对应需要匹配标签的效果,这种方式的优先级中等
    3. 第三种使用<link>标签外联uri引入css,css文件内容与第二种一样只是不需要<style>标签了,这种方式的优先级最低,但是确实我们最常使用的
     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>Title</title>
     6     <link rel="stylesheet" href="main.css">
     7     <style>
     8         div {
     9             color: blue;
    10         }
    11     </style>
    12 </head>
    13 <body>
    14     <div style="color: red">66666666666666</div>
    15 </body>
    16 </html>
    1 div {
    2     color: green;
    3 }

    为什么我萌最常使用第三种呢?这个在最后的前端优化里会介绍~

  • 相关阅读:
    Java并发包源码学习系列:基于CAS非阻塞并发队列ConcurrentLinkedQueue源码解析
    Java并发包源码学习系列:阻塞队列实现之LinkedBlockingDeque源码解析
    Java并发包源码学习系列:阻塞队列实现之LinkedTransferQueue源码解析
    Java并发包源码学习系列:阻塞队列实现之SynchronousQueue源码解析
    Java并发包源码学习系列:阻塞队列实现之PriorityBlockingQueue源码解析
    Java并发包源码学习系列:阻塞队列实现之LinkedBlockingQueue源码解析
    Java并发包源码学习系列:阻塞队列实现之ArrayBlockingQueue源码解析
    Java并发包源码学习系列:阻塞队列BlockingQueue及实现原理分析
    Java并发包源码学习系列:JDK1.8的ConcurrentHashMap源码解析
    Java并发包源码学习系列:挂起与唤醒线程LockSupport工具类
  • 原文地址:https://www.cnblogs.com/bfmq/p/7560239.html
Copyright © 2020-2023  润新知