【CSS】13.页面切图和布局实现

news2024/11/24 11:59:00

页面切图和布局实现

1. 浮动布局

1.1 页面布局

LOGO 部分

NAV 布局

LEFT - SIDEBAR:左边栏布局

CONTENT:内容布局

RIGHT - SIDEBAR:右边栏布局

在这里插入图片描述

1.2 流式布局

块的默认布局叫做流式布局

但流式布局并不能满足对页面的需要,需要左边栏、内容栏、右边栏,因此需要让块浮动

在这里插入图片描述

1.3 浮动布局

要想让块浮动起来需要设置块的Float属性

在这里插入图片描述

2. 定位布局

position:static、relative、absolute、fixed、sticky

2.1 static 静态定位

position的默认值,css的默认布局方式

在这里插入图片描述

2.2 relative 相对定位

确定元素的位置之后,通过 left、top、right、bottom 的属性来设置元素位置的偏移

在这里插入图片描述

2.3 absolute 绝对定位

会把元素移出文档流,会被别的元素挤占空间,但是会显示在挤占的元素的上方,通过 left、top、right、bottom 的属性来设置元素位置的偏移,而且 absolute 是以相对于包含它的元素来偏移

在这里插入图片描述

2.4 fixed 固定定位

以浏览器的可视窗口为参照点移动元素,当设置好 left、top、right、bottom 的属性偏移后,无论怎么滚动都不会移动

在这里插入图片描述

2.5 sticky 粘性定位

通过 left、top、right、bottom 的属性来设置元素位置的偏移,当滚轮滑到设置偏移位置时,就会固定,其他元素不变,随滚轮动

在这里插入图片描述

2.6 z-index

相重叠的盒子,设置方向的偏移

若两个相重叠的盒子不同父级盒子,则取决于父级盒子的方向的偏移

在这里插入图片描述

3. display&visibility

display: none; 隐藏(空间释放)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>display</title>
    <style>
        .div1 {
            width: 100px;
            height: 100px;
            background-color: khaki;
            display: none;
        }
    </style>
</head>
<body>
    <div class="div1"></div>
</body>
</html>

在这里插入图片描述

display: inlline;

​ 行级元素

​ 1 多个元素占一行

​ 2 不可以设置宽高

​ span a strong

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>display</title>
    <style>
        .div2 {
            width: 100px;
            height: 100px;
            background-color: khaki;
            display: inline;
        }
    </style>
</head>
<body>
    <div class="divs">
        <div class="div2">222</div>
        <div class="div2">333</div>
        <div class="div2">444</div>
    </div>
</body>
</html>

在这里插入图片描述

display: block;

​ 块级元素

​ 1 自己占一行

​ 2 可以设置宽高

​ div h1-h6 ul li table

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>display</title>
    <style>
        span {
            width: 100px;
            height: 100px;
            background-color: khaki;
            display: block;
        }
    </style>
</head>

<body>
    <div class="divs">
        <span>111</span>
        <span>222</span>
        <span>333</span>
    </div>
</body>

</html>

在这里插入图片描述

display: inline-block;

​ 行级块元素

​ 1 多个元素占一行

​ 2 可以设置宽高

​ img input button 既可以跟其他元素共占一行,又可以设置宽高

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>display</title>
    <style>
        input {
            width: 100px;
            height: 30px;
        }

        button {
            width: 100px;
            height: 50px;
        }
    </style>
</head>

<body>
    <div class="divs">
        <img src="../img/1.png" alt=""><img src="../img/2.png" alt=""><br><br>
        <input type="text" name="" id=""><input type="password" name="" id=""><br><br>
        <button>提交</button><button>注册</button>
    </div>
</body>

</html>

在这里插入图片描述

visibility: hidden;

​ 元素不可以见(但空间占着)

visibility: visible;

​ 元素可见

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>display</title>
    <style>
        .div3 {
            width: 100px;
            height: 100px;
            background-color: khaki;
            visibility: hidden;
        }
        .div4 {
            width: 100px;
            height: 100px;
            background-color: khaki;
            visibility: visible;
        }
    </style>
</head>

<body>
    <div class="divs">
        <div class="div3">3434</div>
        <div class="div4">3434</div>
    </div>
</body>

</html>

在这里插入图片描述

4. CSS 盒子模型(Box Model)

盒子模型有内容、内边距、边框、外边距

padding-top : 上内边距

padding-right : 右内边距

padding-bottom : 下内边距

padding-left : 左内边距

border-top : 上边框

border-right : 右边框

border-bottom : 下边框

border-left : 左边框

margin-top : 上外边距

margin-right : 右外边距

margin-bottom : 下外边距

margin-left : 上外边距

在这里插入图片描述

4.1 两种盒子模型类型

  • box-sizing: content-box (默认)
    • 元素的 width = content 的宽度
  • box-sizing: border-box
    • 元素的 width = content的宽度+ padding + border
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>box-sizing</title>
    <style>
        div {
            width: 200px;
            height: 200px;
            background-color: khaki;
            border: 5px solid red;
            margin: 10px;
            padding: 10px;
        }

        .div1 {
            /* 盒子默认值 */
            box-sizing: content-box;
        }

        .div2 {
            box-sizing: border-box;
            
        }
    </style>
</head>

<body>
    <div class="div1"></div>
    <br>
    <div class="div2"></div>
</body>

</html>

在这里插入图片描述

注意:这一切跟margin没有关系

4.2 行级元素的注意点

行级元素,margin-top和margin-bottom无效

于行级元素,padding-top和padding-bottom显示上有效果,但是对周围元素没有影响

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>行级元素</title>
    <style>
        span {
            margin-top: 100px;
            margin-bottom: 100px;
        }

        a {
            padding-top: 100px;
            padding-bottom: 100px;
        }

        div {
            width: 100px;
            height: 100px;
            background-color: khaki;
        }
    </style>
</head>
<body>
    <span>span</span>
    <a href="www.baidu.com">百度</a>
    <div>123</div>
</body>
</html>

在这里插入图片描述

4.3 盒子模型布局稳定性

建议优先级:width > padding > margin

建议布局顺序

在这里插入图片描述

GitHub代码
gitee代码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/425350.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

(学习日记)2023.4.10

写在前面&#xff1a; 由于时间的不足与学习的碎片化&#xff0c;写博客变得有些奢侈。 但是对于记录学习&#xff08;忘了以后能快速复习&#xff09;的渴望一天天变得强烈。 既然如此 不如以天为单位&#xff0c;以时间为顺序&#xff0c;仅仅将博客当做一个知识学习的目录&a…

杰林码图像增强算法——超分辨率、图像放大、轮廓和色彩强化算法(二)

一、前言 2023-03-23我发布了基于加权概率模型&#xff08;杰林码的理论模型&#xff09;的图像颜色增强和轮廓预测的应用方法。效果还不太明显&#xff0c;于是我又花了2周的时间进行了技术优化。下面仅提供了x86下的BMP和JPG对应的lib和dll&#xff0c;本文中的算法属于我国…

为什么CPU需要时钟

为什么CPU需要时钟 为什么CPU需要时钟这样一个概念? 什么是时钟脉冲&#xff0c;CPU为什么需要时钟&#xff0c;时钟信号是怎么产生的&#xff1f; 上面这个图的方波就是一个脉冲&#xff0c;类比于人类的脉搏跳动。一个脉冲称之为CPU的一个时钟信号&#xff0c;或者时钟脉冲…

Melis4.0[D1s]:6.mango-MQ-R基于Melis移植lvgl

文章目录1.下载lvgl源码到《D1s-Melis/ekernel/drivers/hal/test/disp2》目录1.1 修改Makefile1.2 快速测试Makefile修改是否有效2.移植刷新显示内存函数dummy_flush_cb3.创建一个定时器调用lvgl心跳lv_tick_inc()4.pack打包出错&#xff1a;5.设置开机启动6.源码下载上一篇文章…

《类和对象》(上)

本文主要对类和对象有一个初步的了解。 文章目录前言1、类的引入和定义2、类的访问限定符及封装2.1 访问限定符2.2 封装3 、类的作用域4 、类的实例化5 、类对象的模型5.1 类对象的大小5.2 类对象存储方式6、this 指针6.1 引子6.2 特性6.3 this指针的一个问题前言 C语言是面向过…

【微信小程序】-- 分包 - 独立分包 分包预下载(四十五)

&#x1f48c; 所属专栏&#xff1a;【微信小程序开发教程】 &#x1f600; 作  者&#xff1a;我是夜阑的狗&#x1f436; &#x1f680; 个人简介&#xff1a;一个正在努力学技术的CV工程师&#xff0c;专注基础和实战分享 &#xff0c;欢迎咨询&#xff01; &…

VRIK+Unity XR Interaction Toolkit 实现VR上半身的追踪(附带VRM模型导入Unity方法和手腕扭曲的解决方法)

文章目录&#x1f4d5;第一步&#xff1a;配置 OpenXR XR Interaction Toolkit 的开发环境&#x1f4d5;第二步&#xff1a;导入人物模型⭐VRM 模型导入 Unity 的方法&#x1f4d5;第三步&#xff1a;配置 VRIK⭐给模型加上 VRIK 组件⭐将模型的头部和手部的位置作为 VR 追踪目…

如何用ChatGPT做设计?激发设计师们的灵感

伴随着人工智能技术的迅猛发展&#xff0c;AI 工具在设计领域中的应用也越来越广泛。 当前&#xff0c;诸如ChatGPT等 AI 工具不仅可以进行自然语言处理&#xff0c;还可以应用于图像、视频等多种媒体领域&#xff0c;为设计师们提供了丰富的应用场景。 使用Chatgpt&#xff1…

开源了,我做了一个基于GPT的桌宠聊天系统:Pet-GPT!

前言 最近chatgpt的热度高居不下。作为一个深度成谜者&#xff0c;发现大部分开发者在调用GPT的时候要不就是基于Tauri做本地窗口外接网页&#xff0c;要不就是web直接展示。在沉思苦想一段时间后&#xff0c;才发现好像没啥什么人用pyqt做啊&#xff1f;特别是没人用桌面宠物…

浏览器:好用的浏览器插件,亲测好用

插件一、CSDN&#xff0c;推荐指数五颗星&#xff0c;强烈推荐 说明&#xff1a;超级好用的浏览器桌面&#xff0c;功能强大&#xff0c;操作简单&#xff0c;效率神器 插件二、AIX智能下载器 说明&#xff1a; 就这么简单的拖放即可实现保存图片&#xff0c;即使观看中的视频…

凌恩生物美文分享|好看又实用,多组学联合分析项目大揭秘!

基因层面的功能潜能有没有真的实现表达&#xff0c;表达量是高是低&#xff1f;下游合成的蛋白质行使了什么样得功能&#xff0c;代谢产物通过体循环到达靶器官&#xff0c;又是如何影响靶器官的工作运行的&#xff1f; 一个完整的生物学故事&#xff0c;中心法则贯穿始终&…

2023十大连锁店进销存软件排名(真实测评)

目前市面上很多连锁店进销存软件的排名都比较主观&#xff0c;结合自己实际工作过程中接触过的软件和在进销存软件多年的经验&#xff0c;给大家整理下2023十大连锁店进销存软件&#xff0c;希望能帮到正在选择连锁店进销存软件的老板&#xff01; 第一名&#xff1a;秦丝连锁联…

机器学习 | 实验三:逻辑回归和牛顿法

⭐ 对应笔记&#xff1a;牛顿法 &#x1f4da;描述 在本练习中&#xff0c;我们将使用牛顿法对分类问题实现逻辑回归。 &#x1f4da;数据 在本练习中&#xff0c;假设一所高中有一个数据集&#xff0c;该数据集表示40名被大学录取的学生和40名未被录取的学生。 每个(x(i),y…

pandas笔记:offset.DateOffset

进行date的偏移 class pandas.tseries.offsets.DateOffset 1 参数说明 n 偏移量表示的时间段数。 如果没有指定时间模式&#xff0c;则默认为n天。 normalize是否将DateOffset偏移的结果向下舍入到前一天午夜**kwds 添加到偏移量的时间参数 年&#xff08;years&#xff09…

软考软件设计师 数据库知识点笔记

概念数据模型 了解即可 结构数据模型 数据库的三级模式结构 外模式对应视图 概念模式对应的是数据库管理系统里面的基本表 内模式对应的是数据库里的一些存储文件 上图可直接背下面概念 两级映像 有内模式跟物理独立性相关&#xff0c;有外模式跟逻辑独立性相关 两级映像其…

MySQL主从复制原理剖析与应用实践

vivo 互联网服务器团队- Shang Yongxing MySQL Replication&#xff08;主从复制&#xff09;是指数据变化可以从一个MySQL Server被复制到另一个或多个MySQL Server上&#xff0c;通过复制的功能&#xff0c;可以在单点服务的基础上扩充数据库的高可用性、可扩展性等。 一、背…

人工智能AI简史

AI人工智能简史 最近学习AI&#xff0c;顺便整理了一份AI人工智能简史&#xff0c;大家参考&#xff1a; 1951年 第一台神经网络机&#xff0c;称为SNARC&#xff1b;1956年 达特茅斯学院会议&#xff0c;正式确立了人工智能的研究领域&#xff1b;1966年 MIT发明ELIZA人机心…

【Java|golang】2409. 统计共同度过的日子数

Alice 和 Bob 计划分别去罗马开会。 给你四个字符串 arriveAlice &#xff0c;leaveAlice &#xff0c;arriveBob 和 leaveBob 。Alice 会在日期 arriveAlice 到 leaveAlice 之间在城市里&#xff08;日期为闭区间&#xff09;&#xff0c;而 Bob 在日期 arriveBob 到 leaveBo…

数字孪生灌区信息化-灌区现代化建设

平台概述 柳林数字孪生灌区信息化平台以物理灌区为单元、时空数据为底座、数学模型为核心、水利知识为驱动&#xff0c;对物理灌区全要素和建设运行全过程进行数字映射、智能模拟、前瞻预演&#xff0c;与物理灌区同步仿真运行、虚实交互、迭代优化&#xff0c;实现对物理灌区…

企业不会用、不敢用AIGC+ 服务怎么办,不妨试一下它?

自从去年ChatGPT上线后,国内外与AIGC相关的话题就一直备受关注。AIGC是指人工智能通用语言模型(Artificial General Language Model),是一种具有极高自然语言理解能力的人工智能模型,其通过大规模语料库训练,能够像人类一样自然地理解和生成语言。ChatGPT正是基于AIGC技术开发的…