前端 HTML/CSS 核心知识点总结(定位、层级、透明、交互、布局)

在前端开发中,HTML 和 CSS 是构建页面结构与样式的基础,掌握核心的布局、交互、样式控制知识点能大幅提升页面开发效率。本文基于实际代码案例,总结定位、层级、透明效果、表单交互、轮播图、元素居中、Tab 栏切换等高频知识点,助力开发者夯实基础。

一、定位与层级(z-index)

定位是 CSS 布局的核心,z-index则用于控制定位元素的显示层级,二者结合可实现复杂的层叠布局。

1. 定位元素的层级规则

  • z-index仅对开启定位(position: relative/absolute/fixed/sticky) 的元素生效,未定位元素无法使用。
  • 层级值为正整数,值越高元素越优先显示;默认层级为 0,层级相同时,文档流中下方的元素会盖住上方元素。
  • 核心特性:父元素层级再高,也不会盖住其子元素(子元素始终在父元素的层叠上下文中)。

2. 代码示例

.box1 { width: 200px; height: 200px; background-color: red; z-index: 99; /* 无效,未开启定位 */ } .box2 { width: 200px; height: 200px; background-color: yellow; position: relative; /* 开启相对定位 */ left: 100px; top: -100px; z-index: 1; /* 层级1,低于box3 */ } .box3 { width: 200px; height: 200px; background-color: yellowgreen; position: relative; left: 200px; top: -200px; z-index: 2; /* 层级2,覆盖box2 */ } 

二、元素水平垂直居中(5 种实现方式)

元素居中是前端高频需求,以下是 5 种主流实现方案,适配不同场景:

1. 绝对定位 + margin: auto(四边偏移固定,margin 自动均分)

.box2 { width: 100px; height: 100px; background-color: orange; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; /* 自动均分四边间距,实现居中 */ } 

2. 绝对定位 + margin 回退(手动偏移 50%,再回退自身一半)

.box2 { position: absolute; left: 50%; top: 50%; margin-top: -50px; /* 自身高度的一半 */ margin-left: -50px; /* 自身宽度的一半 */ } 

3. 绝对定位 + transform 平移(自动回退自身一半,适配动态宽高)

.box2 { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); /* 平移自身50%,无需计算宽高 */ } 

4. 表格单元格(display: table-cell)

.box1 { width: 400px; height: 400px; display: table-cell; /* 转为单元格 */ vertical-align: middle; /* 垂直居中 */ text-align: center; /* 水平居中 */ } .box2 { display: inline-block; /* 子元素转为行内块,适配text-align */ } 

5. 弹性盒子(flex)(最推荐,简洁且适配性强)

.box1 { width: 400px; height: 400px; display: flex; justify-content: center; /* 主轴(水平)居中 */ align-items: center; /* 侧轴(垂直)居中 */ } 

三、透明效果(opacity /rgba/transparent)

设置元素透明有 3 种方式,核心区别在于 “是否继承”:

1. opacity(继承性,会影响子元素)

opacity取值 0-1,0 完全透明,1 不透明,会让元素内所有内容(文字、子元素)同步透明

p { background-color: red; opacity: 0.6; /* 背景和内部span都透明 */ } 

2. rgba(非继承,仅影响当前样式)

rgba在颜色值中设置透明度(第四个参数 0-1),仅作用于当前样式(如背景、文字),不影响子元素

p { background-color: rgba(255, 0, 0, 0.6); /* 背景透明,内部span不受影响 */ } 

3. transparent(完全透明,等价于 rgba (0,0,0,0))

.box1 { background-color: transparent; /* 背景完全透明 */ } 

核心区别总结

方式是否继承适用场景
opacity元素整体透明(含子元素)
rgba单独控制背景 / 文字透明
transparent快速设置完全透明(简化写法)

四、label 标签(提升表单交互性)

label标签为表单控件提供 “点击文本聚焦控件” 的交互优化,提升用户体验。

1. 核心用法

labelfor属性需与关联控件的id一致,点击label文本时,浏览器自动聚焦到对应控件。

<!-- 原始写法(无交互优化) --> 用户名: <input type="text"><br /> <!-- label优化写法 --> <label for="username">用户名:</label> <input type="text" /> <br /> <label for="password">密码:</label> <input type="password" /> 

