前端笔记-day06

2024-05-14 12:52
文章标签 笔记 前端 frontend day06

本文主要是介绍前端笔记-day06,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 01-浮动-基本使用
    • 02-浮动-产品布局
    • 03-浮动-清除浮动带来的影响
    • 04-清除浮动-额外标签法
    • 05-清除浮动-单伪元素法
    • 06-清除浮动-双伪元素法
      • 单伪元素和双伪元素CSS
    • 07-清除浮动-overflow
    • 08-flex布局-体验
    • 09-flex布局-组成
    • 10-flex布局-主轴对齐方式
    • 11-flex布局-侧轴对齐方式
    • 13-flex布局-修改主轴方向
    • 14-flex布局-弹性伸缩比
    • 15-flex布局-弹性换行
    • 16-flex布局-行对齐方式
    • 17-综合案例-抖音解决方案

01-浮动-基本使用

<!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>/* 特点:顶对齐,具备行内块显示模式特点 *//* 浮动的盒子会脱离标准流的控制,不再占用原来的位置 */.one{width: 100px;height: 100px;background-color: red;float: left;}.two{width: 200px;height: 200px;background-color: orange;/* float: left; *//* float: right; */}</style>
</head>
<body><div class="one"></div><div class="two"></div>
</body>
</html>

在这里插入图片描述

02-浮动-产品布局

Document
<div class="product"><div class="left"></div><div class="right"><ul><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li></ul></div>
</div>

在这里插入图片描述

03-浮动-清除浮动带来的影响

<!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>.top{margin: 10px auto;width: 1200px;/* height: 300px; */background-color: pink;}.left{float: left;width: 200px;height: 300px;background-color: skyblue;}.right{float: right;width: 950px;height: 300px;background-color: orange;}.button{height: 100px;background-color: red;}</style>
</head>
<body><div class="top"><div class="left"></div><div class="right"></div></div><div class="button"></div>
</body>
</html>

在这里插入图片描述

04-清除浮动-额外标签法

<!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>.top{margin: 10px auto;width: 1200px;/* height: 300px; */background-color: pink;}.left{float: left;width: 200px;height: 300px;background-color: skyblue;}.right{float: right;width: 950px;height: 300px;background-color: orange;}.button{height: 100px;background-color: red;}/* 方法一:额外标签法:在父元素内容的最后添加一个块级元素,设置CSS属性clear:both */.clearfix{clear: both;}</style>
</head>
<body><div class="top"><div class="left"></div><div class="right"></div><div class="clearfix"></div></div><div class="button"></div>
</body>
</html>

在这里插入图片描述

05-清除浮动-单伪元素法

<!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>.top{margin: 10px auto;width: 1200px;/* height: 300px; */background-color: pink;}.left{float: left;width: 200px;height: 300px;background-color: skyblue;}.right{float: right;width: 950px;height: 300px;background-color: orange;}.button{height: 100px;background-color: red;}/* 单伪元素法 *//* 伪元素要想生效必须配合content使用 */.clearfix::after{content: "";display: block;clear: both;}</style>
</head>
<body><!-- 要使用clearfix只需要在 --><div class="top clearfix"><div class="left"></div><div class="right"></div></div><div class="button"></div>
</body>
</html>

在这里插入图片描述

06-清除浮动-双伪元素法

<!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>.top{margin: 10px auto;width: 1200px;/* height: 300px; */background-color: pink;}.left{float: left;width: 200px;height: 300px;background-color: skyblue;}.right{float: right;width: 950px;height: 300px;background-color: orange;}.button{height: 100px;background-color: red;}/* 双伪元素法 */.clearfix::before,.clearfix::after{content: "";display: table;}.clearfix::after{clear: both;}</style>
</head>
<body><div class="top clearfix"><div class="left"></div><div class="right"></div></div><div class="button"></div>
</body>
</html>

在这里插入图片描述

单伪元素和双伪元素CSS

/* 单伪元素法 */
/* 伪元素要想生效必须配合content使用 */
.clearfix::after{content: "";display: block;clear: both;
}/* 双伪元素法 */
.clearfix::before,
.clearfix::after{content: "";display: table;
}
.clearfix::after{clear: both;
}

07-清除浮动-overflow

<!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>.top{margin: 10px auto;width: 1200px;/* height: 300px; */background-color: pink;/* 方法四:清除浮动:父元素添加CSS属性overflow:hidden */overflow: hidden;}.left{float: left;width: 200px;height: 300px;background-color: skyblue;}.right{float: right;width: 950px;height: 300px;background-color: orange;}.button{height: 100px;background-color: red;}</style>
</head>
<body><div class="top"><div class="left"></div><div class="right"></div></div><div class="button"></div>
</body>
</html>

在这里插入图片描述

08-flex布局-体验

