CSS 核心知识点精讲:基础概念、样式规则与布局技巧

文章目录

引言

CSS是网页设计的核心技术之一,用于控制HTML页面的外观和布局。HTML负责"结构"(页面里有什么),CSS负责"样式"(这些内容长什么样、放在哪),二者分离让网页开发更灵活、易维护。

一、CSS基本概念

1、核心定义

CSS是"层叠样式表",核心特点有三个:

  • 层叠性:多个样式规则作用于同一个元素时,优先级高的规则会覆盖优先级低的,优先级相同则"后来者居上";
  • 继承性:子元素会默认继承父元素的部分样式(如字体、文本颜色)。减少重复代码;
  • 样式化:脱离HTML标签的样式属性,通过CSS统一控制,实现"结构与样式分离"。

2、CSS的3种基础引入方式

CSS要作用于HTML,需通过以下方式引入:

引入方式 写法 适合场景
行内样式(内联样式) <标签 style="样式名:值;"> 临时给单个元素加样式,优先级最高(不推荐大量使用)
内部样式 <style>标签包裹CSS代码,写在HTML文档的<head>部分的<style>标签中 适合单个页面的使用(小型项目)
外部样式 <link href="css文件路径.css"> 多个页面共享样式,将CSS代码写在单独的.css文件中,然后在HTML中通过<link>标签引入(推荐使用)

3、代码实例

html 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>CSS引入方式</title>
    <!-- 2. 内嵌式:style标签写在head里 -->
    <style>
        p {
            color: blue; /* 所有p标签文字变蓝色 */
            font-size: 16px;
        }
    </style>
    <!-- 3. 外联式:引入外部css文件(需新建style.css文件) -->
    <link rel="stylesheet" href="style.css">
</head>
<body>
    <!-- 1. 行内式:style属性直接写在标签里 -->
    <h1 style="color: red; text-align: center;">我是行内样式</h1>
    <p>我是内嵌样式控制的段落</p>
    <div>我是外联样式控制的div(style.css里写div{font-weight: bold;})</div>
</body>
</html>

style.css文件内容:

css 复制代码
div {
    font-weight: bold; /* 加粗 */
    color: green;
}

运行效果如下:

二、CSS基础选择器

选择器是CSS的核心机制,它决定了哪些HTML元素会应用对应的样式规则。理解选择器是掌握CSS的关键。

1、基础选择器分类(4种核心)

选择器类型 语法 作用 示例
标签选择器 标签名{样式} 选中页面中所有该标签的元素 p { color: red; }(所有p标签变红)
类选择器 .类名{样式} 选中所有class="类名"的元素(可复用) .box { width: 100px; }(所有class=box的元素宽100px)
id选择器 #id名{样式} 选中唯一的id= "id名"的元素(一个页面id唯一) #title { font-size: 20px; }(id=title的元素字号为20px)
通配符选择器 *{样式} 选中页面所有元素(常用于清除默认样式) * { margin: 0; padding: 0;}(清除所有元素默认边距)

2、代码实例

html 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>基础选择器</title>
    <style>
        /* 1. 标签选择器:所有h2标签生效 */
        h2 {
            color: purple;
        }
        /* 2. 类选择器:所有class="content"的元素生效 */
        .content {
            font-size: 14px;
            line-height: 24px;
        }
        /* 3. id选择器:唯一id="header"的元素生效 */
        #header {
            text-align: center;
            background-color: #f5f5f5;
        }
        /* 4. 通配符选择器:清除所有元素默认边距 */
        * {
            margin: 0;
            padding: 0;
        }
    </style>
</head>
<body>
    <h2>我是标题(标签选择器控制)</h2>
    <p class="content">我是段落1(类选择器控制)</p>
    <div class="content">我是div(类选择器复用)</div>
    <div id="header">我是头部(id选择器控制)</div>
    
</body>
</html>

运行结果如下:

注意:

  • 类选择器可给多个元素加同一个类,是开发中最常用的选择器;
  • id选择器一个页面只能用一次,常用于选唯一元素(如页面头部、底部);
  • 通配符选择器会增加浏览器性能消耗,仅用于清除默认样式,不推荐大量使用。

三、CSS字体与文本样式

