当前位置: 首页 > news >正文

01-html css

1. 开发基础

1.1 含义

超文本标记语言

  1. 保存html标签文件是 .html
  2. html标签名放在尖括号
  3. 内容放到开始标签和结束标签的之间
<strong>加粗标签</strong>

1.2 基本骨架

<!doctype html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport"content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title>
</head>
<body>
<strong>加粗标签</strong>
</body>
</html>

1.3 标签关系

  1. 父子关系:换行缩进
  2. 兄弟关系:换行对齐

标签分为单表签和双标签

1.4 注释

即在页面不需要显示的部分

<!--这个是注释,不要进行显示-->
<strong>加粗标签</strong>

1.5 标题标签

h1-h6
1.文字加粗
2. 字号逐渐变小
3. 独占一行
4. 一般h1就使用一次

<h1>一级</h1>
<h2>二级</h2>
<h3>三级</h3>
<h4>四级</h4>
<h5>五级</h5>
<h6>六级</h6>

1.6 段落标签

段落标签:p

  1. 独占一行
  2. 段落之间有间隙
<p>段落标签</p>
<p>段落2</p>

1.7 换行和水平线标签

换行<br>
水平线<hr>

<br><hr>
</body>

1.8 文本格式化标签

突出重点:加粗、倾斜、下划线、删除线等

标签名标签名效果
strongb加粗
emi倾斜
insu下划线
dels删除线

左边的自带强调含义

1.9 图像标签

<img src="url地址" alt="图片无法显示时候显示的文字" title="鼠标悬停在图片显示的文字" width="纯数字没有单位" height="纯数字没有单位">

<属性名 = 属性值> 空格隔开

1.10 相对路径&绝对路径

  1. 相对路径

. 当前文件所在的文件夹
… 当前文件上一级文件夹
/ 进入某个文件夹里面

  1. 绝对路径

从盘符开始出发查找目标文件C:/XX/XXX
建议统称使用:/

1.11 超链接标签

<a href="链接地址" target="_blank">点击</a>

  1. 点击跳转到其他页面
  2. 不确定跳转使用在链接地址替换#
  3. target="_blank表示在新窗口打开

1.12 音频标签

  1. <audio src="音频地址" controls loop autoplay></audio>
  2. controls :显示音频控制面板
  3. loop: 循环播放
  4. autoplay:自动播放

1.13视频标签

<video src="视频地址" controls loop autoplay muted></video>
2. controls :显示音频控制面板
3. loop: 循环播放
4. autoplay:自动播放【前提是静音播放属性】
5. muted:静音播放

1.14 列表&表格&表单

1.14.1 列表

作用:布局内容排列整齐的区域
分类: 1. 无序列表 2. 有序列表 3. 定义列表

  • 无序列表
<!--无序列表-->
<ul><li>苹果</li><li>香蕉</li><li>西瓜</li>
</ul>
  • 有序列表
<!--有序列表-->
<ol><li>苹果</li><li>香蕉</li><li>西瓜</li>
</ol>
  • 定义列表
  1. dl是定义列表
  2. dt是定义列表的标题
  3. dd是定义列表的描述|详情
<!--定义列表-->
<dl><dt>水果</dt><dd>苹果</dd><dd>香蕉</dd><dd>西瓜</dd>
</dl>

1.14.2 表格

table 嵌套tr,tr嵌套th和tb

标签名说明
table表格
tr
th表头单元格
td内容单元格
<table border="1"><tr><th>1</th><th>2</th><th>3</th></tr><tr><td>4</td><td>5</td><td>6</td></tr>
</table>

合并单元格

  1. 跨行合并:rowspan
  2. 跨列合并: colspan
<table border="1"><tr><th>1</th><th>2</th><th>3</th></tr><tr><td rowspan="2">4</td><td colspan="2">5</td></tr><tr><td>7</td><td>8</td></tr>
</table>

1.14.3 表单

