天天看点

css基础1

Css(实现了页面和样式的彻底分离)

写入样式表的三种方式:

内联样式表,嵌入样式表,外部样式表。

内联样式表的优先级高于嵌入样式表。嵌入式样式表的优先级大于外部样式表

样式表的选择器(通过选择器帮我们获得页面上要获得样式的元素)

写什么标签就拿到了什么标签。(当页面中所有标签都用同一种样式的时候用html选择器)

什么时候用id选择器什么时候用类选择器:

当同一个页面中某些元素显示同一个样式的时候一般用类选择器,id选择器一般是唯一的。

Css当中属性非常多,大体上可以分为以下几类:字体,背景,文本,位置,布局,边缘,列表。

下面是一些关于样式表的例子:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
	<meta charset="utf-8" />
    <!--外部样式表-->
    <link href="test.css" rel="stylesheet" type="text/css" />
    <!--嵌入样式表-->
    <style type="text/css">
        p {
            background-color:yellow;
            font-size:xx-small;
        }
    </style>
</head>
<body>
    <p style="background:red;font-size:xx-large">今天天气好晴朗,处处好风光</p>
    <!--内联样式表-->
    <p>今天天气好晴朗,处处好风光</p>
    <p>今天天气好晴朗,处处好风光</p>
    <p>今天天气好晴朗,处处好风光</p>
    <p>今天天气好晴朗,处处好风光</p>
    <h1>呵呵</h1>
    <tt>窗前明月光,你是第上传</tt>
</body>
</html>
      

选择器的分类:

class类选择器,HTML选择器,ID选择器,关联选择器,伪元素选择器,组合选择器。

下面是class类选择器的例子:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
	<meta charset="utf-8" />
    <style type="text/css">
        p.pp1 {
            background-color:red;
        }
        tt.tt1 {
            background-color:yellow;
        }
    </style>
</head>
<body>
    <p style="background:red;font-size:xx-large">今天天气好晴朗,处处好风光</p>
    <!--内联样式表-->
    <p class="pp1">今天天气好晴朗,处处好风光</p>
    <p class="pp1">今天天气好晴朗,处处好风光</p>
    <p>今天天气好晴朗,处处好风光</p>
    <p>今天天气好晴朗,处处好风光</p>
    <h1>呵呵</h1>
    <tt class="tt1">窗前明月光,你是第上传</tt>
</body>
</html>
      

HTML选择器:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
	<meta charset="utf-8" />
    <style>

    </style>
</head>
<body>
    <p style="background:red;font-size:xx-large">今天天气好晴朗,处处好风光</p>
    <!--内联样式表-->
    <p>今天天气好晴朗,处处好风光</p>
    <p>今天天气好晴朗,处处好风光</p>
    <p>今天天气好晴朗,处处好风光</p>
    <p>今天天气好晴朗,处处好风光</p>
    <h1>呵呵</h1>
    <tt>窗前明月光,你是第上传</tt>
</body>
</html>
      

ID选择器:

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title></title>
    <style type="text/css">
        #p1 {
            background-color:black;
        }
        #p2 {
            background-color:blue;
        }

    </style>
    <meta charset="utf-8" />
</head>
<body>
    <p id="p1">今天天气很好</p>
    <p id="p1">今天天气很好</p>
    <p id="p2">今天天气很好</p>
    <p id="p3">今天天气很好</p>
    <p id="p4">今天天气很好</p>
</body>
</html>
      

关联选择器:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
	<meta charset="utf-8" />
    <style type="text/css">
        p em {
            background-color:red;
        }
    </style>
</head>
<body>
   
    <p><em>今天天气好晴朗,处处好风光</em></p>
    <em>haha</em>
    <em>haha</em>
    <em>haha</em>
    <em>haha</em>
    <p>今天天气好晴朗,处处好风光</p>
    <p>今天天气好晴朗,处处好风光</p>
    <p>今天天气好晴朗,处处好风光</p>
    <h1>呵呵</h1>
    <tt>窗前明月光,你是第上传</tt>
</body>
</html>
      

伪元素选择器:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
	<meta charset="utf-8" />
    <!--伪元素选择器是对同一个html元素的各种状态和其所在的部分内容的一种定义形式,例如,对于超链接标签的正常状态,访问过的状态,选中的状态,光标移到超链接上的状态-->
    <style type="text/css">
        a:active {
            text-decoration:none;
        }
        a:hover {
            font-size:xx-large;
        }
        p::first-line {
            font-size:xx-small;
        }
        p::first-letter {
            background-color:red;
        }
    </style>
</head>
<body>
    <p>晋太原中,武陵人捕鱼为业,缘溪行<br />
        晋太原中,武陵人捕鱼为业,缘溪行</p>
    <a href="#">超链接</a>
</body>
</html>
      

组合选择器:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
	<meta charset="utf-8" />
    <style type="text/css">
        h1,h2,td {
            background-color:yellow;
        }
    </style>
</head>
<body>
    <h1>我是一个大标题</h1>
    <h2>我是一个二号标题</h2>
    <table border="1px" cellpadding="0px" cellspacing="0px">
        <tr>
            <td>粉刷本领强</td>
            <td>粉刷本领强</td>
            <td>粉刷本领强</td>
            <td>粉刷本领强</td>
        </tr>
        <tr>
            <td>粉刷本领强</td>
            <td>粉刷本领强</td>
            <td>粉刷本领强</td>
            <td>粉刷本领强</td>
        </tr>
        <tr>
            <td>粉刷本领强</td>
            <td>粉刷本领强</td>
            <td>粉刷本领强</td>
            <td>粉刷本领强</td>
        </tr>
        <tr>
            <td>粉刷本领强</td>
            <td>粉刷本领强</td>
            <td>粉刷本领强</td>
            <td>粉刷本领强</td>
        </tr>
    </table>
</body>
</html>
      

2.关于文档流:什么是文档流?就是html会将控件从上到下排列,不会出现覆盖的情况。

当用css给div设定位置并把position设置为:absolute时,就可以将div设置在需要固定的位置,使其摆脱文档流的束缚。

其中 z-index是元素在页面中的第多少层,越大越在上面,相当于ps中图层的概念。

下面是一个小例子:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
	<meta charset="utf-8" />
    <style type="text/css">
        div {
            height:300px;
            width:300px;
        }
            div.div1 {
                background-color:rebeccapurple;
                top:100px;
                left:130px;
                position:absolute;/*绝对定位,定在哪儿就在哪儿,脱离文档流的限制*/
                z-index:3;/*确定显示在哪一层*/
            }
            div.div2 {
                background-color:green;
                top:110px;
                left:140px;
                position:absolute;
                z-index:2;
            }
            div.div3 {
                background-color:yellow;
                top:120px;
                left:150px;
                position:absolute;
                z-index:1;
            }
    </style>
</head>
<body>
<div class="div1"></div>
    <div class="div2"></div>
    <div class="div3"></div>
</body>
</html>
      

效果如图所示:

css基础1

在很多网页中会弹出那种恭喜你,被QQ抽中中奖的广告的弹窗怎么实现的呢?用css也能轻松实现。

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
	<meta charset="utf-8" />
    <style type="text/css">
        .div1 {
            right:0px;
            bottom:0px;
            position:fixed;/*absolte当页面拉动时跟着动,fixed是页面拉动的时候不动*/
            height:300px;
            width:300px;
            background-color:red;
        }
    </style>
</head>
<body>
    <div class="div1"></div><br />
    <br /><br /><br /><br /><br /><br />
    <br /><br /><br /><br /><br /><br />
    <br /><br /><br /><br /><br /><br />
    <br /><br /><br /><br /><br /><br />
    <br /><br /><br /><br /><br /><br />
    <br /><br /><br /><br /><br /><br />
    <br /><br /><br /><br /><br /><br />
    <br /><br /><br /><br /><br /><br />
    <br /><br /><br /><br /><br /><br />
    <br /><br /><br /><br /><br /><br />
    <br /><br /><br /><br /><br /><br />
    <br /><br /><br /><br /><br /><br />
    <br /><br /><br /><br /><br /><br />
    <br /><br /><br /><br /><br /><br />
    <br /><br /><br /><br /><br /><br />
</body>
</html>
      

其中,position的fixed的意思是把那个div窗体固定在某一位置的意思。即使页面上下拉动,它也始终固定在一个地方。

下面是运行效果:

css基础1

今天就先总结到这里!88