字体和文本样式是控制文字外观的核心,良好的字体设计能显著提升用户体验。常用属性见下表所示:

1、字体样式(控制字体本身)

属性 作用 取值示例
font-size 字号 12px、1em
font-family 字体 微软雅黑、宋体
font-weight 字体粗细 normal、bold、100-900(400=normal,700=bold)
font-style 字体样式 normal(正常)、italic(斜体)

2、文本样式(控制文字排版)

属性 作用 取值示例
color 文字颜色 red、#ff0000(十六进制,推荐)、rgb(255,0,0)
text-align 文本水平对齐 left(左)、center(中)、right(右)
text-decoration 文本装饰 none(清除下划线)、underline(下划线)、line-through(删除线)
line-height 行高 24px、1.5(倍数,推荐)
text-indent 首行缩进 2em(首行缩进2个字符,常用)

3、代码实例

html 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>字体与文本样式</title>
    <style> 
        .text-box {
            /* 字体样式 */
            font-size: 16px; /* 字号16px(网页默认字号) */
            font-family: "微软雅黑", Arial, sans-serif; /* 优先微软雅黑,没有则用Arial */
            font-weight: 500; /* 半加粗(400正常,700加粗) */
            font-style: normal; /* 取消斜体 */
            
            /* 文本样式 */
            color: #333; /* 深灰色(网页常用文字色) */
            line-height: 1.8; /* 行高1.8倍,阅读更舒适 */
            text-indent: 2em; /* 首行缩进2个字符 */
            text-align: left; /* 左对齐(默认) */
        }
        a {
            text-decoration: none; /* 清除a标签默认下划线 */
            color: #0088ff;
        }
        a:hover {
            text-decoration: underline; /* 鼠标悬停加下划线 */
        }
        .italic-text {
            font-style: italic; /* 斜体 */
            color: #ff6600;
        }
    </style>
</head>
<body>
    <div class="text-box">
        CSS(层叠样式表)是网页设计的核心技术,用于控制HTML页面的外观和布局。通过CSS,我们可以轻松修改文字的大小、颜色、行高,让页面更美观。
    </div>
    <p class="italic-text">这是斜体文字,颜色为橙色</p>
    <a href="#">这是一个链接(无下划线,悬停显示)</a>
</body>
</html>

运行结果如下:

四、CSS复合选择器

复合选择器是由两个或多个选择器组合而成,能更精准选中元素。

1、4种常用的复合选择器见下表

选择器类型 语法 作用 示例
后代选择器 选择器1 选择器2 {样式} 选中选择器1内部的所有选择器2元素 ul li { color: red;}(ul里的所有li变红)
子选择器 选择器1 > 选择器2 {样式} 选中选择器1直接子元素的选择器2(仅一级) div > p {font-weight: bold;}(div直接子元素p加粗)
并集选择器 选择器1, 选择器2 {样式} 同时选中选择器1和选择器2(批量设置样式) h1, h2, p {margin:10px 0;}(h1、h2、p都加上下边距)
伪类选择器 选择器: 伪类名 {样式} 选中元素的"特殊状态"(如a标签的hover) a:hover {color:red;}(鼠标悬停在a标签上变红)

2、代码实例

