HTML+CSS3
本文最后更新于45 天前,其中的信息可能已经过时,如有错误请发送邮件到3449421627@qq.com

HTML

单标签

    1<br>2
    <hr>水平线标签

不需要包裹东西的都用单标签

文本格式化标签

image-20250223081450413

图像标签

图像默认是等比例缩放。

image-20250223082153830

标签链接

<a href="https://codecraft.xin">1   </a>

href这里一定要加协议,不能直接写网址,不然默认是file的协议。

属性 target=”_blank”新的标签页打开页面

如果在href里面写一个 # 那就不会跳转

音频

<audio src="https://www.runoob.com/try/demo_source/horse.ogg" controls>1 </audio>

controls(音频控制台)属性名和属性值一模一样,直接写属性名就可以了

loop (循环播放),也是属性名和属性值。

视频

<video autoplay muted loop controls src="https://www.w3school.com.cn/i/movie.ogg" > </video>

muted属性,静音播放

autoplay是自动播放,和muted配合使用的,单独使用,不行,被禁了。

无序列表

ul嵌套li,ul是无序列表,li是列表条目

ul标签里面只能写li标签,如果想写其他的就写在li标签里面

有序列表

ol是有序列表

li是列表条目

<ol>    
    <li>1</li>
    <li>1</li>
    <li>1</li>
    <li>1</li>
</ol>

定义列表

dl嵌套dt 和 dd

dl是定义列表总体 dl是定义列表标题 dd是列表详情

table标签

image-20250223084644832

th会加粗

在网页中,表格默认没有边框线,可以用border加

结构更清晰

image-20250223084947336

合并单元格

行合并,列合并

image-20250223085336518

如果有结构标签,那一定只能在结构标签里合并,不能跨结构标签合并

表单input

type属性值

image-20250223085726204

text和password的placeholder(属性)提示文字信息

radio属性

image-20250223090234323

当页面一打开就默认选中一个,就添加checked

type=file

<input type="file" multiple>//选多个文件,mutiple属性就是多选

chekbox多选框

默认选中:checked

下拉菜单

select嵌套option select是下拉菜单,option是选项

下拉菜单默认选中一个

就是option的属性

<section>
    <option selected>四川</option>
</section>

文本域标签

textarea可以允许输入多行文本,input就只有单行

文本框默认有个拖拽功能,可以自由拖动大小,后面要禁掉

label标签

增大标签范围

image-20250223091554177

按钮button

image-20250223091754513

div和span标签和字体实体

布局作用

div是独占一行的

span不是独占一行

div被称为大盒子

span是小盒子

字符实体

主要是有时候需要在页面显示标签,而不被解析,就要用字符实体

一般都是空格< >这三个符号,因为空格,无论有多少个空格,都只会显示一个

image-20250223092411747

CSS

写在head里面的title下面的style里面

引进方法

用link引入,然后href是代码放的路径

选择器

标签选择器

类选择器

一个标签可以使用多个类名 使用方法,class属性写多个类名,类名用空格隔开

id选择器

id选择器一般配合js使用的,很少用来设置css

定义id选择器

#red {

}

使用id选择器

<div id="red">

通配符选择器

就一个*,不需要调用,选择所有的标签,用相同的样式

* {

}

这个的用法是为了清除一些html默认样式,清除了我们自己调整就行了

一些属性

background-color背景颜色

字体修饰属性

image-20250223094256342

浏览器的默认字体大小为16px

font-weight 控制粗细

写400就是去掉加粗,700就是加粗

font-style作用:清除文字默认的倾斜效果,或者让文字倾斜的属性italic

line-height:设置多行文本的间距

属性:数字+px(行高)

数字(当前的font-size的倍数)

文字垂直居中的技巧。

将height-line的px设置跟div的height相同就行了

这个技巧只适用于单行文字。

如果有两行的话,会超出盒子div

div {
height:"100px",
line-weight:"100px"
}

