【02】CSS

本文详细介绍了CSS的基础知识,包括选择器的使用、语法规则、三种结合方式、四种选择器及其扩展,以及常见CSS属性如字体、背景、边框和尺寸等。此外,还深入讲解了盒子模型、浮动和定位,最后通过实际案例展示了CSS在注册页面设计中的应用。
摘要由CSDN通过智能技术生成

1.概念

  • CSS就是对html标签元素进行装修的!
  • 同一个html标签可以使用多个css样式,同时生效
  • css功能强大
  • 将内容展示和样式控制分离,解耦,让分工协作更容易,提高开发效率
# 课程目标:
> 1. 学会使用CSS选择器
> 2. 熟记CSS样式和外观属性
> 3. 熟练掌握CSS各种选择器
> 4. 熟练掌握CSS各种选择器
> 5. 熟练掌握CSS三种显示模式
> 6. 熟练掌握CSS背景属性
> 7. 熟练掌握CSS三大特性
> 8. 熟练掌握CSS盒子模型
> 9. 熟练掌握CSS浮动
> 10.熟练掌握CSS定位
> 11.熟练掌握CSS高级技巧强化CSS
typora-copy-images-to: media

参考:
https://blog.csdn.net/luo609630199/article/details/80066491

2.css语法规则

选择器{
		Key1:value1;
		Key2: value2;
		...
}

选择器: 浏览器根据选择器决定css影响的css标签
属性: 要改变的样式

3.三种结合方式方式

(1) 内联样式

  • 直接在标签内部通过style属性来指定css样式,多个css kv之间用分号隔开;
  • 注意:kv之间用冒号,不是=了
<body>
    <!-- 修改div样式  边框1px, --> 
    <div style="border-style:solid;border-width:5px;border-color:rgb(255,233,221) "> demo01</div>
</body>

(2)页面内引入

  • 在head标签内部写<style>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>css02</title>

   <!-- 标签名选择器,直接用标签名当选择器,页面内所有该标签都引入此样式 -->
    <!--html注释不能写在style标签内部 -->
    <style type="text/css">
        /*这是css的注释写法*/
        div{
            border-style: solid;
            border-width:5px;
            border-color:rgb(255,233,221);
        }
    </style>



</head>
<body>
    <!-- 结合方式2:修改div样式 -->
    <div> demo02</div>
    <div> demo03</div>
    <div> demo04</div>
</body>
</html>

(3)页面外引入

  • 定义一个css文件
  • 通过link标签引入css文件
<head>
    <meta charset="UTF-8">
    <title>css02</title>

    <!--link标签准们用来引入css代码 -->
    <link rel="stylesheet" type="text/css" href="cssDemo03.css">
</head>
<body>
    <!-- 结合方式2:修改div样式 -->
    <div> demo02</div>
    <div> demo03</div>
    <div> demo04</div>
</body>
</html>
cssDemo03.css:

div{
    border-style: solid;
    border-width:5px;
    border-color:rgb(255,233,221);
}

4.四种选择器

1.标签名选择器

  • 会将当前html页面所有此标签的元素都进行装饰
    <style type="text/css">
        /*这是css的注释写法*/
        div{
            border-style: solid;
            border-width:5px;
            border-color:rgb(255,233,221);
        }
    </style>

2.id选择器

#id值{
	Key1:value1;
	...
}
  • 通过标签的id属性值的匹配 来绑定标签。
  • id不能以数字开头,否则无效。
  • 由于html页面中标签的id属性值必须是唯一的,因此意味着id选择器只能对一个标签引入css
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>id选择器</title>

    <style type="text/css">
        #id001{
            border-style: solid;
            border-width:5px;
            border-color:rgb(255,233,221);
            font-style:oblique;
        }
    </style>
</head>
<body>
    <!-- 结合方式2:修改div样式 -->
    <div id="id001"> demo02</div>
    <div id="id002"> demo03</div>
    <div id="id003"> demo04</div>
</body>

3.class选择器

  • 通过标签的class属性值的匹配 来绑定标签;
  • 可绑定一组标签
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>class选择器</title>

    <style type="text/css">
        .class001{
            border-style: solid;
            border-width:5px;
            border-color:rgb(255,233,221);
            font-style:oblique;
        }
    </style>

</head>
<body>
    <!-- 结合方式2:修改div样式 -->
    <div id="id001" class="class001"> demo02</div>
    <div id="id002" class="class001"> demo03</div>
    <div id="id003" class="class002"> demo04</div>
</body>
</html>

4.组合选择器

  • 多个选择器用逗号分开
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>class选择器</title>

    <style type="text/css">
        .class001,#id001,span{
            border-style: solid;
            border-width:5px;
            border-color:rgb(255,233,221);
            font-style:oblique;
        }
    </style>

    <!-- 由于html页面中标签的id属性值必须是唯一的,
    因此,id选择器只能对一个标签引入css-->

</head>
<body>
    <!-- 结合方式2:修改div样式 -->
    <div id="id001" class="class001"> demo02</div>
    <div id="id002" class="class001"> demo03</div>
    <div id="id003" class="class002"> demo04</div>

    <span> span标签</span>
