【问题标题】:Load different CSS for different media-width为不同的媒体宽度加载不同的 CSS
【发布时间】:2013-11-19 01:02:49
【问题描述】:

我正在制作一个网站,设计是响应式的。但是对于菜单,我选择了一个简单的切换按钮,当加载到移动设备上时,菜单将驻留于此。当按钮被点击时,菜单将出现一个简单的<ul><li> 渲染项目符号列表。但问题是,对于网站,我为菜单做了复杂的 CSS;当我在移动设备上加载网站时,我应该怎么做?

  • 是否需要将所有 CSS 属性重置到菜单 CSS 中,然后将移动设备特定的 CSS 重置到媒体查询中?

我认为这不是一个可行的想法。

那么,我该怎么办?我的一位同事建议我为不同的媒体宽度加载不同的 CSS,但是如何

我想避免在 CSS 中使用 @import,因为它会降低网站速度。

【问题讨论】:

    标签: css responsive-design media-queries


    【解决方案1】:

    是的,您可以为不同的视口/媒体宽度加载不同的 CSS。假设您将站点菜单 CSS 设置为 menu.css,并将移动设备的菜单 CSS 设置为 mobile.css,然后:

    <link rel='stylesheet' href='css/menu.css' type='text/css' media='screen'/>
    <link rel='stylesheet' href='css/mobile.css' type='text/css' media='screen and (max-width: 800px)'/>
    

    第二个样式表专为移动设备友好的 CSS 设计,如您所愿,附加部分 and (max-width: 800px) 将仅在特定视口大小上加载此样式表。

    干杯!

    【讨论】:

    • 再补充一点,这称为 CSS 媒体查询,以防您想通过 Google 搜索更多有关该主题的信息。
    • @MikeBrant 谢谢。实际上,我正在使用 CSS 媒体查询,但只在菜单 CSS 上苦苦挣扎。通过这种方式,我在没有视口检查器 JS 的情况下解决了我的问题。 :)
    • 但是当 CSS 缩小激活时,这个理论是令人不安的。 :(
    猜你喜欢
    • 2013-03-15
    • 1970-01-01
    • 2015-01-02
    • 2015-02-17
    • 1970-01-01
    • 2013-12-27
    • 2015-11-16
    • 1970-01-01
    • 2021-10-30
    相关资源
    最近更新 更多