字体族

font-family

font-family:楷体
image-20250223095712322

font复合属性

简写方式,一个属性放多个值,各个属性用空格隔开,必须按顺序写

font必须写字号和字体, 不然不生效

text-indent文字首航缩进

div {
text-indent:2em;
}

text-align控制文字水平对齐方式

属性值 left左对齐默认的,center是居中对其,right是右对齐

但是这个居中对其的本质是文字对其了,不是标签对其

如果想要图片居中,那就要img居中,那就要把img放进div里面然后在父级,div里面text-align居中

文字修饰线

属性名:text-decoration

none没有下划线

underline添加下划线

文字颜色

属性名:color

颜色写法

            color: rgb(0, 255, 1);
            color: rgba(0,0, 0,0.3);//a是透明度,在0-1之前(做半透明的方法)
            color:red
color: #RRGGBB;//16进制写颜色,如果两个都一样,可以简写为一个color: #RGB

调试方法

谷歌调试,黄色感叹号就是错误了

image-20250223102056094

复合选择器

定义:由两个或者多个基础选择器,通过不同的方式组合而成

作用:更准确,更高效的选择目标元素(标签)

后代选择器

后代选择器会选择所有后代,后代之前用空格隔开

div span {
	color:red,
}

子代选择器

父选择器 > 儿子选择器

并集选择器

选中多组标签设置相同的样式

div,
p,
span {
color:red,
}

交集选择器

p.box{
color:red,
}

两个选择器连在一起写,中间不要任何符合。并且如果遇到标签选择器,要放到最前面

伪类选择器

表示元素的状态,选中元素的某个状态设置样式

鼠标悬停状态:选择器:hover{css属性}

        a:hover {
            color: rgb(255, 0, 0);
        }
    </style>
</head>
<body>
<div><a href="" >123</a></div>

任何标签都可以选中鼠标悬停效果

image-20250223104110222

按顺序写,不然可能样式不生效

CSS特性

用于化简代码,定位问题,并解决问题

继承性

子级默认继承父级的文字控制属性

如果标签自己有样式,则用自己默认的样式,不继承

层叠性

特点:相同的属性会覆盖:后面的CSS属性覆盖前面的CSS属性

不同的属性会叠加:不同的CSS属性都生效

image-20250223105033561

优先级

也叫权重,当一个标签使用了多种选择器时,基于不同种类的选择器的匹配规则

谁的优先级高,样式生效

技巧:选择器选中的范围越大,那他的优先级越低

公式:

image-20250223105339019

!important是一个提权功能,优先级最高,慎用

优先级叠加计算规则

叠加计算:如果是复合选择器,则需要权重叠加计算

公式:每一级之前不存在进位

image-20250223110219448

Emment写法

写法:代码的简写方法,输入缩写的vscode会自动生成对应的代码

HTML

image-20250223111334948

CSS

大多都是直接写首字母

w500//就是width:500px
w500+h500+rgb//就是长宽高颜色都给你弄好了

背景图

属性名 :background-image (bgi)

属性值:url(背景图url)

background-image: url(./img/1.jpg);

背景图默认是平铺(复制)的效果,如果图片铺不满div,就复制铺满

image-20250223112340399

控制背景图不平铺

background-repeat:no-repect//不平铺,图片显示在盒子左上角
background-repeat:repect//这就是浏览器的默认效果
background-repeat:repect-x//水平方向平铺
background-repeat:repect-y//水平方向平铺

背景图位置

属性名:background-position(bgp)

属性值:水平方向位置 垂直方向位置

关键字:left right center top bottom

坐标(数字+px,正负都可以)

    background-position: right 100px;
    background-position: 20px 100px;
    background-position: right left;

提示

关键字取值方法写法,可以颠倒取值顺序

可以只写一个关键字,另一个方向默认居中;数字只写一个值表示水平方向,垂直方向为居中