<!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{display: flex;justify-content: space-between;/* height: 300px; */border: 1px solid #000;}.box div{/* float: left; *//* margin: 50px; */width: 200px;height: 100px;background-color: pink;}</style>
</head>
<body><div class="box"><div></div><div></div><div></div></div>
</body>
</html>

在这里插入图片描述

09-flex布局-组成

<!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是弹性容器 */.box{display: flex;height: 300px;border: 1px solid #000;}/* box 里面的div是弹性盒子:沿着主轴方向排列 */.box div{width: 200px;/* 拉伸:跟父级一样 *//* height: 100px; */background-color: pink;}/* 主轴:默认水平方向 *//* 侧轴:垂直方向 */</style>
</head>
<body><div class="box"><!-- 压缩:父级宽度不够了 --><div>1</div><div>2</div><div>3</div><div>1</div><div>2</div><div>3</div></div>
</body>
</html>

在这里插入图片描述

10-flex布局-主轴对齐方式

<!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{display: flex;/* 默认写不写没区别 *//* justify-content: flex-start; *//* 弹性盒子终点对齐 *//* justify-content: flex-end; *//* 居中 *//* justify-content: center; *//* 父级剩余部分分配成间距 *//* 弹性盒子之间的间距相等 */justify-content: space-between;/* 间距出现在弹性盒子两侧 *//* 视觉效果:弹性盒子之间的间距是两端间距的2*/justify-content: space-around;/* 各个间距都相等 */justify-content: space-evenly;height: 300px;border: 1px solid #000;}.box div{height: 100px;width: 200px;background-color: pink;}</style>
</head>
<body><div class="box"><div>1</div><div>2</div><div>3</div></div>
</body>
</html>

在这里插入图片描述

11-flex布局-侧轴对齐方式

<!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{display: flex;/* 弹性盒子在侧轴方向没有尺寸才能拉伸,也就是弹性盒子没有height属性 *//* align-items: stretch; *//* 弹性盒子排列方式 *//* align-items: center; *//* align-items: flex-start; *//* align-items: flex-end; */height: 300px;border: 1px solid #000;}/* 对弹性盒子进行设置 *//* 让第二个盒子侧轴居中对齐 */.box div:nth-child(2){align-self: center;}.box div{width: 200px;height: 100px;background-color: pink;}</style>
</head>
<body><div class="box"><div>1</div><div>2</div><div>3</div></div>
</body>
</html>

在这里插入图片描述

13-flex布局-修改主轴方向

<!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{display: flex;/* 修改主轴为垂直方向 */flex-direction: column;/* 主轴垂直居中 */justify-content: center;/* 侧轴居中,视觉效果:水平居中 */align-items: center;width: 150px;height: 120px;background-color: pink;}img{width: 32px;height: 32px;}</style>
</head>
<body><div class="box"><img src="./20.jpg" alt=""><span>媒体</span></div>
</body>
</html>

在这里插入图片描述

14-flex布局-弹性伸缩比

<!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{display: flex;/* 修改主轴方向 */flex-direction: column;height: 300px;border: 1px solid #000;}.box div{/* height: 100px; */background-color: pink;}.box div:nth-child(1){width: 200px;}/* flex属性是设置弹性盒子(占父级剩余份数)尺寸 */.box div:nth-child(2){flex: 1;}.box div:nth-child(3){flex: 2;}</style>
</head>
<body><div class="box"><div>1</div><div>2</div><div>3</div></div>
</body>
</html>

在这里插入图片描述

15-flex布局-弹性换行

<!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{display: flex;/* wrap 换行的意思 */flex-wrap: wrap;/* nowrap是默认值 不换行的意思 *//* flex-wrap: nowrap; */justify-content: space-between;height: 300px;border: 1px solid #000;}.box div{width: 200px;height: 100px;background-color: pink;}</style>
</head>
<body><div class="box"><div>1</div><div>2</div><div>3</div><div>4</div><div>5</div><div>6</div><div>7</div><div>8</div><div>9</div><div>10</div><div>11</div><div>12</div></div>
</body>
</html>

在这里插入图片描述

16-flex布局-行对齐方式

<!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{display: flex;flex-wrap: wrap;justify-content: space-between;/* 对一行显示的弹性盒子没有效果 *//* 调整对齐方式 *//* align-content: flex-start; *//* align-content: flex-end; *//* align-content: space-between; *//* align-content: space-around; *//* align-content: space-evenly; */height: 400px;border: 1px solid #000;}.box div{width: 200px;height: 100px;background-color: pink;}</style>
</head>
<body><div class="box"><div>1</div><div>2</div><div>3</div><div>4</div><div>5</div><div>6</div><div>7</div><div>8</div></div>
</body>
</html>

在这里插入图片描述

17-综合案例-抖音解决方案

<!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>/*这个案例的布局方式:用一个div嵌套了ul标签,这个ul标签包含了四个li标签四个li标签进行了换行,所以对ul标签设置了弹性换行由于div是完整嵌套ul标签的,所以对ul标签设置了四个方向的内边距由于li标签是靠四个角对齐的,所以对设置主轴对齐方式和行对齐方式*//* 清除默认样式 */*{margin: 0;padding: 0;box-sizing: border-box;}li{/* 去掉列表前面的小点点 */list-style: none;}.box li{display: flex;width: 500px;height: 88px;border: 1px solid #000;}/* 设置外面的大盒子 */.box{margin: 50px auto;width: 1200px;height: 418px;border: 1px solid #ddd;border-radius: 10px;}/* 设置ul标签 */.box ul{display: flex;flex-wrap: wrap;justify-content: space-between;align-content: space-between;padding: 90px 40px 90px 60px;height: 418px;}.box .pic img{height: 85px;width: 84px;}.box .pic {margin-right: 15px;}.box .text h4{line-height: 40px;font-size: 20px;font-weight: 400;color: #333;}.box .text p{font-size: 14px;color: #666;}</style>
</head>
<body><div class="box"><ul><li><div class="pic"><img src="./20.jpg" alt=""></div><div class="text"><h4>换句话说大比分击败</h4><p>sajhhbJbsjajjjjj内减</p></div></li><li><div class="pic"><img src="./20.jpg" alt=""></div><div class="text"><h4>换句话说大比分击败</h4><p>sajhhbJbsjajjjjj内减</p></div></li><li><div class="pic"><img src="./20.jpg" alt=""></div><div class="text"><h4>换句话说大比分击败</h4><p>sajhhbJbsjajjjjj内减</p></div></li><li><div class="pic"><img src="./20.jpg" alt=""></div><div class="text"><h4>换句话说大比分击败</h4><p>sajhhbJbsjajjjjj内减</p></div></li></ul></div>
</body>
</html>

在这里插入图片描述

这篇关于前端笔记-day06的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/988785

相关文章

HTML5中的Microdata与历史记录管理详解

《HTML5中的Microdata与历史记录管理详解》Microdata作为HTML5新增的一个特性,它允许开发者在HTML文档中添加更多的语义信息,以便于搜索引擎和浏览器更好地理解页面内容,本文将探... 目录html5中的Mijscrodata与历史记录管理背景简介html5中的Microdata使用M

html5的响应式布局的方法示例详解

《html5的响应式布局的方法示例详解》:本文主要介绍了HTML5中使用媒体查询和Flexbox进行响应式布局的方法,简要介绍了CSSGrid布局的基础知识和如何实现自动换行的网格布局,详细内容请阅读本文,希望能对你有所帮助... 一 使用媒体查询响应式布局        使用的参数@media这是常用的

HTML5表格语法格式详解

《HTML5表格语法格式详解》在HTML语法中,表格主要通过table、tr和td3个标签构成,本文通过实例代码讲解HTML5表格语法格式,感兴趣的朋友一起看看吧... 目录一、表格1.表格语法格式2.表格属性 3.例子二、不规则表格1.跨行2.跨列3.例子一、表格在html语法中,表格主要通过< tab

Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

《Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案》:本文主要介绍Vue3组件中getCurrentInstance()获取App实例,但是返回nu... 目录vue3组件中getCurrentInstajavascriptnce()获取App实例,但是返回n

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

前端CSS Grid 布局示例详解

《前端CSSGrid布局示例详解》CSSGrid是一种二维布局系统,可以同时控制行和列,相比Flex(一维布局),更适合用在整体页面布局或复杂模块结构中,:本文主要介绍前端CSSGri... 目录css Grid 布局详解(通俗易懂版)一、概述二、基础概念三、创建 Grid 容器四、定义网格行和列五、设置行

前端下载文件时如何后端返回的文件流一些常见方法

《前端下载文件时如何后端返回的文件流一些常见方法》:本文主要介绍前端下载文件时如何后端返回的文件流一些常见方法,包括使用Blob和URL.createObjectURL创建下载链接,以及处理带有C... 目录1. 使用 Blob 和 URL.createObjectURL 创建下载链接例子:使用 Blob

Vuex Actions多参数传递的解决方案

《VuexActions多参数传递的解决方案》在Vuex中,actions的设计默认只支持单个参数传递,这有时会限制我们的使用场景,下面我将详细介绍几种处理多参数传递的解决方案,从基础到高级,... 目录一、对象封装法(推荐)二、参数解构法三、柯里化函数法四、Payload 工厂函数五、TypeScript

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

Vue3使用router,params传参为空问题

《Vue3使用router,params传参为空问题》:本文主要介绍Vue3使用router,params传参为空问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录vue3使用China编程router,params传参为空1.使用query方式传参2.使用 Histo