收集用户信息,登录、注册、搜索。。。
<input type="text" placeholder="请输入内容">

type说明
text文本
password密码
radio单选框
checkbox多选框
file文件

单选框 radio

  1. name:控件分组。同组只能选择一个
  2. checked:默认选中
<input type="radio" name="sex" value="1" checked><input type="radio" name="sex" value="2">

多文件上传 file
添加:multiple

<input type="file" multiple>

多选框 checkbox
默认选中 checked

<input type="checkbox" checked>选项1
<input type="checkbox">选项2
  • 下拉菜单:
<select><option>选项1</option><option>选项2</option><option selected>选项3</option>
</select>
  • 多文本域
<textarea></textarea>
  • 标签说明:label:增大点击范围

只包裹内容,不包裹表单控件
for属性值和标签id属性值一致
两种写法:

我是<input type="radio" name="sex" value="1" checked id="man"><label for="man"></label>
<label><input type="radio" name="sex" value="2"></label>
  • 按钮 button,和form标签进行配合使用
<button type="button">按钮</button>
type属性说明
submit提交数据到后台
reset表单控件清空
button普通按钮
<form action=""><textarea></textarea>我是<input type="radio" name="sex" value="1" checked id="man"><label for="man"></label><label><input type="radio" name="sex" value="2"></label><button type="reset">按钮</button>
</form>

1.15 布局标签

  • 独占一行div
  • 同一行 span

1.16 字符实体

显示说明代码
空格&nbsp;
<大于号&gt;
>小于号&lt;

2. css

2.1 含义

样式表语言,用来描述html文档的呈现,美化内容
写法规则:<style>选择器 {属性名:属性值;}</style>

<!doctype html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport"content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><style>p {color: red;}</style></head>
<body>
<p>段落标题</p>
</body>
</html>

2.2 引入方式

  • 内部样式:css代码在style标签中
  • 外部样式:css和html的代码分开放
<!doctype html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport"content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><link rel="stylesheet" href="css.css"> <!--外部样式表-->
</head>
<body>
<p>段落标题</p>
</body>
</html>
/* css代码*/
p {color: #40bcff;
}
  • 行内样式
<p style="color: antiquewhite">段落标题</p>

2.3 选择器

  • 标签选择器,即标签名, 标签名
  • id选择器,根据标签属性id,#id
  • 类选择器,根据类名某一类,.class
  • 通配符选择器,*
<!doctype html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport"content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><link rel="stylesheet" href="css.css"> <!--外部样式表--><style>p {color: red;}#p1 {color: blue;}.p2 {color: green;}.p3 {font: bold 20px/1.5 'Microsoft YaHei';}</style>
</head>
<body>
<p>段落标题</p>
<p id="p1">段落标题</p>
<p class="p2">段落标题</p>
<p class="p2 p3">段落标题</p>
</body>
</html>

2.4 宽度&高度&背景色

属性名作用
width宽度
height高度
background-color背景色
<!doctype html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport"content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title><style>#box1 {width: 100px;height: 100px;background-color: red;}#box2 {width: 200px;height: 200px;background-color: blue;}</style>
</head>
<body>
<div id="box1"></div>
<div id="box2"></div>
</body>
</html>

2.5 文字控制属性

描述属性
字体大小(加单位)font-size
字体粗细font-weight
字体倾斜font-style
行高(不加单位为自豪的倍数)line-height
字体font-family
字体符合属性font
文本缩进text-indent
文本对齐text-align
修饰线text-decoration
颜色color
  1. 单行文字垂直居中:行高属性等于盒子高度属性值
  2. 符合属性:
    /是否倾斜 是否加粗 字号/行高 字体/
    font: normal 100 80px/20px '楷体';
    3.文本缩进:text-indent
    • 属性值:
      • 数字 + px
      • 数字 + em (推荐的 1em = 当前标签的字号大小)
  3. text-align本质是控制内容的对齐方式,属性要设置给内容的父级
  4. text-decoration :
    • none:无
    • underline:下划线
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>p{font-size: 40px;/* 字体字号*/font-weight: 900;/* 字体加粗*/font-family: '楷体','宋体';/* 字体*/line-height: 40px;/* 行高*/font-style: italic;/* 文字倾斜,正常normal*/text-align: center;}#p1{/*是否倾斜 是否加粗 字号/行高 字体*/font: normal 100 80px/20px '楷体';text-indent: 2em;text-decoration: underline;}</style>
</head>
<body>
<p> 字体大小</p>
<p> 字体大小</p>
<p id="p1"> 字体大小</p>
</body>
</html>

