前端页面常见的布局分享

news2024/11/24 17:53:54

前端页面常见的布局分享

一、css盒模型

页面中的每一个元素都被看做一个矩形盒子。它包括:外边距、边框、内边距以及实际的内容。
网页设计中常听的属性名:内容(content)、填充(padding)、边框(border)、边界(margin),CSS盒子模型都具备这些属性。这些属性和我们日常生活中盒子的属性是一样一样的。内容就是盒子里面装的东西;而填充就是怕盒子里的东西损坏而添加的抗震材料;边框就是指盒子本身了;至于边界则说明盒子之间要留一定的空隙,保持通风。

1、W3C和IE盒子模型

标准盒模型,我们设置的width和height代表内容宽高
在这里插入图片描述

2、怪异盒子模型

怪异盒子模型也叫IE盒模型。他与标准盒子模型的区别就是:元素内容的width和height的范围不同。怪异盒子模型的width和height包括border和padding的宽度。
在这里插入图片描述

使用属性:box-sizing = border-box 来创建一个怪异盒模型。而box-sizing =
context-box是标准盒模型。怪异盒模型中的内容元素并不会把容器撑大,他会自动调节内容元素的大小以保持整体性。

div {
  box-sizing: border-box; // 开启怪异盒模型
  // box-sizing: content-box; // 默认盒模型
}

二、使用Ant Design Vue组件库来快速实现布局

Grid 栅格

概述
布局的栅格化系统,我们是基于行(row)和列(col)来定义信息区块的外部框架,以保证页面的每个区域能够稳健地排布起来。

基础用法:
在这里插入图片描述
从堆叠到水平排列。
使用单一的一组 Row 和 Col 栅格组件,就可以创建一个基本的栅格系统,所有列(Col)必须放在 Row 内。

<template>
  <div>
  // 第一行
    <a-row>
      <a-col :span="12">
        col-12
      </a-col>
      <a-col :span="12">
        col-12
      </a-col>
    </a-row>
    // 第二行
    <a-row>
      <a-col :span="8">
        col-8
      </a-col>
      <a-col :span="8">
        col-8
      </a-col>
      <a-col :span="8">
        col-8
      </a-col>
    </a-row>
  </div>
</template>

Flex 对齐:
在这里插入图片描述
响应式布局 :
参照 Bootstrap 的 响应式设计,预设六个响应尺寸:xs 、sm、 md、 lg、 xl、 xxl。

<template>
  <a-row>
    <a-col :xs="2" :sm="4" :md="6" :lg="8" :xl="10">
      Col
    </a-col>
    <a-col :xs="20" :sm="16" :md="12" :lg="8" :xl="4">
      Col
    </a-col>
    <a-col :xs="2" :sm="4" :md="6" :lg="8" :xl="10">
      Col
    </a-col>
  </a-row>
</template>

在需要适配不同大小屏幕的时候,使用栅格这个就很方便。

在这里插入图片描述

三、Layout 布局

蚂蚁的Layout 布局可以快速的实现最常见的一些布局:
1、
在这里插入图片描述

2、在这里插入图片描述

3、在这里插入图片描述

4、在这里插入图片描述
代码:

<template>
  <div id="components-layout-demo-basic">
    // 1、
    <a-layout>
      <a-layout-header>Header</a-layout-header>
      <a-layout-content>Content</a-layout-content>
      <a-layout-footer>Footer</a-layout-footer>
    </a-layout>
	// 2、
    <a-layout>
      <a-layout-header>Header</a-layout-header>
      <a-layout>
        <a-layout-sider>Sider</a-layout-sider>
        <a-layout-content>Content</a-layout-content>
      </a-layout>
      <a-layout-footer>Footer</a-layout-footer>
    </a-layout>
 	// 3、
    <a-layout>
      <a-layout-header>Header</a-layout-header>
      <a-layout>
        <a-layout-content>Content</a-layout-content>
        <a-layout-sider>Sider</a-layout-sider>
      </a-layout>
      <a-layout-footer>Footer</a-layout-footer>
    </a-layout>
	// 4、
    <a-layout>
      <a-layout-sider>Sider</a-layout-sider>
      <a-layout>
        <a-layout-header>Header</a-layout-header>
        <a-layout-content>Content</a-layout-content>
        <a-layout-footer>Footer</a-layout-footer>
      </a-layout>
    </a-layout>
  </div>
</template>

项目实践:
1、信飞土壤三期地下水驾驶舱布局:

使用第一种布局方式
上-中-下结构

在这里插入图片描述

2、信飞土壤指标计算器布局:

使用第二种布局方式
头部固定,左边宽度固定,右边自适应

在这里插入图片描述