背景图缩放

属性名background-size(bgz)

属性值:关键字,百分比,数字+单位

关键字:cover:等比例缩放背景图以完全覆盖背景区,可能背景图片部分看不见

contain:等比例缩放背景图,肯背景区部分留白

百分比:100%的时候,图片的 宽度和盒子宽度一样,图片的高度根据图片等比例缩放。

背景图固定

background-attachment(bga)

属性值:fixed

复合属性

复合写法

blackground

.div{
    width: 100px;
    height: 200px;
    background: red url(./第三天/images/2.webp) no-repeat center center/contain;
    }

显示模式

img默认是行内块,div默认是块级,span默认是行内

转换显示模式

属性名:display block(常用) incline-block(行内块)也常用

综合案例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .box {
            width: 200px;
            height: 400px;
            background:#3064bb;
        }
        .container {
            height: 80px;
            color:aliceblue;
            font-size: 20px;
            text-align: center;
            line-height: 80px;
        }
        .container:hover {
            background-color: #608dd9;
            font-style: italic;
        }
    </style>
</head>
<body>
<div class="box">
    <div class="container">html</div>
    <div class="container">CSS</div>
    <div class="container">JAVASCRIPT</div>
    <div class="container">Vue</div>
    <div class="container">React</div>
</div>
</body>
</html>

实现效果

image-20250223154215236

综合案例2

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .banner{
            height: 500px;background-color: #f3f3f4;
            background: url(springtime1.jpg);
            background-repeat: no-repeat;
            background-position: left bottom;
            text-align: right;
        }
        .banner h2{
            height: 100px;
            line-height: 100px;
            font-weight: 400;
        }
        .banner p{
            height: 20px;
            color: #333333;
            line-height: 20px;
        }
        .banner a{
            width: 125px;
            height: 40px;
            display: inline-block;
            text-align: center;
            line-height: 40px;
            text-decoration: none;
            background-color: #f06b1f;
            color: #f3f3f4;
        }
    </style>
</head>
<body>
    <div class="banner">
<h2>让创造产生价值</h2>
<p>我们希望小游戏平台可以提供无限的可能,让每个创作者都可以将他们的才华和创意传递给用户</p>
<a href="#">我要报名</a>
    </div>
</body>
</html>

实现效果

image-20250223160435286

结构伪类选择器

image-20250223160636032
image-20250223161114999

伪元素选择器

image-20250223161928096

像素大厨-工具

PxCook直接智能识别psd的文件了,特别方便,各种元素的像素点都能看到,甚至还能直接识别css

盒子模型

盒子模型的重要组成部分

内容区域 width height

内边距 padding(出现在内容和盒子的边缘之间)

边框线 border

外边距 margin(出现在盒子外面)

image-20250223163026310
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .box{
            width: 200px;
            height: 200px;
            background-color: pink;
            border: 
             solid #000;
             padding: 20px;
             margin: 50px;
        }
    </style>
</head>
<body>
<div class="box">盒子</div>
</body>
</html>
image-20250223163552048

边框线

属性名 border(bd)

属性名 边框线粗细 线条样式 颜色(不区分顺序)

常见线条的样式

solid 实线

dashed 虚线

dotted 点线

设置单方向的框线

内边距

写法

padding-方向名词:像素

或者直接写padding,那四个方向都有内边距

多值写法

padding是一个复合属性

image-20250223181917351

从上开始顺时针转圈,如果一边没数,那就看另一边的数

尺寸计算

盒子尺寸 = 内容尺寸 + border尺寸 + 内边距尺寸

有两种解决方法。

1.手动减法,增加了多少的padding和border那就减少对应的width和height

2.启动内减模式 ,设置box-sizing:border-box

        .box{
            width: 200px;
            height: 200px;
            background-color: pink;
            border: 1px dotted #000;
             padding: 100px;
             box-sizing: border-box;
        }

外边距