2.6 复合选择器

  • 有两个或者多个基础选择器,通过不同的方式进行组合
  • 作用:更准确、搞笑的选择目标元素
    分类:
    - 后代选择器:父选择器 子选择器 {css属性} 父子选择器之间使用空格隔开,后代的相应标签都会发生改变
    - 子代选择器:父选择器>子选择器{},父选择器与子选择器之间用>隔开,只是子选择器发生改变
    - 并集选择器:为多组标签设置相同样式:标签,标签2,...{},使用逗号隔开
    - 交集选择器:满足多个条件的元素:选择器1选择器2{},直接连写 没有任何符号,遇见标签选择器放到最前边
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>#box span{color: red;}#box1 > #span1{color: red;}#s1,#s2{color: #b1f100;}</style>
</head>
<body>
<span>其他选择器
</span>
<div id="box"><span>子选择器</span><p><span>子的子选择器</span></p>
</div>
<div id="box1"><span id="span1">子选择器</span><p><span>子的子选择器</span></p>
</div>
<span id="s1">选择器1</span>
<span id="s2">选择器2</span>
</body>
</html>

2.7 伪类选择器

  1. 伪类表示元素的状态,选中元素某个状态设置样式
    鼠标悬停状态:选择器:hover{css属性},任何标签都可以设置伪类选择器的样式
  • 伪类超链接(拓展):设计四个状态时需要按照lvha的顺序书写