四、Space 间距

避免组件紧贴在一起,拉开统一的空间。
适合行内元素的水平间距。
可以设置各种水平对齐方式。
在这里插入图片描述

<template>
  <div>
    <a-radio-group v-model="size">
      <a-radio value="small">Small</a-radio>
      <a-radio value="middle">Middle</a-radio>
      <a-radio value="large">Large</a-radio>
    </a-radio-group>
    <br />
    <br />
    <a-space :size="size">
      <a-button type="primary">Primary</a-button>
      <a-button>Default</a-button>
      <a-button type="dashed">Dashed</a-button>
      <a-button type="link">Link</a-button>
    </a-space>
  </div>
</template>
<script>
export default {
  data() {
    return {
      size: 'small',
    };
  },
};
</script>

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

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

相关文章

为什么说ChatGPT地位难保

似乎可以说&#xff0c;从ChatGPT推出以来&#xff0c;OpenAI一直是生成式人工智能的王者。但这种状况可能持续不了太久了。 自11月面世以来&#xff0c;OpenAI的聊天机器人颠覆了教学、写作、科技等多个领域[1]。它把世界上最大的科技公司如Meta和谷歌打了个措手不及&#x…

HJ31 单词倒排 题解

题目描述&#xff1a;单词倒排_牛客题霸_牛客网 (nowcoder.com) 对字符串中的所有单词进行倒排。 1、构成单词的字符只有26个大写或小写英文字母&#xff1b; 2、非构成单词的字符均视为单词间隔符&#xff1b; 3、要求倒排后的单词间隔符以一个空格表示&#xff1b;如果原字符…

如何拼接两个视频在一起?

如何拼接两个视频在一起&#xff1f;在度过一个美好周末的时候&#xff0c;我和朋友一起拍摄了两组视频&#xff0c;准备将两个视频合并成一个并发布到朋友圈。这个想法非常棒&#xff0c;但是我在第一步就遇到了麻烦&#xff1a;如何将这两个视频拼接在一起&#xff1f;这听起…

MyBatis分页思想和特殊字符

目录 一、MyBatis分页思想 1.1 使用场景 1.2 代码演示 二、MyBatis特殊字符 2.1代码演示 一、MyBatis分页思想 1.1 使用场景 Mybatis分页应用场景&#xff1a; MyBatis是一个Java持久层框架&#xff0c;它提供了一种将SQL查询和结果映射到Java对象的简单方式。分页是MyBa…

【LeetCode】面试题总结 消失的数字 最小k个数

1.消失的数字 两种思路 1.先升序排序&#xff0c;再遍历并且让后一项与前一项比较 2.转化为数学问题求等差数列前n项和 &#xff08;n的大小为数组的长度&#xff09;&#xff0c;将根据公式求得的应有的和数与数组中实际的和作差 import java.util.*; class Solution {public …

龙迅半导体,LT9611 MIPIDSI/CSI转HDMI,双端口MIPI接收,HDMI支持4K30HZ,免费提供完善的资料和选型推荐

龙迅LT9611 1.描述&#xff1a; LT9611 MIPIDSI/CSI到HDMI1.4桥具有双端口MIPID-PHY接收器前端配置&#xff0c;每个端口有4个数据通道&#xff0c;每个数据通道运行2Gbps&#xff0c;最大输入带宽为16Gbps。该桥提供了一个HDMI数据输出与可选的S/PDIF或8通道I2S串行音频输入…

Excel变天!微软把Python「塞」进去了,直接可搞机器学习

量子位 | 公众号 QbitAI 喜大普奔&#xff01; 微软把Python弄进Excel了&#xff01; 搭建一个机器学习天气预测模型&#xff0c;在Excel里即可实现。 而且无需任何设置&#xff0c;在单元格里输入“PY”&#xff0c;就能开搞。 数据清理、预测分析、可视化等等任务&#xf…

Harbor平台离线搭建

之前我有写过如何搭建harbor以及配置harbor&#xff0c;本文主要讲一下在不联网的情况下如何搭建Harbor平台。 环境&#xff1a;centos 7.9 docker版本&#xff1a;20.10.17 harbor版本&#xff1a;v1.10.10 一、离线安装docker 安装包官方地址&#xff1a;Index of linux/sta…

麒麟系统上安装 MySQL 8.0.24

我介绍一下在麒麟系统上安装 MySQL 8.0.24 的详细步骤&#xff0c;前提是您已经下载了 mysql-8.0.24-linux-glibc2.12-x86_64.tar.xz 安装包。其实安装很简单&#xff0c;但是有坑&#xff0c;而且问题非常严重&#xff01;由于麒麟系统相关文章博客较少&#xff0c;导致遇到了…

[MyBatis系列③]动态SQL

目录 1、简介 2、if标签 3、foreach标签 4、SQL抽取 ⭐MyBatis系列①&#xff1a;增删改查 ⭐MyBatis系列②&#xff1a;两种Dao开发方式 1、简介 开发中在MyBatis映射文件配置SQL语句&#xff0c;但是前面配置的都是比较简单的&#xff0c;不涉及稍复杂的业务场景。想要应…

守护进程(精灵进程)

目录 前言 1.如何理解前台进程和后台进程 2.守护进程的概念 3.为什么会存在守护进程 4.如何实现守护进程 5.测试 总结 前言 今天我们要介绍的是关于守护进程如何实现&#xff0c;可能有小伙伴第一次听到守护进程这个概念&#xff0c;感觉很懵&#xff0c;知道进程的概念&…

实验八 网卡驱动移植

【实验目的】 掌握 Linux 内核配置的基本方法&#xff0c;完成对网卡驱动、NFS 等相关功能的配置 【实验环境】 ubuntu 14.04 发行版FS4412 实验平台交叉编译工具&#xff1a;arm-none-linux-gnueabi- 【注意事项】 实验步骤中以“$”开头的命令表示在 ubuntu 环境下执行&…

基于labview设备状态监测和故障诊断(一)NI软硬件介绍

随着近代工业逐步向机电一体化方向发展。设备的自动化、智能化、大型化与复杂 化程度的不断提高&#xff0c;设备发生故障给企业所带来的经济损失越来越大&#xff0c;因此对设备的运 行状况进行实时监测和故障诊断势在必行。可以这样说&#xff0c;机械设备的工作状况监测和…

C++设计模式(工厂模式)

文章目录 前言一、什么是工厂模式二、简单工厂模式三、简单工厂模式优点和缺点四、简单工厂适用场景五、简单工厂类的使用总结 前言 本篇文章正式带大家来学习C中的设计模式&#xff0c;这篇文章主要带大家学习工厂模式。 一、什么是工厂模式 工厂模式&#xff08;Factory P…

洗涤护理门店小程序DIY制作教程

随着移动互联网的快速发展&#xff0c;小程序成为了各行各业推广和服务的新平台。对于干洗店来说&#xff0c;拥有一个专属的洗护小程序不仅可以提升用户体验&#xff0c;还能增加店铺的曝光度和销售额。那么&#xff0c;如何DIY制作一个干洗店洗护小程序呢&#xff1f; 首先&a…

在Ubuntu上安装和设置RabbitMQ服务器,轻松实现外部远程访问

文章目录 前言1.安装erlang 语言2.安装rabbitMQ3. 内网穿透3.1 安装cpolar内网穿透(支持一键自动安装脚本)3.2 创建HTTP隧道 4. 公网远程连接5.固定公网TCP地址5.1 保留一个固定的公网TCP端口地址5.2 配置固定公网TCP端口地址 前言 RabbitMQ是一个在 AMQP(高级消息队列协议)基…

【最全】MySQL知识点总结

先简单的大致了解一下&#xff0c;学习知识的目的是运用&#xff01;&#xff01;&#xff01; MySQL是什么&#xff1f; 一种关系型数据库管理系统&#xff0c;也就是说这是用来管理数据库的工具。 SQL相关命令 数据库相关 创建数据库&#xff1a;CREATE DATABASE 数据库名; …

12、Pinia 快速入门

1、什么是Pinia Pinia 是 Vue 的最新 状态管理工具 &#xff0c;是 Vuex 的 替代品 2、手动添加Pinia到Vue项目 在实际开发项目的时候,关于Pinia的配置,可以在项目创建时自动添加 现在我们初次学习&#xff0c;从零开始&#xff1a; 1.使用 Vite 创建一个空的 Vue3 项目 n…

【JUC系列-02】深入理解CAS底层原理和基本使用

JUC系列整体栏目 内容链接地址【一】深入理解JMM内存模型的底层实现原理https://zhenghuisheng.blog.csdn.net/article/details/132400429【二】深入理解CAS底层原理和基本使用https://blog.csdn.net/zhenghuishengq/article/details/132478786 深入理解cas的底层原理和基本使用…

Bootstrap的类container与类container-fluid有什么区别?

阅读本文前建议先阅读下面两篇博文&#xff1a; 怎么样通过Bootstrap已经编译好(压缩好)的源码去查看符合阅读习惯的源码【通过Source Map(源映射)文件实现】 在CSS中&#xff0c;盒模型中的padding、border、margin是什么意思&#xff1f; 以下是Bootstrap的类 container 的盒…