margin也是+四个方位像素,就是距离,差不多和padding

加margin不会撑大盒子的尺寸

版心居中

        .box{
             margin: 0 auto;
        }

上下外边距无所谓,在左右边距要设置auto这样就能自适应实现居中的效果

清除标签默认样式

比如默认的内外边距

* {
margin:0;
padding:0;
box-sizing:border-box;
}

去掉有序无序列表前面的原点

li {
list-style : none;
}

元素溢出

image-20250223184443533

外边距问题-合并和坍塌

垂直排列的两个盒子如果都有外边距,那不会让边距叠加,而是,取外边距最大的那个作为他们两个之间的外边距

塌陷问题

父亲级的标签,子级的添加,上外边距 会产生坍塌问题

现象:导致父级一起向下移动

这种的现象的解决方法

1.不使用margin而是使用padding

2.父级设置overflow:hidden

3.父级设置 border-top

第二点和第三点实现的 方法都是让浏览器认识到自己塌陷了出现了错误,然后自己又修正过来了,的原理

行内元素-内外边距的问题

行内元素添加margin和padding,无法改变元素垂直的位置,只能改变水平的位置

解决方法:给行内元素添加line-height可以改变垂直位置

圆角与盒子阴影

属性名:border-radius

属性值:数字+px/百分比

        .box{
            width: 200px;
            height: 200px;
            background-color: pink;
            border: 1px dotted #000;
             padding: 10px;
             box-sizing: border-box;
             margin: 0 auto;
             border-radius:20px ;/* 也可以写border-radius: 20px 20px 20px 20px;记忆,从左上角顺时针赋值,没有取值的角与对角取值相同 */
        }

常见的应用-正圆形状

给正方形盒子设置圆角属性值为宽度的一半/50%

 border-radius:50%

最大值是百分之50,超过了没有效果

胶囊形状

盒子本身是长方形才行

boder-radius设置为盒子高度的一半

阴影

属性名:box-shadow

属性值:X轴偏移量 Y轴偏移量 模糊半径 扩展半径 颜色 内外阴影

X轴偏移量 Y轴偏移量 必须书写

默认是外阴影,内阴影需要添加inset

        .box{
            width: 200px;
            height: 200px;
            background-color: pink;
            border: 1px dotted #000;
             padding: 10px;
             box-sizing: border-box;
             margin: 0 auto;
             border-radius:20px ;/* 也可以写border-radius: 20px 20px 20px 20px;记忆,从左上角顺时针赋值,没有取值的角与对角取值相同 */
             box-shadow: 2px 5px 10px 1px rgba(0,0,0,0.5) inset;
        }

综合案例–产品卡片

CSS书写顺序

1.盒子模型属性

2.文字样式

3.圆角、阴影等修饰属性

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }
        .box{
            width: 300px;
            height: 300px;
            background-color: white;
            border-radius: 5px;
            text-align: center;
            margin: 100px auto;
            padding-top:40px;
            box-shadow: 0px 0px 10px 0px #888888;
        }
        .box1 {
            width: 60px;
            height: 60px;
            border-radius: 50%;

            background: url(springtime1.jpg) no-repeat center;
            margin: 0px auto;
        }
        .box2 {
            font-size: 24px;
            font-weight: 700;
            margin: 0px auto;
            display: block;
            padding: 10px 0px;
        }
        .box3 {
            margin: 0px auto;
            display: block;
            padding: 10px 0px;
        }
        body {
            background-color: #f1f1f1;
        }
    </style>
</head>
<body>
<div class="box">
    <div class="box1"></div>
    <span class="box2">抖音直播SDK</span>
    <span class="box3">包含抖音直播看博功能</span>

</div>
</body>
</html>

实现效果

image-20250223195239711

浮动或flex布局

标准流:也叫文档流,指的是标签在页面上默认的排布规则,例如:快元素独占一行,行内元素可以一行显示多个

文末附加内容
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