HTML+CSS教程(四)选择器(id选择器,类选择器,标签选择器,子代选择器,后代选择器,组选择器,伪类选择器)/css引入页面的形式(行内样式、内嵌样式、外联样式)


一.回顾内容

    前端的三大组成(三大模块)
    HTMl(超文本标记语言) 结构层
    css(层叠样式表) 表现层:用来美化HTML结构
    JS(Java script)(脚本语言) 行为层:提供用户和界面的交互

二.CSS(层叠样式表)

1. CSS的概念及其介绍
CSS 指层叠样式表 (Cascading Style Sheets)
作用:美化HTML结构,重点:css可以很好的将结构内容和表现进行分离.
2. css的三种表现形式(引入方法)
css的语法结构:选择器{属性:值;属性:值;…}
选择器:选择器是将样式和页面元素关联起来的名称,属性是希望设置的样式属性每个属性有一 个 或多个值.顾名思义就是用来筛选元素的一种方式.
(1)行内样式(内联样式):通过style属性将样式写入标签中.
例:

<html>
    <head>
        <meta charset="utf-8" />
        <title></title>
    </head>
    <body>
    //border-style:solid;设置边框样式为实线//     //margin:"auto";设置水平居中//
        <div style="width: 200px;height: 200px; border-color: red; border-style: solid; border-width: 5px; margin: auto;"></div>
        <div style="width: 1000px; height: 100px; background: red; border-color: green; border-width: 5px; border-style: solid;"></div>
        <br />
        <div style="width: 200px; height: 200px; border: 1px solid darkgoldenrod;"></div>
        <div style="width: 200px; height: 200px; border: 1px solid darkgoldenrod;"></div>
        <p style="background: yellow;">我比你帅</p>
    </body>
</html>

(2)内嵌样式:通过style标签将样式写入head标签中.
例:

<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style type="text/css">
            body{
                background: url(img/r14.jpg);//插入背景图片//
                background-size: 100%,100%;//body要加逗号//
             }
            a{
             text-decoration: none;font-family: 阿美简体;font-weight: 900;font-size: 54px;color: red;
             }
            p{
                width: 200px;    height: 50px;    background: red;text-align: center;line-height: 50px;
                }
            div{
                width: 400px;    height: 200px;    border: red solid 2px;
                background: url(img/img01.jpg);
                background-size: 100% 100%;
               }    
        </style>
    </head>
    <body>
        <a href="#">我的超链接</a>
        <p>我爱学习,学习使我快乐</p>
        <div></div>
    </body>
</html>

(3)外联样式(外部样式):通过link标签引入外部css文件夹中的xxx.css文件到head标签中.
div: 没有具体的含义(主要用来页面的布局中,替代了原始的table和框架布局).
块元素:所谓的块元素会占据一行显示称之为块元素,即便把宽高缩小也会占据一行显示.
3. CSS 文本设置
常用的应用文本的 css 样式:
color 设置文字的颜色,如: color:red;
font-size 设置文字的大小,如:font-size:12px;
font-family 设置文字的字体,如:font-family:‘微软雅黑’;
font-style 设置字体是否倾斜,如:font-style:‘normal’; 设置不倾斜, font-style:‘italic’;设置文字倾斜
font-weight 设置文字是否加粗, 如: font-weight:bold; 设 置 加 粗 font-weight:normal 设置不加粗
font 同时设置文字的几个属性,写的顺序有兼容问题,建议按照如下顺序写:
font:是否加粗字号/行高 字体;如: font:normal 12px/36px ‘微软雅黑’;
line-height 设置文字的行高,如:line-height:24px; (文本的垂直居中)
text-decoration 设置文字的下划线,如:text-decoration:none; 将文字下划线去掉 (overline上划线,underline下划线)
text-indent 设置文字首行缩进,如:text-indent:24px; 设置文字首行缩进 24px
text-align 设置文字水平对齐方式,如 text-align:center 设置文字水平居中
border-collapse: collapse;设置表格边框合并
4.css颜色的三种表现形式
(1).直接写颜色的名称
background:red;
(2).使用RGB三原色设置
background:rgb(76,50,0);
background:rgba(76,50,0,0.8);//a不透明度//
(3).使用16进制的方式表示颜色(最常用的一种)
background:#ff0000
5.css的选择器
(1).标签选择器
(2).ID选择器
通过 id 名来选择元素,元素的 id 名称不能重复,所以一个样式设置项只能 对应于页面上一个元素,不能复用,id 名一般给程序使用,所以不推荐使用 id选择器.
(3).类选择器(class)
.class的值{属性:属性值}
例:

