高度固定,行数不固定的文字垂直居中问题

大家都知道,水平方向上的居中很好做到,text-align:center即可做到;垂直方向上的居中如果文字行数和高度都固定也很好实现,但是如果行数不固定呢?

最近,接到一个需求:高度固定,文字行数可能为一行、两行,但不管多少行,文字都要垂直居中。例如:

对于H5页面来说,CSS3的translate即可做到,其原理是外层div相对定位,里面的元素绝对定位,距离父容器的top值为50%,然后通过translate属性让它相对于自身向上移动50%。

其css为:



对于PC来说,就没这么好糊弄了:低版本浏览器不支持CSS3属性,那么我们应该怎么做呢?表格有一个特点是无论里面文字多少,内容都可以垂直居中。因此我们可以使用表格的方式 实现文本垂直居中,同理 我们可以用CSS来模拟表格垂直居中。而display:table可以做到:

不过低版本的IE浏览器不支持display:table,所以为了兼容IE浏览器,还需要使用css Hack来实现:

其css为:

这样,无论是在PC,还是在H5都能够实现高度固定、行数不固定的水平垂直居中了。
时间: 2024-12-17 14:28:11

高度固定,行数不固定的文字垂直居中问题的相关文章

Grid++Report设置显示固定行数

原文:Grid++Report设置显示固定行数 一.要实现的功能打印的报表显示固定的行数,并且设置字段的文字可以自动换行二.设置步骤1.鼠标左键单击"明细网格"栏,在右侧属性窗口中设置"追加空白行"属性值为:是:"追加空白行在后"属性值为:是.2.单击"内容行",设置"每页行数"属性值为一整数(比如7,每页固定显示7行,包括标题行):设置"调整行高"属性值为:否:3.单击"某一

润乾报表之序号、固定行数、统计

图一图二为例子,请结合自己的需求更改单元格 图一 图二 序号: 报表如果有需求要显示序号,类似图一第一列,在A11的位置赋值=&B11, 并且将单元格的左主格设为B11这样就可以添加序号了: 固定行数: 有时要求表格固定行数,例如图一固定位10行,就是说,如果只有三行数据, 要补上7行空格,生凑成10行:在A12的位置赋值=to(count(A11{})+1,10), 这样,在即使没有数据的情况下也会显示10个空行并且带有序号: 统计: 图一中有俩种类型的统计,一种是个数统计,另一个是内容求和.

EditText 几种显示方式,固定行数,自适应行数

1.显示7行,超过7行自动向下补充行数 <EditText android:id="@+id/edt_content" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/white" android:gravity="left|top" android:

父元素 高度固定,如何使其中的文字垂直居中?

方法一: 设置父元素高度,设置子元素行高垂直居中 <style> *{padding: 0;margin:0;font-size: 12px;} div{float: left;width: 200px;height:200px;margin: 10px;border:1px solid blue; line-height: 200px;} span{display: inline-block;vertical-align: middle;line-height: 22px;} </st

固定行数输出

count = 1 for i in range(ord("!"), ord("~")+1): if count % 10 != 0: print(chr(i),end=" ") else: print(chr(i)) count += 1 原文地址:https://www.cnblogs.com/wang102030/p/9218982.html

python pandas使用chunksize异步拆分固定行数的文件

import pandas as pd import asyncio from collections import defaultdict collect = defaultdict(list) #######创建处理一个对象的方法,并返回期物 async def dealone(chunk,sas): path='/data/chaifen/testphone_%d.txt'%sas chunk.to_csv(path,index=False) return path async def s

控制容器文字行数(pc和 移动端)

写在前面的话: 对于文字的单行以及多行显示,应该是经常用到的一个功能了,看下文吧~ pc 端: 1. 单行限制(兼容所有浏览器)   这里加了一个 鼠标移入时显示全部 的效果: .p2{ border: 1px solid #000; width: 206px; white-space:nowrap; overflow: hidden; text-overflow:ellipsis; } .p2:hover{ white-space: normal; overflow: visible; } <

超过固定宽度或行数显示“...”

做前端设计时,通常需要控制字符显示的宽度或者行数,多余字符通常以“...”替代:本文分两点情况来进行设置: 1.需要字符保持固定宽度,其余字符显示省略号(‘...’); 1 .addclass{ 2 width: 600px; 3 overflow: hidden; //这个是设置隐藏的.还有其他的,例如scroll,是超出固定长度,底部显示滚动条的. 4 text-overflow: ellipsis; //这个就是设置直接隐藏掉文字,还是显示...的.当前是显示省略号.直接省略是clip 5

高度百分比时的文字垂直居中

常用css的开发人员都知道让单行文字水平居中用text-align:center垂直方向居中有一个小技巧是让line-height=height,一般用到这个的时候我们的高度都是固定的px值,但今天我设置高度为百分比时,也想让文字垂直居中,于是有了下面这段代码 <!DOCTYPE html><html><head lang="en">    <meta charset="UTF-8">    <title>