博客列表 >CSS基础介绍和各种选择器的使用方法-PHP九期

CSS基础介绍和各种选择器的使用方法-PHP九期

曾龙宇
曾龙宇原创
2019年10月31日 11:09:26554浏览

一、元素按显示方式分为两种,分别是:

块级元素:遵循最大化原则,总是独占一行,两边不允许存在其他元素,例如,<div>,<ul+li>,<table>,<p>,<h1-h6>;

行内元素:遵循最小化原则,总是在一行文本元素的内部生成, 它的宽高由所在行决定,例如,<span>,<input>,<a>

二、CSS(Cascading Style Sheets):层叠样式表,是一种用来表现HTML等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。CSS 能够对网页中元素位置的排版进行像素级精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力。

三、要使用CSS对HTML页面中的元素实现一对一,一对多或者多对一的控制,这就需要用到CSS选择器;CSS样式声明由选择器,以及一条或多条声明组成。

四、简单选择器分为:

①、元素选择器:element 选择器选择指定元素名称的所有元素,例,p{},选择所有的p元素

②、属性选择器:[attribute=value] 选择器用于选择指定了属性和值的元素,例,a[target=_blank],选择所有使用target="_blank"的a元素

类选择器:.class选择器是指定类的所有元素的样式,例,.name{},选择class="name"的元素

ID选择器:#id选择器指定具有ID的元素的样式,例,#pwd{},选择id="pwd"的元素

③、群组选择器:几个元素具有相同的样式,用逗号分隔每个元素的名称,例,h1,p{},选择所有的h1元素和p元素

④、通配符选择器:* 选择器选择所有元素,例,*{},选择所有元素;div *{},选择<div>元素内的所有元素

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>简单选择器</title>
    <style>
        /*元素选择器、标签选择器*/
        p{
            color: green;
        }

        /*属性选择器*/
        .red{
            background-color: lightblue;
        }
        #blue{
            background-color: yellow;
        }

        /*群组选择器*/
        .red,h2{
            color: yellow;
        }

        /*通配符选择器*/
        * {
            font-size: 20px;
        }
    </style>
</head>
<body>
<h2>简单选择器</h2>
<p>***1男孩遭校园欺凌死亡 事发前家长曾向学校投诉</p>
<p class="red">杭州一楼盘出现大量连号被质疑 部分新房重新摇号</p>
<p id="blue">山东省民政厅:被活埋男婴已由***福利院临时代养</p>
</body>
</html>

blob.png

blob.png


五、上下文选择器分为:

①、后代选择器:element element选择器用于选择元素内部的元素,例,div p{},选择<div>元素内的所有<p>元素

②、父子选择器:element>element 选择器用于选择特定父元素,例,div>p{},选择所有父级是 <div> 元素的 <p> 元素

③、同级相邻选择器:element+element 选择器用于选择(不是内部)指定的第一个元素之后紧跟的元素,例,div+p{},选择所有紧接着 <div> 元素之后的第一个 <p> 元素

④、同级所有选择器:element~element 选择器用于选择(不是内部)指定的第一个元素之后所有的元素,例,div~p{},选择所有紧接着 <div> 元素之后的所有 <p> 元素

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>上下文选择器/结构选择器</title>
    <style>
        /*后代选择器*/
        section h2{
            color: green;
        }

        /*父子选择器*/
        section > h2{
            background-color: yellow;
        }

        /*同级相邻选择器*/
        #item + * {
            background-color: lightblue;
        }

        /*同级所有选择器*/
        #item ~ * {
            font-size: 60px;
        }
    </style>
</head>
<body>
<section>
    <div>
        <h2 id="item">PHP中文网</h2>
        <h2>phpSduty V8</h2>
        <h2>小皮控制面板</h2>
    </div>

    <h2>HTML中文网</h2>
    <h2>Python中文网</h2>
</section>
</body>
</html>

blob.png

blob.png

六、CSS结构伪类选择器,常用的如下:

:first-child 选择器匹配其父元素中的第一个子元素,例,p:first-child{},匹配 <p> 的父元素的第一个<p>元素

:last-child选择器用来匹配父元素中最后一个子元素,例,p:last-child{},匹配 <p> 的父元素的最后一个<p>元素