五、Swiper 插件实现轮播图(快速开发)

Swiper 是前端常用轮播图插件,支持自动播放、分页、导航按钮等功能,步骤如下:

1. 引入资源(CSS + JS)

<link rel="stylesheet" href="./swiper1/swiper-bundle.min.css" /> <script src="./swiper1/swiper-bundle.min.js"></script> 

2. 构建 HTML 结构

<div> <div> <div><img src="./img/1.jpg" /></div> <div><img src="./img/2.jpg" /></div> </div> <!-- 分页器 --> <div></div> <!-- 导航按钮 --> <div></div> <div></div> </div> 

3. 样式定制(可选)

.swiper { width: 600px; height: 300px; } .swiper img { width: 100%; height: 100%; } /* 自定义导航按钮样式 */ .swiper-button-next, .swiper-button-prev{ color: #000; background-color: red; } /* 自定义分页器样式 */ .swiper-pagination-bullet{ width: 15px; height: 15px; background-color: #000; } 

4. 初始化 Swiper

var mySwiper = new Swiper(".swiper", { loop: true, // 循环播放 autoplay: { // 自动播放配置 delay: 3000, // 3秒切换一次 disableOnInteraction: true, // 交互后停止自动播放 }, pagination: { // 分页器配置 el: ".swiper-pagination", clickable: true, // 点击分页器切换 }, navigation: { // 导航按钮配置 nextEl: ".swiper-button-next", prevEl: ".swiper-button-prev", }, }); 

六、纯 CSS 实现 Tab 栏切换(无 JS)

利用input:checked伪类结合兄弟选择器,实现无 JS 的 Tab 栏切换,轻量化且高效。

1. 核心思路

  • 隐藏单选框(display: none),用label触发单选框选中状态。
  • 选中状态下,通过兄弟选择器(~/+)切换 Tab 内容的显示 / 隐藏。

2. 代码示例

<style> * { padding: 0; margin: 0; list-style: none; } .tabOuter { width: 400px; height: 400px; border: 10px solid orange; margin: 0 auto; position: relative; } .tabOuter input { display: none; /* 隐藏单选框 */ } .tabOuter label { background-color: aqua; width: 80px; height: 40px; float: left; border: 1px solid red; cursor: pointer; } .box1 { width: 400px; height: 300px; background-color: bisque; position: absolute; top: 42px; display: none; /* 默认隐藏Tab内容 */ } /* 选中单选框时,高亮对应label */ input:checked + label { background-color: blueviolet; } /* 选中单选框时,显示对应Tab内容 */ input:checked ~ .box1 { display: block; } </style> <ul> <li> <input type="radio" name="tab" checked /> <label for="tab1">选项一</label> <div>选项一内容</div> </li> <li> <input type="radio" name="tab" /> <label for="tab2">选项二</label> <div>选项二内容</div> </li> </ul> 

总结

本文梳理了前端开发中定位、居中、透明、表单交互、轮播图、Tab 切换等核心知识点,均基于实际代码案例,覆盖面试高频考点和业务开发常用场景。掌握这些基础知识点,能高效解决页面布局、交互样式等常见问题,为复杂项目开发筑牢基础。

Read more

使用GpuGeek高效完成LLaMA大模型微调:实践与心得分享

使用GpuGeek高效完成LLaMA大模型微调:实践与心得分享

使用GpuGeek高效完成LLaMA大模型微调:实践与心得分享 🌟嗨,我是LucianaiB! 🌍 总有人间一两风,填我十万八千梦。 🚀 路漫漫其修远兮,吾将上下而求索。 随着大模型的发展,越来越多的AI开发者开始尝试对开源模型进行微调,以适配垂直场景需求。但由于训练资源昂贵、部署过程繁琐,很多人仍止步于“想做”阶段。 本文将结合我在 GpuGeek 平台 上对 LLaMA 模型的微调实践,分享完整流程、调优经验以及平台带来的优势,帮助更多开发者低门槛开启大模型实践之路。 注册链接:https://gpugeek.com/login?invitedUserId=753279959&source=invited 一、选型与准备 选择模型:LLaMA-7B Meta发布的LLaMA系列模型在性能与资源消耗之间取得了不错的平衡,适合作为个人或中小团队的定制基础模型。我选择了 LLaMA-7B,结合LoRA方法进行微调。 选择平台:GpuGeek 为什么选GpuGeek? ✅ 显卡资源充足、节点丰富:支持多种高性能GPU,

Llama-3.2-3B部署优化:Ollama配置context window与token限制详解

Llama-3.2-3B部署优化:Ollama配置context window与token限制详解 如果你正在使用Ollama运行Llama-3.2-3B,可能会遇到这样的问题:对话聊着聊着,模型好像“失忆”了,不记得之前说了什么;或者当你输入一段稍长的文本时,直接被截断,只处理了前面一小部分。 这通常不是模型本身的问题,而是默认的上下文长度(context window)和token限制设置不够用。今天,我就来手把手教你如何调整这些关键参数,让你的Llama-3.2-3B真正“火力全开”,处理更长的对话和文档。 1. 核心概念:为什么需要调整Context Window和Token限制? 在深入操作之前,我们先花两分钟搞懂两个关键名词,这能帮你更好地理解为什么要调整,以及调整到什么程度合适。 1.1 什么是Context Window(上下文窗口)? 你可以把Context Window想象成模型的工作记忆区或“短期记忆”。它决定了模型在生成下一个词时,能“看到”并参考之前多长的文本。 * 默认情况:很多模型,包括Ollama默认拉取的Llama-3.2-3B,

论文AI率太高?八个方法教你30分钟降低AIGC,90%到2.4%亲测有效!

现在写论文的人越来越多,一写就会出现AI率过高的问题,特别是在研究生论文中,使用AI辅助写作已经非常普遍了,但是只要查重一下就会“凉了”,导师直接打回去说AI味太浓,没有自己的想法。 去年我自己也犯过同样的错误,初稿的时候AI率是66%,查重35%,导师说我全是机器的味道,那时候真的很难受。 经过一周的努力之后,一边手动修改一边测试各种工具,最后将AI率从90%以上降到了2.4%,顺利提交并通过了。 今天就来分享一下效果比较好的8个实用方法,在三十分钟内就可以把AI率降低到可以接受的程度,不管是论文、报告还是文案都可以轻松摆脱AI腔。 降AI率的核心是什么? 降AI不是简单的换词,而是去除机器的痕迹,保留主要信息。 很多人以为降低AI率就是用同义词替换,但是结果反而变得很奇怪,专业性也不强了。 其实是在打破AI所固有的模式:固定的句式、过于严谨的逻辑、表达含糊不清没有实质内容。 不用这些套路的话,AI率就会下降,学术上的严谨性也不会受到影响。 方法一:变换语态,长短句交替使用 AI经常使用被动语态以及较长的句子,如“实验数据经过分析后得到的结果”,显得很机械。短

Stable-Diffusion-3.5移动端方案:手机+云端GPU随时创作

Stable-Diffusion-3.5移动端方案:手机+云端GPU随时创作 你是不是也遇到过这样的情况?作为一名插画师,灵感突然来袭,正想在平板上画点草稿,却发现本地设备跑不动Stable Diffusion这类AI绘画工具——要么太卡,要么根本打不开。尤其是出差途中,手头只有轻薄平板或手机,想用AI辅助创作简直难上加难。 但现在,这个问题有了解决方案:通过“手机/平板 + 云端GPU”,你可以随时随地访问完整的Stable Diffusion 3.5环境,无需依赖本地算力,打开浏览器就能开始创作。 这正是我们今天要讲的核心——如何利用预置了SD 3.5的云镜像,在ZEEKLOG星图平台一键部署一个远程AI绘画服务,然后用你的移动设备(比如iPad、安卓平板甚至手机)通过浏览器连接上去,实现真正的“随地出图”。 这个方案特别适合: - 经常外出、需要快速记录灵感的插画师 - 想用平板做AI草图但电脑配置不够的创作者 - 希望团队共享同一个AI绘图环境的协作小组 整个过程不需要你会写代码,也不用折腾复杂的服务器配置。我亲自试过多次,从创建实例到手机端出图,