如何为HTML Link标记的手持设备使用Media属性?

mut*_*y91 8 html mobile

我目前在HTML文档中有以下内容.

<link REL=StyleSheet HREF="/stylesheets/home.css" TYPE="text/css" MEDIA=screen>
<link REL=StyleSheet HREF="/stylesheets/homedark.css" TYPE="text/css" MEDIA=handheld>
Run Code Online (Sandbox Code Playgroud)

但是,手持设备(我的Android手机)没有任何变化.有什么我做错了,还是不是这么简单?

Jas*_*aro 10

您将需要使用更高级的媒体查询,例如那些目标screen size

所以更喜欢的东西

<link rel="stylesheet" href="/stylesheets/homedark.css" type="text/css" 
    media="screen and (max-device-width: 480px)">
Run Code Online (Sandbox Code Playgroud)

在样式表中,它会是这样的

@media only screen and (max-device-width: 480px) {
    //Your styles here
}
Run Code Online (Sandbox Code Playgroud)

http://www.w3.org/TR/css3-mediaqueries/

简单的JS设备检测可能会有所帮助:

if( navigator.userAgent.match(/Android/i) || 
    navigator.userAgent.match(/webOS/i) || 
    navigator.userAgent.match(/iPhone/i) || 
    navigator.userAgent.match(/iPod/i)){
     // link to stylesheet
}
Run Code Online (Sandbox Code Playgroud)

更好的办法是使用某种组合...媒体查询和设备/功能检测.

这是一个很好的概述:http://www.csskarma.com/presentations/cssla/slides/mobile_media_touch.pdf(警告:pdf文件)