html 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>复合选择器</title>
    <style>
        /* 1. 后代选择器:nav里的所有a标签生效 */
        .nav a {
            color: #333;
            text-decoration: none;
            margin: 0 10px;
        }
        /* 2. 子选择器:box直接子元素p生效(仅一级) */
        .box > p {
            font-weight: bold;
            color: green;
        }
        /* 3. 并集选择器:h3、.desc、span同时生效 */
        h3, .desc, span {
            font-size: 14px;
            color: #666;
        }
        /* 4. 伪类选择器:a标签的4种状态(LVHA顺序) */
        a:link { color: #0088ff; } /* 未访问的链接 */
        a:visited { color: #999; } /* 已访问的链接 */
        a:hover { color: #ff6600; } /* 鼠标悬停 */
        a:active { color: #ff0000; } /* 鼠标点击时 */
    </style>
</head>
<body>
    <div class="nav">
        <a href="#">首页</a>
        <a href="#">产品</a>
        <div>
            <a href="#">子菜单</a> <!-- 后代选择器也会选中这个a -->
        </div>
    </div>
    
    <div class="box">
        <p>我是box的直接子元素p(加粗绿色)</p>
        <div>
            <p>我是box的孙子元素p(不生效)</p>
        </div>
    </div>
    
    <h3>标题3</h3>
    <p class="desc">描述文本</p>
    <span>span标签</span>
</body>
</html>

运行效果:

注意:

  • 后代选择器包含"所有层级"的子元素,子选择器仅包含"直接子元素";
  • a标签的伪类需按link -> visited -> hover ->active顺序写,否则hover可能不生效;
  • 并集选择器用逗号分隔,可批量减少重复代码。

五、CSS背景样式

背景样式用于控制元素的背景(颜色、图片、平铺、位置等),是页面美化的核心:

1、常用背景属性

属性 作用 取值示例
background-color 背景颜色 #f5f5f5、rgb(245,245,245)、transparent(透明)
background-image 背景图片 url("图片路径")
background-repeat 背景平铺 no-repeat(不平铺)、repeat-x(水平平铺)、repeat-y(垂直平铺)
background-position 背景位置 center center(居中)、left top(左上)、50px 30px(坐标)
background-size 背景尺寸 cover(覆盖元素)、contain(适应元素)、100px 80px(宽高)
复合属性 background 简写顺序:color image repeat position/size

2、代码实例

html 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>CSS背景样式</title>
    <style>
        .bg-box {
            width: 400px;
            height: 300px;
            /* 复合写法:背景色 + 背景图 + 不平铺 + 居中 + 覆盖 */
            background: #e58989 url("bg.jpg") no-repeat center center / cover;
            /* 拆分写法(先学拆分,再学复合):
            background-color: #e58989;
            background-image: url("bg.jpg");
            background-repeat: no-repeat;
            background-position: center center;
            background-size: cover;
            */
        }
        .simple-bg {
            width: 200px;
            height: 100px;
            background-color: #0088ff; /* 纯背景色 */
            color: white; /* 文字白色,对比明显 */
            text-align: center;
            line-height: 100px; /* 行高=高度,文字垂直居中 */
        }
    </style>
</head>
<body>
    <div class="simple-bg">纯背景色盒子</div>
    <div class="bg-box">背景图片盒子(需替换bg.jpg为实际图片路径)</div>
</body>
</html>

运行效果:

注意:

  • 背景图片路径:若CSS写在<style>里,路径相对于HTML文件;若写在外部CSS文件,路径相对于CSS文件;
  • background-size需写在background-position后,用/分隔(复合写法);
  • 背景图片默认会平铺,需用no-repeat取消平铺,不要忘记这一点。

六、CSS显示模式

HTML元素默认有"显示模式",决定元素是"独占一行"还是"并排显示",有3种核心模式需要掌握。

1、核心显示模式分类

显示模式 特点 代表元素
块级元素(bolck) 独占一行;宽度默认100%可设宽高 div、p、h1~h6、ul、li、dl
行内元素(inline) 并排显示;宽高由内容决定;不可设宽高 a、span、em、strong
行内块元素(inline-block) 并排显示;可设宽高 img、input、button

2、模式转换(核心:display属性)

通过display属性可转换元素的显示模式,这是布局的核心技巧:

  • display: block;:转为块级元素;
  • display: inline;:转为行内元素;
  • display: inline-block;:转为行内块元素;
  • display:none;:隐藏元素(不占位置)。

3、代码实例

html 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>显示模式</title>
    <style>
        /* 块级元素:div默认独占一行 */
        div {
            width: 100px;
            height: 100px;
            background-color: #ffcccc;
            margin: 5px;
        }
        /* 行内元素:span默认并排,不可设宽高 */
        span {
            width: 100px; /* 无效 */
            height: 100px; /* 无效 */
            background-color: #ccffcc;
            margin: 5px;
        }
        /* 行内块元素:img默认并排,可设宽高 */
        img {
            width: 50px;
            height: 50px;
            margin: 5px;
        }
        /* 模式转换:把a标签转为行内块(可设宽高,并排显示) */
        a {
            display: inline-block;
            width: 80px;
            height: 30px;
            background-color: #0088ff;
            color: white;
            text-decoration: none;
            text-align: center;
            line-height: 30px;
            margin: 5px;
        }
    </style>
</head>
<body>
    <div>块级元素1</div>
    <div>块级元素2(独占一行)</div>
    
    <span>行内元素1</span>
    <span>行内元素2(并排,宽高无效)</span>
    
    <img src="pic1.jpg" alt="图片1">
    <img src="pic2.jpg" alt="图片2">(行内块,可设宽高)
    
    <a href="#">链接1</a>
    <a href="#">链接2</a>(转为行内块,可设宽高)
</body>
</html>

运行效果:

注意:

  • 行内元素的margin只有左右生效,上下不会生效,特别要注意这一点;
  • 行内块元素之间会有"默认间隙"(因HTML换行),可通过父级元素设font-size: 0;解决;
  • display: none;隐藏元素后,元素不占页面空间(区别于visibility:hidden;)后者占空间。

七、CSS盒子模型

所有HTML元素都可以看作"盒子",盒子模型是控制元素尺寸和间距的核心,这一知识点非常重要,需要吃透。

1、盒子模型的4个组成部分

  • 内容区(content):元素的宽高;
  • 内边距(padding):内容区到边框的距离(内边距会撑大盒子);
  • 边框(border):盒子的边框(会撑大盒子);
  • 外边距(margin):盒子与其他盒子的距离(不会撑大盒子)。

2、核心属性

部分 属性 作用 简写
内容区 width/height 设置盒子内容的宽高 -
内边距 padding 上下左右内边距 padding:10px(四向)、padding:10px 20px;(上下/左右)、padding:10px 20px 30px 40px;(上右下左)
边框 border 边框宽度、样式、颜色 border: 1px solid #ccc(宽度 1px、实线、灰色)
外边距 margin 上下左右外边距 同padding简写规则

核心技巧:box-sizing

默认情况下,盒子的width/height仅代表"内容区",内边距和边框会撑大盒子,解决方法:

css 复制代码
box-sizing: border-box; /* 让width/height包含内容区+内边距+边框,盒子尺寸不被撑大 */

3、代码实例

html 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>盒子模型</title>
    <style>
        .box {
            width: 200px;
            height: 100px;
            /* 边框:1px实线红色 */
            border: 1px solid red;
            /* 内边距:上下10px,左右20px */
            padding: 10px 20px;
            /* 外边距:上下20px,左右居中(auto仅块级元素生效) */
            margin: 20px auto;
            /* 关键:让width/height包含padding和border,盒子总宽仍为200px */
            box-sizing: border-box;
            background-color: #f5f5f5;
        }
        .small-box {
            width: 100px;
            height: 50px;
            background-color: #0088ff;
            margin: 10px; /* 与父盒子内边距的距离 */
        }
    </style>
</head>
<body>
    <div class="box">
        <div class="small-box">子盒子</div>
        父盒子:宽200px(包含padding和border),内边距上下10px左右20px,边框1px,外边距上下20px左右居中
    </div>
</body>
</html>

运行效果:

注意:

  • 外边距合并:两个块级元素上下外边距相遇时,会取 "较大值"(如上面盒子 margin-bottom:20px,下面盒子 margin-top:10px,最终间距 20px);
  • 行内元素的 padding 上下会 "显示" 但不会 "撑大" 父元素;
  • margin: 0 auto;仅能让 "块级元素" 水平居中(需设置宽度)。

八、CSS浮动

浮动(float)是早期布局的核心,用于让块级元素 "并排显示",需掌握其核心用法和清除浮动的技巧:

1、浮动的核心作用

  • 让块级元素从 "独占一行" 变为 "并排显示";
  • 文字环绕图片。

2、浮动属性

css 复制代码
float: left; /* 向左浮动 */
float: right; /* 向右浮动 */
float: none; /* 取消浮动(默认) */

3、浮动的问题:父元素高度塌陷

浮动元素会 "脱离标准流",父元素若没有设置高度,会因子元素浮动而 "高度为 0"(塌陷),需 "清除浮动"。

清除浮动是方法详解见下面的代码:

html 复制代码
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<style type="text/css">
		#box{
			border: 1px solid green;
			/* 方案二的给父级元素手动添加一个高度 */
			/* height: 200px; */
			/* 方案三的溢出处理 */
			/* overflow: hidden; */
		}
		/* 方案四的给父级元素添加伪类样式 */
		#box:after{
			/* 清空内容 */
			content: '';
			/* 设置为块级元素 */
			display: block;
			/* 清除左右两侧的浮动 */
			clear: both;
		}
		.box1{
			width: 200px;
			height: 200px;
			border: 1px dashed #1C88CC;
			/* display: inline-block; */
			/* 设置浮动 */
			float: left;
		}
		.box2{
			width: 200px;
			height: 200px;
			border: 1px dashed darkred;
			/* 设置浮动 */
			float: right;
		}
		/* 方案一的清除左右两边的浮动 */
		#clear{
			/* 清除左右两边的浮动 */
			clear: both;
		}
	</style>
	<body>
		<div id="box">
			<div class="box1">我是第一个div</div>
			<div class="box2">我是第二个div</div>
		</div>
		<!-- 问题:同时设置了左右浮动,那么父级元素会塌陷 -->
		
		<!-- 解决方案一:给浮动元素最末尾加上一个空的div,并设置清除左右两边的浮动-->
		<!-- 不推荐:尽量减少不必要的空的代码<div></div> -->
		<!-- 
		<div id="box">
			<div class="box1">我是第一个div</div>
			<div class="box2">我是第二个div</div>
			<div id="clear"></div>
		</div>
		 -->
		 
		 <!-- 解决方案二:给父级元素手动添加一个高度 -->
		 <!-- 不推荐:有新的数据加入时,父级元素的高度不容易被实时控制,需要不断调整高度 -->
		 
		 <!-- 解决方案三:解决父级元素的溢出问题 -->
		 <!-- 不推荐:如果父级元素有下拉操作,无法支持下拉操作 -->
		 
		 <!-- 解决方案四:给父级元素添加一个after伪类样式,设置清空内容 块级元素 清空左右两侧的浮动 -->
		 <!-- 推荐 -->

	</body>
</html>

运行效果:

另一个有关浮动的案例

html 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>CSS浮动</title>
    <style>
        /* 清除浮动的伪元素(推荐写法,可复用) */
        .clearfix::after {
            content: "";
            display: block;
            clear: both;
            height: 0;
            visibility: hidden;
        }
        .container {
            width: 400px;
            border: 1px solid #ccc;
            margin: 20px auto;
        }
        .box1 {
            width: 100px;
            height: 100px;
            background-color: #ffcccc;
            float: left; /* 左浮动 */
        }
        .box2 {
            width: 100px;
            height: 100px;
            background-color: #ccffcc;
            float: left; /* 左浮动,与box1并排 */
        }
        /* 文字环绕图片(浮动经典场景) */
        .img-box {
            width: 300px;
            border: 1px solid #ccc;
            padding: 10px;
            margin: 0 auto;
        }
        .img-box img {
            width: 80px;
            height: 80px;
            float: left; /* 图片左浮动,文字环绕 */
            margin-right: 10px;
        }
    </style>
</head>
<body>
    <!-- 浮动布局:两个盒子并排 -->
    <div class="container clearfix">
        <div class="box1">浮动盒子1</div>
        <div class="box2">浮动盒子2</div>
    </div>
    
    <!-- 文字环绕图片 -->
    <div class="img-box">
        <img src="pic.jpg" alt="图片">
        这是文字环绕图片的效果,浮动的核心场景之一。图片左浮动后,文字会自动环绕在图片右侧,这是网页排版中非常常见的效果。
    </div>
</body>
</html>

运行效果(图片需要自行添加):

注意:

  • 浮动元素会脱离标准流,不再占用原位置;
  • 清除浮动的核心是 "让父元素感知到浮动子元素的高度";

九、CSS定位

定位(position)用于精准控制元素的位置(如固定导航、弹窗、角标),需掌握 4 种定位模式:

1、定位模式分类

定位模式 语法 特点 应用场景
静态定位(static) position: static; 默认模式,元素在标准流中 无(默认)
相对定位(relative) position: relative; 相对于自身原位置偏移;不脱离标准流 微调元素位置、作为绝对定位的父容器
绝对定位(absolute) position: absolute; 相对于最近的 "定位父容器" 偏移;脱离标准流 弹窗、角标、精准定位元素
固定定位(fixed) position: fixed; 相对于浏览器视口偏移;脱离标准流;滚动页面位置不变 固定导航、回到顶部按钮

注意:

  • 绝对定位的 "参考父容器":必须是最近的、非 static 的定位元素(relative/absolute/fixed);若没有,参考浏览器视口;
  • 定位元素的偏移属性(top/right/bottom/left)仅在非 static 模式下生效;
  • 定位元素可通过z-index控制层级(数值越大,层级越高,默认 auto)。

2、代码实例

html 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>CSS定位</title>
    <style>
        /* 父容器:相对定位,作为绝对定位的参考 */
        .parent {
            width: 300px;
            height: 200px;
            border: 1px solid #ccc;
            margin: 50px auto;
            position: relative; /* 相对定位,不脱离标准流 */
        }
        /* 相对定位:相对于自身原位置右移10px,下移10px */
        .relative-box {
            width: 100px;
            height: 50px;
            background-color: #ffcccc;
            position: relative;
            top: 10px;
            left: 10px;
        }
        /* 绝对定位:相对于父容器右上角定位 */
        .absolute-box {
            width: 80px;
            height: 40px;
            background-color: #ccffcc;
            position: absolute;
            top: 20px;
            right: 20px;
        }
        /* 固定定位:固定在浏览器右下角,滚动页面不变 */
        .fixed-box {
            width: 60px;
            height: 60px;
            background-color: #0088ff;
            color: white;
            text-align: center;
            line-height: 60px;
            position: fixed;
            bottom: 30px;
            right: 30px;
            border-radius: 50%; /* 圆形 */
        }
    </style>
</head>
<body>
    <div class="parent">
        <div class="relative-box">相对定位</div>
        <div class="absolute-box">绝对定位</div>
    </div>
    <div class="fixed-box">回到顶部</div>
    
    <!-- 加大量文本,测试固定定位滚动效果 -->
    <p>测试滚动...</p><p>测试滚动...</p><p>测试滚动...</p><p>测试滚动...</p>
    <p>测试滚动...</p><p>测试滚动...</p><p>测试滚动...</p><p>测试滚动...</p>
    <p>测试滚动...</p><p>测试滚动...</p><p>测试滚动...</p><p>测试滚动...</p>
    <p>测试滚动...</p><p>测试滚动...</p><p>测试滚动...</p><p>测试滚动...</p>
</body>
</html>

注意:

  • 绝对定位和固定定位会脱离标准流,不占用原位置;
  • 相对定位是 "占位置的偏移",绝对定位是 "不占位置的偏移";
  • 固定定位的元素不会随页面滚动而移动,适合做 "回到顶部""固定导航" 等功能。

结语

从 "结构与样式分离" 的核心逻辑,到选择器、盒子模型、浮动与定位的层层递进,CSS 的学习本质是理解 "如何精准控制页面的每一处细节"。它既是让网页从 "骨架" 变 "妆容" 的工具,更是前端开发者构建美观、易用界面的基础 ------ 掌握这些基础,你已能搭建出清晰、规整的网页;而后续的灵活组合与实践,会让你在 "样式设计" 与 "用户体验" 的平衡中,逐渐体会到前端开发的创造力与温度。

相关推荐
蜗牛攻城狮2 小时前
Vite 项目中 `node_modules/.vite/deps` 文件夹详解
前端·vite·构建工具
elangyipi1232 小时前
使用CSS Contain 优化你的页面(重排和重绘)
前端·css
小小前端要继续努力2 小时前
Islands Architecture(岛屿架构)
前端·edge
未来可期wlkq2 小时前
overflow跟input搭配使用,会导致内容区整体移动,overflow属性导致
javascript·css·vue.js
Liu.7742 小时前
vue使用lodop控件打印
前端·javascript·vue.js
OpenTiny社区2 小时前
TinySearchBox 综合搜索组件重磅更新:实现 Vue 2 和 Vue 3 双版本适配!
前端·javascript·vue.js
相闻秋歌2 小时前
四、Chrome调试工具
css·html5
GDAL2 小时前
HTML 实现登录状态记录 深入全面讲解教程
前端·html·登录验证
(づど)2 小时前
一套齐全的环境设置:nvm\node\nrm\pnpm
前端·笔记