选择器作用
:link访问前
:visited访问后
:hover鼠标悬停
:active点击时(激活
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>a:link {color: #2ad017;}a:visited {color: #0223cb;}a:hover {color: red;}a:active {color: #00f3cb;}</style>
</head>
<body>
<a href="#">链接</a>
</body>
</html>

2.8 css 特性

  1. 继承性:子级默认继承父级的文字控制属性
  2. 层叠性
    • 相同的属性会覆盖:后面的属性覆盖前面的属性
    • 不同的属性会被叠加
  3. 优先级:选中标签的范围越大,优先级越低
    • !important>行内 > id >类> 标签

2.9 背景属性

描述属性
背景色background-color
背景图background-image
背景图平铺方式background-repeat
背景图位置background-position
背景图缩放background-size
背景图固定background-attachment
背景复合属性background
  1. background-repeat
    • no-repeat:不平铺
    • repeat:平铺
    • repeat-x: 水平方向平铺
    • repeat-y:垂直方向平铺
  2. background-attachment
    • 背景不会随着元素的内容进行滚动
    • fixed

2.10 显示模式

  • 块级元素
    • 独占一行
    • 默认宽度时父级的100%
    • 加宽高生效
  • 行内元素
    • 一行共存
    • 尺寸随内容
    • 宽高不显示
  • 行内块
    • 同行共存
    • 与内容相同尺寸
    • 宽高生效

2.10.1 显示模式转换

属性名:display

属性值效果
block块级
inline-block行内块
inline行内
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>div {width: 100px;height: 100px;}#box1 {background-color: red;display: inline-block;}#box2 {background-color: blue;display: inline-block;}</style>
</head>
<body>
<div id="box1">123
</div>
<div id="box2">345
</div>
</body>
</html>

2.11 结构伪类选择器

选择器说明
E:first-child查找第一个E元素
E:last-child查找最后一个E元素
E:nth-child(N)查找第N个E元素

查找规律的:偶数E:nth-child(2n)

2.12 伪元素选择器

作用:创建虚拟元素(伪元素),用来摆放装饰性的内容

选择器说明
E::before在E元素里面最前面添加伪元素
E::after在E元素里面最后面添加伪元素

必须设置“content:“””属性,没有内容也要引号留空
默认时行内显示
权重和选择器权重一致

2.13 盒子模型

属性名说明
width&height内容区域
padding内边距(可单独方向进行设置)
border边框线(可单独方向进行设置)
margin外边距(可单独方向进行设置)

盒子计算:内容尺寸 + border尺寸 + 内边距尺寸
计算方式:

  1. 手动减法:减掉border + padding尺寸
  2. 内减模式box-sizing:border-box

垂直排列的兄弟元素,margin会取最大值显示

塌陷问题:父子级的标签,子级的添加上外边距会产生塌陷问题,导致父级一起向下移动

  • 父级添加改换使用padding

行内元素内外垂直改变边距需要加入行高:line-height

2.14 清楚默认样式

*{padding: 0;margin: 0;}

2.15 盒子内容溢出

overflow

属性值说明
hidden溢出隐藏
scroll溢出滚动(溢出不溢出都会有滚动条)
auto溢出的时候有滚动条

2.16 盒子圆角

border-radius

div{border-radius: 10px 20px 40px 60px;}

2.17 盒子阴影

给盒子添加阴影效果:box-shadow
属性值:x轴偏移量(必须添加) y轴偏移量(必须添加) 模糊半径 扩散半径 颜色 内外阴影(inset内阴影 默认为外阴影)

box-shadow: 2px 2px 2px 2px #918f8f;

2.18 浮动

2.18.1 标准流

也叫文档流,指的是标签在也页面中默认的排布规则

2.18.2 基本使用

块级标签在一行使用
属性名:float
属性值:left:左对齐 right:右对齐

特点

  • 浮动后的盒子顶对齐
    浮动后的盒子具有行内块的特点
    浮动后的盒子托标,不占用标准流的位置
float: left;
2.18.3 清除浮动

问题:浮动元素会托标,如果父级灭有高度,子级无法撑开父级高度(导致布局混乱)
解决:清除浮动(清除浮动带来的影响)

  1. 额外标签:在父元素内容的最后添加一个块级元素,设置css属性clear:both
  2. 单伪元素法.父元素::after{content:";clear:both}
  3. 双伪元素法(推荐)
 .clearfix::before{content: "";/*防止塌陷*/display: table; }.clearfix::after{content: "";clear:both;}
  1. overflow:父元素添加:overflow:hidden

2.19 Flex 弹性布局

Flex布局也叫弹性布局,是浏览器提倡的布局模式,非常适合结构化布局,提供了强大的布局分布和对齐能理。

Flex模型不会产生浮动布局中的托标现象,布局网页更简单、更灵活

2.19.1 Flex组成

设置方式:在父元素设置display:flex,子元素可以自动挤压或拉伸
组成成分:

  1. 弹性容器
  2. 弹性盒子
  3. 主轴:默认在水平方向
  4. 侧轴/交叉轴:默认在垂直方向
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>#box1{display: flex;justify-content: space-between;width: 500px;height: 300px;background: #b1f100;border: 1px solid #000000;}#box2{height: 100px;background: #de1f1f;}#box3{/*height: 100px;*/background: #4ee87f;}#box4{height: 100px;background: #5ba6f5;}</style>
</head>
<body>
<div id="box1"><div id="box2">123</div><div id="box3">456</div><div id="box4">789</div>
</div>
</body>
</html>

2.19.2 Flex布局

描述属性
创建flex容器display:flex
主轴对齐方式justify-content
侧轴对齐方式align-items
某个弹性盒子侧轴对其方式align-selt
修改主轴方向flex-direction
弹性伸缩比flex
弹性盒子换行flex-wrap
行对齐方式align-content
  • justify-content
属性值说明
flex-start默认值,盒子开始的时候依次排序
flex-enf盒子从终点开始排序
center沿主轴居中排序
space-between盒子沿主轴均匀排列,空白均分在盒子之间
space-around盒子沿主轴均与排列,空白均分在两侧
space-evenly盒子沿主轴均分排列,弹性盒子与容器之间间距相等
  • 侧轴对齐方式
  1. align-items:当前弹性容器所有弹性盒子的侧轴对齐方式(给弹性容器控制)
  2. align-self:单独控制某个弹性合资的侧轴对齐方式(给弹性盒子设置)
属性值说明
stretch弹性盒子沿着侧轴线被拉伸值铺满容器(弹性盒子没有设置侧轴尺寸默认拉伸)
center拉伸盒子沿侧轴居中排列
flex-start弹性和子从起点开始依次排列
flex-end弹性盒子从终点开始依次排列
  • flex-direction:默认在水平 侧轴在垂直方向
属性值属性名
row水平方向,从左向右(默认)
column垂直方向,从向向下
row-reverse水平方向,从右向左
column-reverse垂直方向,从下向上
  • 弹性伸缩比:flex

控制弹性盒子的主轴方向的尺寸
属性值:整数数字,表示占用父级剩余尺寸的分数

  • 弹性换行flex-wrap

属性值:wrap:换行;nowrap:不换行(默认)

  • 行对齐方式:align-content
属性值说明
flex-start默认值,盒子开始的时候依次排序
flex-enf盒子从终点开始排序
center沿主轴居中排序
space-between盒子沿主轴均匀排列,空白均分在盒子之间
space-around盒子沿主轴均与排列,空白均分在两侧
space-evenly盒子沿主轴均分排列,弹性盒子与容器之间间距相等
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>#box1{display: flex;flex-wrap: wrap;/*justify-content: space-between;*/justify-content: space-evenly;align-items: center;align-content: space-between;;flex-direction: column;width: 500px;height: 300px;background: #b1f100;border: 1px solid #000000;}#box2{height: 100px;flex: 2;background: #de1f1f;}#box3{/*height: 100px;*/align-self: stretch;background: #4ee87f;flex: 1;}#box4{height: 100px;flex: 1;background: #5ba6f5;}</style>
</head>
<body>
<div id="box1"><div id="box2">123</div><div id="box3">456</div><div id="box4">456</div><div id="box4">456</div><div id="box4">456</div><div id="box4">456</div><div id="box4">456</div><div id="box4">456</div><div id="box4">789</div><div id="box4">789</div><div id="box4">789</div><div id="box4">789</div><div id="box4">789</div><div id="box4">789</div>
</div>
</body>
</html>

2.20 小案例

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>*{padding: 0;margin: 0;box-sizing: border-box;}li{display: flex;list-style: none;width: 500px;height: 88px;}li img{width: 80px;height: auto;padding: 4px;}li .box2{margin-left: 15px;}li .box2 h3{line-height: 40px;font-size: 20px;font-weight: 400;color: #333;}li .box2 p{font-size: 14px;color: #666;}.box1{margin: 50px auto;width: 1200px;height: 418px;border: 1px solid #ddd;border-radius: 20px;}.box1 ul{display: flex;flex-wrap: wrap;justify-content: space-between;align-content: space-between;padding: 90px 40px 90px 60px;height: 418px;}</style>
</head>
<body>
<div class="box1"><ul><li><div><img src="imgs/藏獒.png"></div><div class="box2"><h3>一键发布多端</h3><p>一键发布多端,省时省力</p></div></li><li><div><img src="imgs/藏獒.png"></div><div class="box2"><h3>一键发布多端</h3><p>一键发布多端,省时省力</p></div></li><li><div><img src="imgs/藏獒.png"></div><div class="box2"><h3>一键发布多端</h3><p>一键发布多端,省时省力</p></div></li><li><div><img src="imgs/藏獒.png"></div><div class="box2"><h3>一键发布多端</h3><p>一键发布多端,省时省力</p></div></li></ul>
</div></body>
</html>

文章转载自:

http://xTHSAtEm.qgmwt.cn
http://gu1qmyxw.qgmwt.cn
http://nzsx3XKG.qgmwt.cn
http://t1fsFbo9.qgmwt.cn
http://Q0eEKkNJ.qgmwt.cn
http://W2Hu5xrL.qgmwt.cn
http://j2xoczTJ.qgmwt.cn
http://CSWeFQvd.qgmwt.cn
http://BBcW6nEg.qgmwt.cn
http://9dfPEPnT.qgmwt.cn
http://v8SpJX1Z.qgmwt.cn
http://xVa0IVFv.qgmwt.cn
http://JFxqEzYm.qgmwt.cn
http://guWkc91Z.qgmwt.cn
http://QQ8FZGq7.qgmwt.cn
http://ATFXi9MK.qgmwt.cn
http://ys7DiCfZ.qgmwt.cn
http://Ea90J4uQ.qgmwt.cn
http://WzNl4XT7.qgmwt.cn
http://SvcGYmO4.qgmwt.cn
http://8GR5ldHq.qgmwt.cn
http://ZbtipTJt.qgmwt.cn
http://jXKPRdyz.qgmwt.cn
http://vgUuuhQp.qgmwt.cn
http://Qt3NapM6.qgmwt.cn
http://9Rc0OBiC.qgmwt.cn
http://ccF10G5F.qgmwt.cn
http://ZdThbcTO.qgmwt.cn
http://4Lb1rR93.qgmwt.cn
http://KJTpNcS9.qgmwt.cn
http://www.dtcms.com/a/362669.html

相关文章:

  • 【论文阅读】Jet-Nemotron: 高效语言模型与后神经网络架构搜索
  • 11.《简单的路由重分布基础知识探秘》
  • 解决完美主义的方法是,去追求不完美--辩证法
  • 《Stable Diffusion XL 1.0 实战:AI 绘画从 “能看” 到 “好看” 的升级技巧》
  • Android把源Bitmap中心缩放到固定宽高的尺寸,Kotlin
  • Kaia AMA 全回顾:如何让 Web3 无痕融入2.5 亿用户日常?9 月 7 日中国行揭秘!
  • WPF启动窗体的三种方式
  • 达梦:存储过程实现多个用户之间表的授权
  • 如何在本地环境中搭建 GitLab 服务器
  • 《IC验证必看|SV中Process控制》
  • ffmpeg 安装
  • 添加⽂件--场景⼆
  • JVM1.8与1.9的区别是什么?
  • 实验2-代理模式和观察者模式设计
  • 实验1-工厂方法和抽象工厂模式
  • C++编程语言:标准库:第37章——正则表达式(Bjarne Stroustrup)
  • 支付系统设计模式应用:从单例到观察者模式实践
  • 普通大学生的 Web3 实习怎么找?行业指南与实践技巧这里看
  • ArkUI核心功能组件使用(一)
  • ChatDOC工具测评:AI驱动PDF/Word文档处理,支持敏感内容隐私保护与表格提取分析
  • 一文吃透 deviceQuery:从安装到输出解读,彻底验证服务器 GPU 环境
  • Elasticsearch 核心知识与常见问题解析
  • 【学Python自动化】 7.1 Python 与 Rust 输入输出对比学习笔记
  • Dell 服务器更新Infiniband网卡固件操作
  • 大模型适配国产化服务器昇腾(300I DUO)
  • 信创服务器总死机原因及解决办法
  • 通过 FinalShell 访问服务器并运行 GUI 程序,提示 “Cannot connect to X server“ 的解决方法
  • 【技术教程】如何将文档编辑器集成至基于Node.js的网页应用程序中
  • Babylon 编辑器快捷键小记
  • 临时邮箱地址获取服务器邮件工作流程与实现