您好,我试图动态调整字体大小。根据我的浏览器大小。
我已经拥有以下CSS,HTML和我试图在我的javascript中添加内容
CSS
#firstPosition
{
position: absolute;
width: 100px;
height: 100px;
top: 50%;
left: 50%;
background-color: black;
}
.textSize
{
font-size: 150%;
color: black;
}
HTML5
<div id="firstPosition">
<p class="textSize">Hello</p>
</div>
我的定位是绝对的,所以即使我调整浏览器的大小,它也会保持在我的屏幕中心。但我的文字没有调整大小。
有什么建议吗?
感谢。
解决!
使用
font-size:1.2vw;代替
答案 0 :(得分:1)
尝试在html头中添加此元标记
<head>
<title>Title</title>
....
<meta name="viewport" content="width=device-width, initial-scale=1.0">
....
</head>
答案 1 :(得分:1)
根据屏幕宽度调整大小(示例)
#firstPosition
{
position: absolute;
width: 50%; /** resize **/
top: 50%;
left: 0;
right: 0;
margin: 0 auto;
background-color: black;
}
.textSize
{
font-size: 3vw; /** resize **/
color: #FFF;
text-align: center;
}
<div id="firstPosition">
<p class="textSize">Hello</p>
</div>
替代JQUERY解决方案
$( window ).resize(function() {
var ratio = $('#firstPosition').width() / 400;
$('.textSize').css({
'-webkit-transform' : 'scale(' + ratio + ')',
'-moz-transform' : 'scale(' + ratio + ')',
'-ms-transform' : 'scale(' + ratio + ')',
'-o-transform' : 'scale(' + ratio + ')',
'transform' : 'scale(' + ratio + ')',
'transform-origin' : '50% 50%'
});
});
#firstPosition
{
position: absolute;
width: 50%;
top: 50%;
left: 0;
right: 0;
margin: 0 auto;
background-color: black;
}
.textSize {
text-align: center;
color: #FFF;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="firstPosition">
<p class="textSize">Hello</p>
</div>
答案 2 :(得分:0)
使用媒体查询:
@media screen and (min-width: 640px) { body { font-size:12px; }}
此处,当浏览器大小至少为640或更低时,字体大小将为12px。
您需要根据您的要求调整min-width和CSS选择器。
请注意,您可以针对不同的尺寸进行多次媒体查询。