<style type="text/css">
//标签选择器//
                table{
                                border: 5px solid black;
                                width: 300px;
                                height: 200px;
                                margin:100px auto;    //设置表格的水平居中//    //距离顶端100px  然后水平居中//
                                border-collapse: collapse;    //设置表格的边框合并//
                                background: url(images/bg3.jpg);
                                background-size: 100% 100%;
                            }
                td{
                                border: 2px dashed green;
                                color: red;
                                font-family: 宋体;
                                font-size: 24px;
                        }    
//id选择器//
            #inp1{
                        background: pink;
                        border: 5px solid black;
                        width: 150px;
                        height: 20px;
                        }
            #inp2{
                        background: white;
                        border: 5px solid black;
                        width: 150px;
                        height: 20px;
                    }
          #ipn3{
                        background: goldenrod;
                        border: 5px solid black;
                        width: 150px;
                        height: 30px;
                        font-family: 阿美简体;
                        font-size: 15px;
                        color: white;
                    }
           label{
                        text-align: right;
                        /*border: 1px solid green;*/
                    }
    //类选择器//
            .td1{
                    text-align: right;
                }
    </style>
<body>
        <form method="get">
        <table>
            <tr>
                <td class="td1">
                    <label>姓名:</label>
                </td>
                <td>
                    <input id="inp1" type="text" placeholder="请输入用户名" />
                </td>
            </tr>
            <tr>
                <td class="td1">
                    <label>密码:</label>
                </td>
                <td>
                    <input id="inp2" type="password" placeholder="请输入密码" />
                </td>
            </tr>
            <tr>
                <td></td>
                <td>
                    <input id="ipn3" type="button" value="点击登录" />
                </td>
            </tr>
        </table>
        </form>
    </body>

层级选择器
主要应用在选择父元素下的子元素,或者子元素下面的子元素,可与标签元 素 结合使用,减少命名,同时也可以通过层级,防止命名冲突。
(4)子代选择器:父级元素1>子集元素2
(5)后代选择器:父级元素 后代元素 后代元素
例:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <style type="text/css">
        //子代选择器//
                #ul_01>li{
                        background: red;
                    }
                    #ul_01>li>ul{
                        background: yellow;
                    }
                    #ul_01>li>ul>li{
                        background: pink;
                    }
        //后代选择器//
                #ul_01 a{
                     text-decoration: none;
                }
            #ul_01 li{
                    list-style: none;//去掉无序列表的点//
                }
            
            #ul_01 li ul li{
                background: greenyellow;
             }
            #ul_01>li ul a{
                color: red;
            }  
        </style>
    </head>
    <body>
        <ul id="ul_01">
            <li><a href="#">首页</a></li>
            <li><a href="#">数码产品</a></li>
            <li><a href="#">家用电器</a></li>
            <p><a href="#">学的不仅是技术</a></p>
            <li>
                <a href="#">其他类型</a>
                <ul>
                    <li><a href="#">童装</a></li>
                    <li><a href="#">男装</a></li>
                    <li><a href="#">女装</a></li>
                    <li><a href="#">时尚装</a></li>
                </ul>
            </li>
        </ul>
    </body>
</html>

(6)组选择器
多个选择器,如果有同样的样式设置,可以使用组选择器。
例:

.box1,.box2,.box3{width:100px;height:100px}
.box1{background:red}
.box2{background:pink}
.box2{background:gold}


<div class="box1">.........</div>
<div class="box2">.........</div>
<div class="box3">.........</div>

(7)伪类及伪元素选择器
常用的伪类选择器有 hover,表示鼠标悬浮在元素上时的状态,伪元素选择器有 before 和 after,它们可以通过样式在元素中插入内容
例:

.box1:hover{color:red}
.box2:before{content:'行首文字';}
.box3:after{content:'行尾文字';}



 <div class="box1">.........</div>
 <div class="box2">.........</div> 
 <div class="box3">.........</div>

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM