css设置按钮竖直方向居中_如何借助伪元素实现垂直居中?

点击右上方红色按钮关注“小郑搞码事”,每天都能学到知识,搞懂一个问题!

今天给大家讲一种实现垂直居中的方法:伪元素法(::before/::after)

一、vertical-align实现了什么?

先来看一下vertical-align实现了什么,在CSS中这个属性是垂直置中,指在元素中所有元素位置相互置中(中线对齐),并不是相对于外框高度垂直居中。下面举个例子来看一下:

6200cb46b19f95564ac2fddf8d1c0c51.png

样式文件

3219dc9bfb294396a1470463fe66692e.png

DOM结构

上面这段代码的效果是:

fb32867d2cb6cbd0964c487064659c3a.png

所以vertical-align=middle所有元素相互是居中对齐的,这里这些元素并未在整个外框里垂直居中。基于此,设想vertical-align=middle如果有一个元素的高度是100%的话,是不是就真正在外框里垂直居中了。然而,直接加一个DOM放在其中又显得比较奇怪,所以,伪元素该派上用场了。往下看

二、伪元素介入

先加上伪元素的代码:

257baa8f8f6f07b28978e99602848f85.png

上面代码一定要注意display:inline-block,高度100%,为了不占空间,宽度设置0。效果如下

ba726cb71deec6358cdf1db32e658ed7.png

总结

关于垂直居中的方法有很多,伪元素法只是其中一种,它利用了行内元素相互之间的设置vertical-align=middle达到中线对齐的原理。伪元素成为其中一个不可见的元素,起着关键性作用。

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

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

相关文章

九年级数学解方程50道_【初中数学】北师大版九年级上册数学知识点总结

这里整理了一份【初中数学】北师大版九年级上册数学知识点总结其他版本的总结后面会更新资料有点多,建议先收藏完整版资料下载可搜【初中复习资料】回复【399】(资料整理不易,可以收藏-转发支持一下吗)资料有点多,建议…

小米9私密相册怎么找_“拼藏搜”,手机相册还能这么玩

发朋友圈九图不够看?私密照片不想被轻易看到?照片太多找半天太麻烦?别着急,学会这几招,成为“制片人”。第一招:“拼”成为“制片人”的第一步,当然是制作照片了!拼出有feel的图就靠…

idea python工程zip打包_【面试划重点】-- Python常见知识点

分享工作中遇到的python知识点,估计很多人没太留意过这个知识点,但是对巩固很多基本语法和一些python中一些有用的方法很有帮助,工作中的问题我简化说下,大概就是下面需求:有3个python列表:分别是年龄&…

如何固定最小宽度_如何使用更新的HTML和CSS函数创建响应式设计

除了使用媒体查询和现代css布局(如flexbox和grid)来创建响应式网站外,我们还可以做好某些被忽视的事情来制作响应式网站。在本文中,我们将探讨许多可用的工具(围绕html和css),从响应图像到相对较新的CSS函数,无论我们是否使用媒体…

如何将文件二进制传输至aix服务器,有什么办法把文件从WINDOWS系统中传到AIX中?...

有什么办法把文件从WINDOWS系统中传到AIX中?(2011-12-21 04:19:38)标签:杂谈有什么办法把文件从WINDOWS系统中传到AIX中?我有一台笔记本可以远程登陆170和F85,两台都是AIXV5.2,原来ML是04,想升级&#xff0…

小米手机硬改技术_小米11手机爆料:首发骁龙875 或采用屏下摄像头技术

12月1日高通应该就要公布骁龙875处理器,而对于这颗2021年的旗舰芯片,小米手机必然要抢首发,这也是他们一贯的传统。据最新消息称,小米11手机有望首发骁龙875处理器,不过这款手机预计要在明年3月份左右推出,…

小企业文件打印服务器,小企业云服务器方案

小企业云服务器方案 内容精选换一换在“确认配置”页面,查看云服务器配置详情。如果您对价格有疑问,可以单击“了解计费详情”来了解产品价格。如果您对价格有疑问,可以单击“了解计费详情”来了解产品价格。企业项目该参数针对企业用户使用。…

5怎么选国外节点_外卖包装怎么选?这5个技巧要掌握

(↑点上图“知识卡片”,按右上角箭头,可分享至朋友圈保存↑)在这个重颜值的时代,消费者对于外卖包装的诉求在逐渐提高,在餐品质量差异不大的前提下,那些包装好的商品,更具市场竞争力,能加深消费…

基于jmx监控kafka_0542-6.1.0-非安全环境下Kafka管理工具Kafka Eagle安装使用

1.文档编写目的Fayson在前面的文章介绍了《0374-如何在CDH集群中部署Kafka Manager》,本篇文章Fayson介绍另外一款的监控工具Kafka-eagle,它可以同时监控多个集群,监控集群中Topic的被消费情况(包含Lag产生、Offset的改变及Partition分布)&am…

android 怎么调用js项目_APP逆向神器之Frida【Android初级篇】

说到逆向APP,很多人首先想到的都是反编译,但是单看反编译出来的代码很难得知某个函数在被调用时所传入的参数和它返回的值,极大地增加了逆向时的复杂度,有没有什么办法可以方便地知道被传入的参数和返回值呢?答案是有的…

ef mysql modelfirst_MySQL –EF edmx(Model First)– Sql Server table

一、mysql environmentWhen we create an new database,first We need draw er diagram for somebody to show your idea,but our company have no goodauthorised tool to design sqlserver ER diagram,so I use mysql graphical tool to design it, after that,you can use m…

db2 联邦 mysql_DB2联邦数据库及配置方法(及联邦密码修改)

如果您需要使用所有不同的数据库,包括选择、插入、更新和删除,就象所有的表都位于单个数据库中那样,那么将获得非常高的工作效率。数据库联邦就是要做到这一点:使所有表看起来象是在同一个数据库中那么,数据库联邦是怎…

mysql t 保存_检查 (调试) - 离线消息保存到 MySQL - 《EMQ X Enterprise v4.1 中文文档》 - 书栈网 · BookStack...

离线消息保存到 MySQL搭建 MySQL 数据库,并设置用户名密码为 root/public,以 MacOS X 为例:$ brew install mysql$ brew services start mysql$ mysql-u root-h localhost-pALTER USERrootlocalhostIDENTIFIED BYpublic;初始化 MySQL 数据库:$ mysql-u r…

java @valid 密码不一致_一个成熟的Java项目如何优雅地处理异常

(一)概述异常处理是一个系统最重要的环节,当一个项目变得很大的时候,异常处理和日志系统能让你快速定位到问题。对于用户或者接口调用者而言,优雅的异常处理可以让调用者快速知道问题所在。本文将介绍如何优雅地处理异常。(二)使用通用的返回…

spark消费kafka产生数据堆积怎么处理_SparkStreaming读取Kafka的两种方式

本文主要从以下几个方面介绍SparkStreaming读取Kafka的两种方式:一、SparkStreaming简介二、Kafka简介三、Redis简介(可用于保存历史数据或偏移量数据)四、SparkStreaming读取Kafka数据的两种方式 五、演示Demo一、SparkStreaming简介可以参考这篇文章:SparkStreami…

python字符串操作作业_python 第二天作业

#python 中的循环#先介绍for循环#格式#for 临时变量 in 可迭代对象# 循环体#name neusoft#for a in name :# print(a)# if a s# print(嘿嘿)#循环次数哪里去了?# #这个a是什么鬼? a是临时变量 提前声明 python自动为你创建#range (起始位置&#xff0c…

python 白化_Python新疆某气候要素IDW(反距离权重)插值

1、Rbf插值import numpy as npimport cartopy.crs as ccrsimport cartopy.feature as cfeatfrom cartopy.mpl.gridliner import LONGITUDE_FORMATTER, LATITUDE_FORMATTERfrom cartopy.io.shapereader import Readerimport matplotlib.pyplot as pltimport matplotlib.ticker a…

帆软报表参数传给网络报表_报表开发工具FineReport的使用: 程序网络报表

1定义程序网络报表程序网络报表所在类需要继承com.fr.web.reportlet这个抽象类,并且需要实现createReport(ReportletRequest arg0)这个方法,并返回报表对象。具体代码如下:2//程序网络报表package com.fr.demo; import java.util.Map;impo…

bootstrap 取消_学习写个网站(5)Bootstrap学习2

吃了2天烧烤夜宵&#xff0c;还是得讲点自律。【正文】继续bootstrap&#xff0c;还是菜鸟教程。11. 分页就是还有种就是翻页&#xff0c;12. 标签class"label label-default">默认标签</span>label-primarylabel-success13. 警告就是那种可以取消的消息&am…

jdbc mysql user_tab_comments_MySQL学习(五)——使用JDBC完成用户表CRUD的操作

通过案例我们发现“获得连接”和“释放资源”两次代码将在之后的增删改查所有功能中都存在&#xff0c;开发中遇到此种情况&#xff0c;将采用工具类的方法进行抽取&#xff0c;从而达到代码的重复利用。1、使用properties配置文件开发中获得连接的4个参数(驱动、URL、用户名、…