CSS基本语法:

 

CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明。

 

'''
        selector {
                  property: value;
                  property: value;
             ...  property: value
         
          }
         
'''

 

例如:

 

h1 {color:red; font-size:14px;}

 

python学习点滴记录-Day13-前端基础之css

 

css的四种引入方式 

 

1.行内式

 

          行内式是在标记的style属性中设定CSS样式。这种方式没有体现出CSS的优势,不推荐使用。

 

<p style="" style="color: rgb(128, 0, 0);">">hello tianle</p>

 

2.嵌入式

 

          嵌入式是将CSS样式集中写在网页的<head></head>标签对的<style></style>标签对中。格式如下:

 

<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        p{
            background-color: #2b99ff;
        }
    </style>
</head>

 

3 链接式

 

            将一个.css文件引入到HTML文件中

 

<link href="mystyle.css" rel="stylesheet" type="text/css"/>

 

4.导入式

 

          将一个独立的.css文件引入HTML文件中,导入式使用CSS规则引入外部CSS文件,<style>标记也是写在<head>标记中,使用的语法如下:    

 

<style type="text/css">
 
          @import"mystyle.css"; 此处要注意.css文件的路径
 
</style> 

 

注意:

 

      导入式会在整个网页装载完后再装载CSS文件,因此这就导致了一个问题,如果网页比较大则会儿出现先显示无样式的页面,闪烁一下之后,再出现网页的样式。这是导入式固有的一个缺陷。使用链接式时与导入式不同的是它会以网页文件主体装载前装载CSS文件,因此显示出来的网页从一开始就是带样式的效果的,它不会象导入式那样先显示无样式的网页,然后再显示有样式的网页,这是链接式的优点。

 

  

 

css选择器

基本选择器

                  python学习点滴记录-Day13-前端基础之css

组合选择器

E,F   多元素选择器,同时匹配所有E元素或F元素,E和F之间用逗号分隔      :div,p { color:#f00; }
 
E F   后代元素选择器,匹配所有属于E元素后代的F元素,E和F之间用空格分隔 :li a { font-weight:bold;}
 
E > F   子元素选择器,匹配所有E元素的子元素F            :div > p { color:#f00; }
  
E + F   毗邻元素选择器,匹配所有紧随E元素之后的同级元素F  :div + p { color:#f00; } 

.out+p
紧挨着的下级标签
out标签的下级标签必须是p的 E ~ F 普通兄弟选择器(以破折号分隔) :.div1 ~ p{font-size: 30px; }
  
.out~p
兄弟选择器
向后 的p标签都可以 


一般,块级元素可以包含内联元素或某些块级元素,但内联元素不能包含块级元素,它只能包含其它内联元素。需要注意的是,p标签不能包含块级标签。

。。。待补充其他

 python学习点滴记录-Day13-前端基础之css

匹配p标签的并且类名为c1的

 

python学习点滴记录-Day13-前端基础之css

一个标签可以有多个类名,把相似div的属性相同的部分定义一个类,不同部分各自定义类。

 


 

属性选择器

 1 E[att]          匹配所有具有att属性的E元素,不考虑它的值。(注意:E在此处可以省略。
 2                 比如“[cheacked]”。以下同。)   p[title] { color:#f00; }
 3  
 4  
 5 E[att=val]      匹配所有att属性等于“val”的E元素   div[class=”error”] { color:#f00; }
 6  
 7  
 8 E[att~=val]     匹配所有att属性具有多个空格分隔的值、其中一个值等于“val”的E元素
 9                 td[class~=”name”] { color:#f00; }
10  
11 E[attr^=val]    匹配属性值以指定值开头的每个元素                    
12                 div[class^="test"]{background:#ffff00;}
13  
14 E[attr$=val]    匹配属性值以指定值结尾的每个元素    div[class$="test"]{background:#ffff00;}
15  
16 E[attr*=val]    匹配属性值中包含指定值的每个元素    div[class*="test"]{background:#ffff00;}

自定义属性 

python学习点滴记录-Day13-前端基础之css

egon='xxoo'

 

[egon]

[egon]=value

 


 

伪类

'''
        a:link(没有接触过的链接),用于定义了链接的常规状态。

        a:hover(鼠标放在链接上的状态),用于产生视觉效果。
        
        a:visited(访问过的链接),用于阅读文章,能清楚的判断已经访问过的链接。
        
        a:active(在链接上按下鼠标时的状态),用于表现鼠标按下时的链接状态。
        
        伪类选择器 : 伪类指的是标签的不同状态:
        
                   a ==> 点过状态 没有点过的状态 鼠标悬浮状态 激活状态
        
        a:link {color: #FF0000} /* 未访问的链接 */
        
        a:visited {color: #00FF00} /* 已访问的链接 */
        
        a:hover {color: #FF00FF} /* 鼠标移动到链接上 */
        
        a:active {color: #0000FF} /* 选定的链接 */ 格式: 标签:伪类名称{ css代码; }

'''

 

针对a进行设置的,重点掌握:hover悬浮时的状态,很常用

 

python学习点滴记录-Day13-前端基础之css

 悬浮父类操作子元素(这种方式只能用作父子元素,同级的不可以)

  悬浮标签:动作    操作的标签{操作的动作}

  .box:hover .c2{color:red;}     #悬浮到box时 把c2的颜色变为红色

python学习点滴记录-Day13-前端基础之css  实际应用: python学习点滴记录-Day13-前端基础之css

 before after

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    <style>

       .top{
           background-color: rebeccapurple;
           width: 100px;
           height: 100px;
       }
        .bottom{
            background-color: green;
            width: 100px;
            height: 100px;
        }

        .outer:hover .bottom{
            background-color: yellow;
        }

        注意:一定是outer:hover  控制outer里某一个标签,否则无效

        .top:hover .bottom{
            background-color: yellow;
        }
    </style>
</head>
<body>


<div class="outer">
    <div class="top">top</div>
    <div class="bottom">bottom</div>
</div>




</body>
</html>
View Code

相关文章: