【Effective Web】常见的css居中方式

CSS居中方式

水平居中

text-align:center

适用范围:容器中都是行内元素
缺点:容器内所有元素都会居中,如果是文本描述需要左对齐,需要增加text-align:left覆盖

margin: 0 auto

适用范围:容器宽度固定。子元素宽度固定
缺点:对上下居中不适用

垂直居中

借助table-cell的垂直居中

给容器加上

{
    display: table-cell;
    vertical-align: middle;
}

缺点:margin属性失效

相对定位

父相子绝,原理是子元素相对父容器先向右向下偏移父容器的50%,再向左向上偏移子元素的50%
父容器position属性为relative,子元素加上以下样式

{
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
}

适用范围:父子元素宽度高度固定,且子元素只有一个
缺点:如果子元素是文本,可能会导致换行

flex布局

容器加上

{
    display: flex;
    align-items: center;
    justify-content: center;
}

行内元素的垂直居中

html如下:

    <div class="container">
      <img src="../img/Karen-Pape-1800x1200.webp" alt="" />
      <span>湖泊</span>
    </div>

改变元素的居中方式,设置行高与容器高度一致

    img,
    span {
      vertical-align: middle;
      line-height: 500px;
    }

在这里插入图片描述
缺点:需要改变行高

多行文本的垂直居中

给文本增加span,设置span为inline-block,容器本身height与line-height相等

.container {
    height: 500px;
    line-height: 500px;
}
  .container {
    span {
      display: inline-block;
      line-height: normal;
      vertical-align: middle;
      margin: 0 20px;
    }
  }

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Linux-黑马程序员

目录 一、前言二、初识Linux1、操作系统&#xff08;1&#xff09;硬件和软件&#xff08;2&#xff09;操作系统 2、Linux3、虚拟机4、FinalShell5、WSL6、虚拟机快照 三、Linux基础命令1、Linux的目录结构2、Linux命令入门&#xff08;1&#xff09;Linux命令基础格式&#x…

优雅谈大模型11:Mistral

大模型技术论文不断&#xff0c;每个月总会新增上千篇。本专栏精选论文重点解读&#xff0c;主题还是围绕着行业实践和工程量产。若在某个环节出现卡点&#xff0c;可以回到大模型必备腔调或者LLM背后的基础模型新阅读。而最新科技&#xff08;Mamba,xLSTM,KAN&#xff09;则提…

tcp协议机制的总结(可靠性,提高性能),基于tcp的应用层协议,用udp如何实现可靠传输

目录 总结 引入 可靠性 ​编辑 分析 三次握手 提高性能 其他 常见的基于tcp应用层协议 用udp实现可靠传输 总结 引入 为什么tcp要比udp复杂的多? 因为它既要保证可靠性,又要兼顾性能 可靠性 分析 其中,序列号不止用来排序,还可以用在重传时去重 确认应答是机制中的…

618有什么值得推荐?2024数码产品推荐,轻松拿捏选购!

随着618购物节即将来临&#xff0c;你是否已被琳琅满目的商品所吸引&#xff0c;难以抉择&#xff1f;团团特意为你筛选出一系列经过亲身试验的优质好物&#xff0c;旨在帮助你在这场购物盛宴中迅速锁定心仪之选。这些推荐不仅走在时尚的前沿&#xff0c;更能满足你日常生活的各…

AUTOSAR学习

文章目录 前言1. 什么是autosar&#xff1f;1.1 AP&#xff08;自适应平台autosar&#xff09;1.2 CP&#xff08;经典平台autosar)1.3 我的疑问 2. 为什么会有autosar3.autosar的架构3.1 CP的架构3.1.1 应用软件层3.1.2 运行时环境3.1.3 基础软件层 3.2 AP的架构 4. 参考资料 …

软件测试分类介绍

大家好&#xff0c;软件测试是确保软件质量的关键环节之一&#xff0c;通过对软件系统的各个方面进行测试&#xff0c;可以发现和解决潜在的问题&#xff0c;提高软件的稳定性、可靠性和用户满意度。在软件测试领域&#xff0c;根据测试的目的、方法和对象的不同&#xff0c;可…

LLM大模型的挑战与未来,挑战大但是机遇更大!

大模型必然是未来很长一段时间我们工作生活的一部分&#xff0c;而对于这样一个与我们生活高度同频互动的“大家伙”&#xff0c;除了性能、效率、成本等问题外&#xff0c;大规模语言模型的安全问题几乎是大模型所面对的所有挑战之中的重中之重&#xff0c;机器幻觉是大模型目…

揭秘!wifi贴项目市场到底怎么样??

在共享经济市场中WiFi贴这个看似微小的项目&#xff0c;正逐渐散发出它独特的光芒。它的出现既充满了希望又伴随着疑惑&#xff1a;WiFi贴项目的真正面貌究竟如何&#xff1f;让我们一同揭开这神秘面纱。 首先&#xff0c;我们必须理解WiFi贴的本质&#xff1a;它由微火的罗经理…

