使用media Queries实现一个响应式的菜单
Media queries是CSS3引入的一个特性,使用它可以方便的实现各种响应式效果。在这个示例中我们将会使用media queries实现一个响应式的菜单。这个菜单会根据当前浏览器屏幕的大小变化而自动的呈现出不同的样式。如果浏览器屏幕大于800px,菜单则会显示在页面左侧;如果浏览器屏幕介于401px到800px之间,菜单则会显示在页面上方,与其他内容是上下关系;如果屏幕小于400px,则菜单仍在页面上方,但是菜单会变为下拉列表形式。
要实现这样的特效,首先要创建一个下拉列表形式的菜单,如下所示。
1 2 3 4 5 6 7 8 9 |
|
然后还要创建一个使用了ul和li元素的菜单,放置在上面菜单的后面。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
最后再加一个div元素,用来放置一些文本以填充页面其他部分。
1 2 3 4 5 6 |
|
接下来就要设置media queries了,指定在不同屏幕尺寸下菜单表现出不同的样式。
当屏幕宽度小于400px时,我们需要隐藏ul菜单,显现下拉框菜单。
1 2 3 4 5 6 7 8 9 10 |
|
当屏幕介于401px和800px时,显示ul菜单,并且将其设置为水平排列。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
|
当屏幕尺寸大于800px时,则将ul菜单设置为页面左边,并且菜单排列为垂直排列。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
这样就简单实现了一个响应式的菜单,其实主要就是根据media queries来设置screen的条件,根据不同screen宽度来给页面元素设置对应的样式。当屏幕宽度发生变化时,会自动应用相应的样式。
代码已经被放置到了github上了,地址是https://github.com/huangbowen521/ResponsiveDesignTrial
作者:黄博文@无敌北瓜
出处:http://www.cnblogs.com/huang0925
黄博文的地盘
本文版权归本人和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
出处:http://www.cnblogs.com/huang0925
黄博文的地盘
本文版权归本人和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。