:nth-child(n) 选择器匹配父元素中的第 n 个子元素,例,p:nth-child(2){}, 每个p 元素匹配的父元素中第 2 个子元素

:nth-last-child(n) 选择器匹配属于其元素的第 N 个子元素的每个元素,从最后一个子元素开始计数,例,p:nth-last-child(2){},每个 p 元素匹配父元素中的倒数第 2 个元素

:first-of-type选择器匹配元素其父级是特定类型的第一个子元素, 和:nth-of-type(1) 是一个意思

:last-of-type选择器匹配元素其父级是特定类型的最后一个子元素,和:nth-last-of-type(1)是一个意思

:nth-of-type(n)选择器匹配同类型中的第n个同级兄弟元素,括号中n+1表示全部,例,p:nth-of-type(2){},每个p元素匹配同类型中的第2个同级兄弟元素

:nth-last-of-type(n)选择器匹配同类型中的倒数第n个同级兄弟元素,例,p:nth-last-of-type(2){},每个p元素匹配同类型中的倒数第2个同级兄弟元素

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>结构伪类选择器</title>
    <style>

        /*选中所有的ul下面的第二个子元素*/
        ul > :nth-child(2){
            color: red;
        }

        /*选中第一个li中的全部子元素*/
        li:first-child > :nth-child(n+1){
            font-size: 30px;
        }

        /*选中ul中的最后一个li子元素*/
        ul:first-child > :nth-last-child(1){
            background-color: yellow;
        }

        /*选中最后一个子元素中的,类型为h3的元素*/
        ul:first-of-type > :last-of-type > h3:nth-of-type(n+1){
            background-color: cyan;
        }
    </style>
</head>
<body>
<ul>
    <li>
        <h3>爱好</h3>
        <ul>
            <li>玩游戏</li>
            <li>撸代码</li>
            <li>看电影</li>
        </ul>
    </li>
    <li>
        <h3>喜欢吃的食物</h3>
        <ul>
            <li>汉堡包</li>
            <li>可乐</li>
            <li>薯片</li>
        </ul>
    </li>
    <li>
        <h3>前端语言</h3>
        <ul>
            <li>HTML</li>
            <li>CSS</li>
            <li>Javascript</li>
        </ul>
        <p>HTML是超文本标记语言</p>
        <p>CSS是层叠样式表</p>
    </li>
</ul>
</body>
</html>

blob.png

微信图片_20191031110237_wps图片.jpg


七、CSS表单伪类选择器,常用的如下:

:enabled 选择器匹配每个启用的的元素,例,input[type="text"]:enabled{},所有type="text"的启用的输入元素

:disabled 选择器匹配每个禁用的的元素,例,input[type="text"]:disabled{},所有type="text"的禁用的输入元素

:required 选择器在表单元素是必填项时设置指定样式,例,input:required{},所有包含required属性的输入元素

:checked 选择器匹配每个选中的输入元素(仅适用于单选按钮或复选框),例,input:checked{},所有选中的输入元素

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>注册</title>
    <style>
        /*选择type="text"的已启用的元素*/
        input[type="text"]:enabled{
            background-color: yellow;
        }

        /*选择已禁用的元素*/
        input:disabled{
            background-color: green;
        }

        /*选择已被选中的元素*/
        input:checked{
            color: blue;
        }
    </style>
</head>
<body>
<h1>欢迎注册</h1>
<form action="" method="post">
    <p>
        <label for="username">账号:</label>
        <input type="text" id="username" name="username" placeholder="请输入用户名">
    </p>
    <p>
        <label for="pwd">密码:</label>
        <input type="password" id="pwd" name="pwd" placeholder="请输入密码">
    </p>
    <p>
        <label for="age">年龄:</label>
        <input type="number" name="age" id="age" min="16" max="80">
    </p>

    <p>
        <label for="">性别:</label>
        <input type="radio" id="man" name="sex" checked><label for="man">男</label>
        <input type="radio" id="woman" name="sex"><label for="woman">女</label>
        <input type="radio" id="screct" name="sex"><label for="screct">保密</label>
    </p>
    <p>
        <label for="warning">警告:</label>
        <input type="text" id="warning" value="一天内仅允许登录三次" disabled>
    </p>


</form>
</body>
</html>

blob.png

blob.png

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议