【每日刷题】Day63

【每日刷题】Day63 &#x1f955;个人主页&#xff1a;开敲&#x1f349; &#x1f525;所属专栏&#xff1a;每日刷题&#x1f34d; &#x1f33c;文章目录&#x1f33c; 1. 414. 第三大的数 - 力扣&#xff08;LeetCode&#xff09; 2. 2265. 统计值等于子树平均值的节点数…

农业领域科技查新点提炼方法附案例!

农业学科是人类通过改造和利用生物有机体(植物、动物、微生物等)及各种自然资源(光、热、水、土壤等)生产出人类需求的农产品的过程&#xff0c;人类在这一过程中所积累的科学原理、技术、工艺和技能&#xff0c;统称为农业科学技术&#xff0c;该领域具有研究范围广、综合性强…

音乐APP界面设计步骤详解

伴随着互联网的迅速发展&#xff0c;许多与因特网相关的职位应运而生&#xff0c;UI界面设计师是因特网的核心职位之一。UI界面设计已经渗透到我们生活的方方面面&#xff0c;包括网站、应用程序或其它数字平台上的按钮、菜单布局、配色方案和排版。很多人认为 UI界面设计只是关…

计算机图形学入门12:纹理映射

1.问题 如上图所示&#xff0c;前面的内容已经知道怎么对物体进行着色&#xff0c;在球和地板上出现了不同的颜色&#xff0c;也就是定义了不同的kd颜色系数&#xff0c;那么如何在物体不同位置定义不同属性呢&#xff1f; 2.纹理映射 2.1什么是纹理映射 如上图球的表面贴上一…

探索Jetpack Compose中的高效导航库:Voyager项目

探索Jetpack Compose中的高效导航库&#xff1a;Voyager项目 在Jetpack Compose中实现高效、可扩展的导航是每个开发者的追求。Voyager作为一个多平台导航库&#xff0c;不仅与Jetpack Compose无缝集成&#xff0c;还提供了一套务实的API&#xff0c;帮助开发者创建单活动应用…

tvm实战踩坑

今天玩了一下tvm的安装 我要安装v0.14.0的版本 所以按照官网的方法 https://tvm.apache.org/docs/install/from_source.html#python-package-installation git clone --recursive https://github.com/apache/tvm tvmgit checkout v0.14.0recursive是很重要的 这一步可以替换成…

显卡GPU、CUDA、Pytorch版本对应即下载安装

显存大于4G的建议使用GPU版本的pytorch&#xff0c;低于4G建议使用CPU版本pytorch&#xff0c;直接使用命令安装对应版本即可 GPU版本的pytorch的使用需要显卡支持&#xff0c;需要先安装CUDA&#xff0c;即需要完成以下安装 1.查看显卡GPU支持的CUDA版本&#xff08;最高&…

Flutter系列:关于ensureInitialized()

Flutter系列 关于ensureInitialized() - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite&#xff1a;http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article:https://blog.csdn.net/qq_28…

vue3 proxy对象转为原始对象

https://cn.vuejs.org/api/reactivity-advanced.html#toraw import { toRaw } from "vue";const foo {} const reactiveFoo reactive(foo)console.log(toRaw(reactiveFoo) foo) // true 人工智能学习网站 https://chat.xutongbao.top

18.9k star!一个高性能的嵌入式分析型数据库,主要用于数据分析和数据处理任务

大家好&#xff0c;今天给大家分享的是一个开源的面向列的关系数据库管理系统(RDBMS)。 DuckDB是一个嵌入式的分析型数据库&#xff0c;它提供了高性能的数据分析和数据处理能力。DuckDB的设计目标是为数据科学家、分析师和数据工程师提供一个快速、灵活且易于使用的数据分析工…

『SD』场景变换魔法:InstructP2P控制类型助你一键换天气

本文简介 InstructP2P 控制类型是 ControlNet 插件中的一个强大功能&#xff0c;InstructP2P 的主要能力是实现场景转换&#xff0c;风格迁移。 我将绫波丽的形象从她原本身着机甲、在夜空下站着的场景&#xff0c;转换到春意盎然的环境中,四周环绕着绽放的花朵和嫩绿的新叶。…

如何基于Excel文件图形化从零建表并导入数据(以MySQL和SQLynx为例)

目录 1. 准备Excel数据 2. 导入Excel数据 a. 登录SQLynx b. 导入Excel文件 3. 验证数据 4. 使用和管理表 5. 总结 在实际的业务过程中&#xff0c;我们经常会有很多数据存储在Excel中&#xff0c;但在Excel中的数据分析不如使用SQL和数据库方便&#xff0c;数据量大些的…