前端三剑客 —— CSS ( 坐标问题 、定位问题和图片居中 )

前期内容回顾:

1.常见样式

text-shadow x轴 y轴 阴影的模糊程度 阴影的颜色

box-shadow

border-radio 实现圆角

margin 内边距

padding 外边距

background

2.特殊样式

媒体查询:@media

自定义字体:@font-face {

font-family:自定义名称;

src:url("字体的路径");

}

选择{

font-family:自定义名称;

}

转换:transform

移动:translate()

旋转:rotate()

缩放:scale()

翻转:skew()

综合:matrix()

过渡:transition 属性 时间 效果(默认值:ease) 延迟(默认值:0)

动画:@keyframes animate

@keyframes 自定义动画名称{

帧名称1{

属性名:值

}

帧名称2{

属性名:值

}

.....

}

选择器{

animate:自定义动画名称;

}

属性有:动画名称(animate-name)、动画时长(animate-duration)、延迟、次数(默认值:1)、方向、状态

渐变:background-image:linear-gradient(direction,color-stop1,color-stop2,...)

background-image:radius-gradient(direction,color-stop1,color-stop2,...)

多列:column-count

字体图标:

变量:定义变量使用 --名称:值; 使用变量: 属性名:var(--名称);

倒影: -webkit-box-reflect 了解

3.页面布局

table 布局 了解

div+css 盒子模型 左外边距 左边线 左内边距 内容 右内边距 右边线 右外边距

box-sizing:border-box;

坐标问题

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>坐标问题</title>

<style>

* {

margin: 0;

padding: 0;

}

div {

width: 130px;

height: 50px;

text-align: left;

padding-left: 10px;

}

div:nth-child(1) {

background: #DAE8FC;

position: absolute;

left: 100px;

top: 100px;

}

div:nth-child(2) {

background: #D5E8D4;

position: absolute;

top: 100px;

right: 100px;

}

div:nth-child(3) {

background: #FFE6CC;

position: absolute;

left: 100px;

bottom: 100px;

}

div:nth-child(4) {

background: #FFF2CC;

position: absolute;

right: 100px;

bottom: 100px;

}

</style>

</head>

<body>

<div>left: 100px;<br>top: 100px;</div>

<div>right: 100px;<br>top: 100px;</div>

<div>left: 100px;<br>bottom: 100px;</div>

<div>right: 100px;<br>bottom: 100px;</div>

</body>

</html>

定位问题

CSS 中定位有以下几种:

1. 相对定位

相对定位的参考位置:如果是第一个元素,那么它相对的就是 body(父元素) 的位置;如果是第二个元素开始,它相对的就是前一个元素的位置。

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>相对定位</title>

<style>

* {

margin: 0;

padding: 0;

}

.container {

width: 100%;

height: 400px;

background-color: #cccccc;

position: relative;

left: 30px;

top: 30px;

}

.box {

width: 100px;

height: 100px;

background-color: #317FE5;

position: relative; /* 相对定位 */

left: 10px;

top: 10px;

}

.haha {

width: 100px;

height: 100px;

background-color: #8B0000;

position: relative;

left: 10px;

top: 10px;

}

</style>

</head>

<body>

<div class="container">

<div class="box"></div>

<div class="haha"></div>

</div>

</body>

</html>

2. 绝对定位

绝对定位就已经脱离了文档流我们只需要给它固定 x轴坐标(left 或 right 值)以及 y 轴坐标(top 或 bottom 值)就可以了。

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>绝对定位</title>

<style>

* {

margin: 0;

padding: 0;

}

.container {

width: 800px;

height: 500px;

background-color: #eeeeee;

position: relative;

}

.box {

width: 150px;

height: 150px;

background-color: #317FE5;

position: absolute; /* 绝对定位 */

/*left: 500px;*/

/*top: 300px;*/

left: 500px;

bottom: 50px;

}

</style>

</head>

<body>

<div class="container">

<div class="box"></div>

</div>

</body>

</html>

3. 固定定位

固定定位固名思意就是它的位置不会随滚动条的变化而发生变化

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>固定定位</title>

<style>

* {

margin: 0;

padding: 0;

}

body {

height: 3000px;

}

.box {

width: 100%;

height: 60px;

background-color: #317FE5;

box-shadow: 5px 5px 10px #999999;

position: fixed;

left: 0;

top: 0;

}

.aside {

width: 60px;

height: 300px;

background: #8B0000;

position: fixed;

left: 0;

top: 100px;

}

.footer {

width: 100%;

height: 80px;

background: #eeeeee;

position: fixed;

left: 0;

bottom: 0;

}

</style>

</head>

<body>

<div class="box"></div>

<div class="aside"></div>

<div class="footer"></div>

</body>

</html>

图片居中

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>图片居中问题</title>

<style>

.box {

width: 200px;

height: 200px;

border: 1px solid #8B0000;

position: relative;

}

img {

width: 100px;

height: 100px;

position: absolute;

/*left: 25%;*/

/*top: 25%;*/

left: 50px;

top: 50px;

}

</style>

</head>

<body>

<div class="box">

<img src="image/logo.png">

</div>

</body>

</html>

相关推荐
顾北128 分钟前
AI对话应用接口开发全解析:同步接口+SSE流式+智能体+前端对接
前端·人工智能
摸鱼的春哥26 分钟前
春哥的Agent通关秘籍07:5分钟实现文件归类助手【实战】
前端·javascript·后端
念念不忘 必有回响29 分钟前
viepress:vue组件展示和源码功能
前端·javascript·vue.js
C澒34 分钟前
多场景多角色前端架构方案:基于页面协议化与模块标准化的通用能力沉淀
前端·架构·系统架构·前端框架
崔庆才丨静觅36 分钟前
稳定好用的 ADSL 拨号代理,就这家了!
前端
江湖有缘37 分钟前
Docker部署music-tag-web音乐标签编辑器
前端·docker·编辑器
恋猫de小郭2 小时前
Flutter Zero 是什么?它的出现有什么意义?为什么你需要了解下?
android·前端·flutter
崔庆才丨静觅8 小时前
hCaptcha 验证码图像识别 API 对接教程
前端
passerby60619 小时前
完成前端时间处理的另一块版图
前端·github·web components
掘了9 小时前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结