当在平板电脑上查看时,我的网站菜单栏如下:
当单击右侧的菜单图标时,会显示其他选项。该代码如下:
<div id="menu">
<a id="metaMenu" href="#">☰</a>
</div>
但我在 Twitter 上看到,一些 Android 手机不支持该实体(或者可能是相应的 Unicode 字符)。我该如何修改我的 HTML 代码以具备回退优化?
当在平板电脑上查看时,我的网站菜单栏如下:
当单击右侧的菜单图标时,会显示其他选项。该代码如下:
<div id="menu">
<a id="metaMenu" href="#">☰</a>
</div>
但我在 Twitter 上看到,一些 Android 手机不支持该实体(或者可能是相应的 Unicode 字符)。我该如何修改我的 HTML 代码以具备回退优化?
据我所知,我使用≡
大多数情况下都可以正常工作。
使用图片或实体是不可取的,因为在我看来它们都没有得到良好支持。它们无法在Android上正常渲染,在Windows Chrome、Internet Explorer等上也会出现奇怪的问题。
应该采用CSS3的方法,因为这种方法被所有主流浏览器和所有现代移动设备所支持。
jsFiddle链接在此:http://jsfiddle.net/328k7/
请按照下面的CSS3代码进行编辑...
div {
content: "";
position: absolute;
left: 0;
display: block;
width: 14px;
top: 0;
height: 0;
-webkit-box-shadow: 1px 10px 1px 1px #69737d,1px 16px 1px 1px #69737d,1px 22px 1px 1px #69737d;
box-shadow: 0 10px 0 1px #69737d,0 16px 0 1px #69737d,0 22px 0 1px #69737d;
}
<button class="navbar-toggle" type="button" data-toggle="collapse" data-target=".bs-navbar-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
.navbar-toggle {
position: relative;
float: right;
padding: 9px 10px;
margin-top: 8px;
margin-right: 15px;
margin-bottom: 8px;
background-color: #cccccc;
border: 1px solid transparent;
border-radius: 4px;
}
.navbar-toggle .icon-bar {
display: block;
width: 22px;
height: 2px;
background-color:#000000;
border-radius: 1px;
}
.navbar-toggle .icon-bar+.icon-bar {
margin-top: 4px;
}
#menu_button {
margin-top: 2vmin;
margin-left: 2vmin;
width: 8vmin;
height: 8vmin;
background-size: 100%;
/* inline SVG element! */
background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 120 80" width="40" height="40" version="1.0" xmlns="http://www.w3.org/2000/svg"><rect x="15" width="90" height="15" rx="10"></rect><rect x="15" y="30" width="90" height="15" rx="10"></rect><rect x="15" y="60" width="90" height="15" rx="10"></rect></svg>');
}
<button id="menu_button" type="button" onclick="show_menu()">
</button>