我正在开发一个网站,并希望状态栏保持固定在每个页面的底部。这样做的最佳方式似乎是使用javascript。但是,许多浏览器都会禁用javascript。那么,不使用javascript不是最佳做法吗?我测试谷歌禁用javascript,他们的状态栏甚至没有显示。这似乎是一个糟糕的实施。 Web开发人员应该假设应该启用javascript还是有更好的标准方法?
答案 0 :(得分:4)
全球约有2%的人使用没有JavaScript的浏览器,或者关闭了它。 (Reference)所以不是一个大数字,但它就在那里。
这是渐进增强是你的朋友。尝试创建一个状态栏,可以在大多数浏览器上执行您想要的操作(可能使用position: fixed
或position: absolute
以及主要内容元素上的某些填充),大部分时间都没有JavaScript。然后,如果您仍然认为您需要使用JavaScript来完成您想要的操作,那么您可以为98%拥有它的人添加它。
答案 1 :(得分:0)
您的网站仍然适用于未启用JavaScript的用户,但对于那些启用了JavaScript的用户,它应该更好,并且您应该让用户知道他们没有获得最好的用户体验,因为他们没有启用JavaScript。
Google,Facebook和Yahoo都是这样做的,也是接触最广泛受众群体的最佳方式。
答案 2 :(得分:0)
看起来你只想要CSS,特别是position: fixed; bottom: 0
:http://jsfiddle.net/b6qwH/。
这样,元素就会锚定在屏幕的底部,滚动时也是如此。
答案 3 :(得分:0)
无论如何,粘性标题不应该使用javascript,您可以使用position:fixed
进行操作,例如movethewebforward.org
答案 4 :(得分:0)
JavaScript几乎在每个浏览器上都有。我认为90%的访问者甚至不知道你可以关掉它。其他10%的人知道为什么你不应该关闭JavaScript。
您可以搜索粘性页脚或粘性标题,您将获得有关如何执行此操作的大量示例。
答案 5 :(得分:0)
感谢所有好的建议。我能够使用CSS来实现我的目标并消除javascript。至少它适用于我测试过的少数浏览器。 emptyspace类在内容和页脚之间创建了一个边距。在我看来,编码CSS并不好玩。
#emptyspace {
float: left;
width: 100%;
height: 130px;
}
#footer {
position: fixed;
bottom: 0px;
width: 100%;
height: 125px;
background: url(../images/grass-green-gradient.png);
background-repeat: repeat-x;
}