我建立了一个在桌面和移动设备上宽度为700px的网站。在桌面上700px div居中。在移动设备上,700px div只需要填满屏幕。
以下测试代码
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta name="viewport" content="width=700" />
<style>
div#wrapper
{
width:700px;
margin-left:auto;
margin-right:auto;
}
</style>
</head>
<body>
<div id="wrapper">
<img src="/test.jpg" alt="Test image 700px width in 100px strips" />
</div>
</body>
</html>
这适用于桌面浏览器和大多数手机。 然而,在我的女儿cheapo智能手机上,浏览器会直接放大,只显示大约350px。
我该如何处理这个问题。你会认为解决这个问题很容易,但事实并非如此!弄乱其他元标记属性(初始缩放等)对这个特定的智能手机没有影响。
华为手机浏览器代理:Modzilla / 5.0(Linux; U; Andriod 4.2.2; en-gb; HUAWEI Y330-U01 Build / HuaweiY330-U01)AppleWebKit / 534.30(KHTML,likeGecko)版本/ 4.0 Mobile Safari /534.30
答案 0 :(得分:1)
使用此
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
说明:
<meta>
视口元素为浏览器提供了有关如何控制页面尺寸和缩放的说明。
width=device-width
部分将页面宽度设置为遵循设备的屏幕宽度(具体取决于设备)。
initial-scale=1.0
部分设置浏览器首次加载页面时的初始缩放级别。
以下是没有视口元标记的网页示例,以及带有视口元标记的同一网页:
<强>演示强>
阅读本文 - https://css-tricks.com/snippets/html/responsive-meta-tag/和此http://www.w3schools.com/css/css_rwd_viewport.asp
答案 1 :(得分:0)
我没有Android设备来验证这一点,但也许这可以用相对宽度和maximum width来解决:
<style type="text/css">
div#wrapper
{
width:100%;
max-width:700px;
margin-left:auto;
margin-right:auto;
}
</style>
max-width
会在满足条件时覆盖width
,因此在您女儿的手机上显示的较小的显示屏应使用全宽,而较大的显示屏仅为700像素宽。
(我已将type
属性添加到您的<style>
标记中以确保完整性。如果没有它,您的代码应该会正常呈现。)
答案 2 :(得分:0)
试试这个,希望它能解决你的问题
<meta name="viewport" content="width=device-width"/>
而不是
<meta name="viewport" content="width=700" />
答案 3 :(得分:0)
我会将CSS宽度设置为100%,而不是700px。通常最好在可能的情况下避免使用硬编码尺寸。另外,如另一个答案所示,max-width可能很有用,因为它在指定时覆盖宽度。 然后,您可以使用屏幕尺寸媒体查询(https://css-tricks.com/snippets/css/media-queries-for-standard-devices/)在大型显示器上围绕图像放置边框div。
答案 4 :(得分:0)
在头标记
中添加以下链接<meta name="viewport" content="width=device-width, initial-scale=1.0" />
样式表
<style type="text/css">
@media only screen and (max-width: 699px)//media query for the resolution below 700px {
div#wrapper
{
width:100%;// this will took full width
}
}
</style>