</body>
</html>

5.扩展选择器

1.选择所有元素选择器

	*{}

2.子选择器

  • 选择器之间用空格隔开;
  • 筛选出选择器1下的选择器2的元素
格式:选择器1  选择器2{}

3.父选择器

  • 筛选出选择器2的父元素选择器1
选择器1 > 选择器2{}

4.属性选择器

  • 根据元素名称、属性和属性值来筛选标签
元素名[属性名=“属性值”]{}

5.伪类选择器

  • 选择一些处于某种状态的元素
  • 语法: 元素:状态{}
 比如标签 <a> 具有的状态:
 		1.link  初始化状态
 		2.visited  被访问的状态
 		3.active   正在访问的状态
 		4.hover   鼠标悬浮状态

举例:

	a:link{
		color:pink;
	}
	超链接的初始状态为粉红色

在这里插入图片描述

5.CSS 属性

css属性有复合属性,指的是该属性可以有多个值分别控制不同类型的样式

1.字体 文本

在这里插入图片描述
在这里插入图片描述
font-size:字号大小
font-family:字体
font-weight:字体粗细
font-style:字体风格

2.背景

background:复合属性

在这里插入图片描述

3.边框

在这里插入图片描述边框有四条边;
border 是个复合属性,一次控制四条边

4.尺寸

  • 宽度 width
  • 高度 height
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>字体属性</title>

    <style>
        p{
            color:#FF0000;
            font-size:30px;
            text-align:center;
            line-height:100px;

            /*border*/
            border:1px solid red;
        }

        div{
            /*高度和宽度*/
            border:1px solid red;
            height:200px;
            width:200px;
        }

    </style>
</head>
<body>
        <p>阿斯顿</p>
        <div></div>
</body>
</html>

CSS 盒子模型

盒子模型的意思是 html页面将每一个元素看作一个盒子,在浏览器页面中占有大小和边框范围
在这里插入图片描述

  • margin:外边距 和外部盒子边框之间的距离
  • padding:内边距
  • float 浮动 可以让div标签不占一行;
    left:左浮动 跑到页面左边
    right 右浮动
    多个div 左浮动的话,就从左往右挨个挤在一起;

盒子有四条边,因此每个边的边距都可以单独设置;
在这里插入图片描述
设置外边距演示:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>盒子模型</title>


    <style>
        div{
            border : 1px red solid;
        }
         .div1{
             width:100px;
             height:100px;
             margin:50px;
         }

         .div2{
             width:200px;
             height:200px;

         }
    </style>
</head>
<body>


<div class="div2">
    <div class="div1"></div>
</div>
</body>
</html>

在这里插入图片描述
设置内边距演示:
默认情况下,设置内边距会影响该盒子的大小;
因此需要额外设置一个属性box-sizing: border-box;,才能使得盒子大小不变

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>盒子模型</title>


    <style>
        div{
            border : 1px red solid;
        }
         .div1{
             width:100px;
             height:100px;
             
         }

         .div2{
             width:200px;
             height:200px;
             padding:50px;

             box-sizing: border-box;

         }
    </style>
</head>
<body>


<div class="div2">
    <div class="div1"></div>
</div>
</body>
</html>

CSS 注册页面案例

(1)html部分

表单效果预览:
在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>注册页面</title>

</head>

<body>

<form action="#" method="post">
    <table border="1" align="center" width="500">
        <tr>
            <td><label for="username">用户名</label></td>
            <td><input type="text" id="username" name="username" placeholder="请输入账号"></td>
        </tr>

        <tr>
            <td><label for="password">密码</label></td>
            <td><input type="password" id="password" name="password" placeholder="请输入密码"></td>
        </tr>
        <tr>
            <td><label for="email">用户名</label></td>
            <td><input type="text" id="email" name="email" placeholder="请输入Email"></td>
        </tr>
        <tr>
            <td><label for="name">姓名</label></td>
            <td><input type="text" id="name" name="name" placeholder="请输入真实姓名"></td>
        </tr>
        <tr>
            <td><label for="phone">手机号</label></td>
            <td><input type="text" id="phone" name="phone" placeholder="请输入手机号"></td>
        </tr>
        <tr>
            <td>性别</td>
            <td><input type="radio" name="gender" value="male" checked="checked"><input type="radio" name="gender" value="female" ></td>
        </tr>

        <tr>
            <td><label for="birthday">出生日期</label></td>
            <td><input type="date" id="birthday" name="birthday"></td>
        </tr>


        <tr>
        <td><label for="code">验证码</label></td>
        <td><input type="text" id="code" name="code">
            <img src="../img/verify_code.jpg">
        </td>
        </tr>

        <tr>
            <!-- 合并单元格
                 单元格内容居中显示-->
            <td colspan="2" align="center">
                <input type="submit" value="注册">
            </td>
        </tr>
        
    </table>

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

(2)css修饰

效果预览
在这里插入图片描述
分析:
新手用户注册 div float left
表单:div float left
已有帐号: div float right

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值