首先行高百分比的书写,百分比是针对字体大小进行设置的,也就是说如果你的文字大小为20px,那么100%就是20px,这个和你的需求不符合
其次,CSS当中也不能写成height/2的样子
那么,两种方案能够解决这个问题
1 改变标签的默认显示样式,然后使用vertical-align属性进行控制
<style>.box {
width: 800px
height: 400px
border: 10px solid red
}
.demo {
float: left
display: table
width: 33%
height: 50%
border: 1px solid black
}
.demo > p {
display: table-cell
vertical-align: middle
}
</style>
<div class="box">
<div class="demo">
<p>新手书籍推荐:《HTML5布局之路》</p>
</div>
</div>
显示效果:
2 使用JS进行动态的样式设置(即通过JS动态的获取这个标签的高度,然后再通过 元素.style.lineHeight的方法来设置具体的行高值,当然,这种设置比第一种要麻烦的多)
在CSS中,我们可以使用各种方法和技术来使对齐项目,例可以水平和垂直对齐项目。下面本篇文章就来给大家介绍一些使用CSS对齐项目的方法,希望对大家有所帮助。
1、margin : auto
此属性用于将块元素水平对齐到中心。
示例:
注意:使用margin : auto在IE8中不起作用,除非声明了!DOCTYPE。
效果图:
2、position: absolute
我们可以使用position: absolute来对齐项目。
示例:
效果图:
3、text-align: center
我们可以在各种标签中使用text-align: center;它可以将任何用HTML编写的文本对齐。
示例:
效果图:
4、line-height属性
想要垂直对齐项目,我们可以使用line-height属性。line-height 属性设置行间的距离(行高)。
示例:
效果图:
5、padding和text-align属性
我们可以使用padding属性和text-align : center的组合来垂直和水平对齐文本。
示例:
效果图:
本文参考地址: https://www.html.cn/qa/css3/10403.html
方法一:内嵌样式(为了方便查看效果我给这个段落加了个红色的边框)
方法二:内链样式(为了方便查看效果我给这个段落加了个蓝色的边框)
方法三:外链样式,同方法二,只不过将样式新建一个文件引入即可
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<html xmlns="
<head>
<meta http-equiv="Content-Type" content="text/html charset=gb2312" />
<title>无标题文档</title>
<style>
.duangao{
height:100px border:1px solid #00f
}
</style>
</head>
<body>
方法一内嵌样式(为了方便查看效果我给这个段落加了个红色的边框):
<p style="height:100px border:1px solid #f00">这是一段文字,这是一段文字,测试文字的高度.这是一段文字,这是一段文字,测试文字的高度.这是一段文字,这是一段文字,测试文字的高度.这是一段文字,这是一段文字,测试文字的高度.这是一段文字,这是一段文字,测试文字的高度.这是一段文字,这是一段文字,测试文字的高度.这是一段文字,这是一段文字,测试文字的高度.这是一段文字,这是一段文字,测试文字的高度.</p>
方法二内链样式(为了方便查看效果我给这个段落加了个红色的边框):
<p class="duangao">这是一段文字,这是一段文字,测试文字的高度.这是一段文字,这是一段文字,测试文字的高度.这是一段文字,这是一段文字,测试文字的高度.这是一段文字,这是一段文字,测试文字的高度.这是一段文字,这是一段文字,测试文字的高度.这是一段文字,这是一段文字,测试文字的高度.这是一段文字,这是一段文字,测试文字的高度.这是一段文字,这是一段文字,测试文字的高度.</p>
方法三外链样式,同方法二,只不过将样式新建一个文件引入即可
</body>
</html>
最终效果图如下:
如果想使单行文字垂直居中,即文字不多,将行高和段落设为一样的数值即可。如:height:100pxline-height:100pox