【问题标题】:Are there any apps that convert max-width CSS media queries to min-width?是否有任何应用程序可以将最大宽度 CSS 媒体查询转换为最小宽度?
【发布时间】:2015-04-20 18:59:04
【问题描述】:

我有时想将响应式导航重新编码为移动优先,而不是让样式适应较小的用户设备。

手动重新编码 CSS 以将样式级联从最大宽度反转为最小宽度并没有我希望的那么快。

可以重新编码为移动优先的 CSS 示例:http://codepen.io/bl4ckdu5t/pen/vOBRqL

nav {
    height: 40px;
    width: 100%;
    background: #455868;
    font-size: 11pt;
    font-family: 'PT Sans', Arial, sans-serif;
    font-weight: bold;
    position: relative;
    border-bottom: 2px solid #283744;
}
nav ul {
    padding: 0;
    margin: 0 auto;
    width: 600px;
    height: 40px;
}
nav li {
    display: inline;
    float: left;
}
nav a {
    color: #fff;
    display: inline-block;
    width: 100px;
    text-align: center;
    text-decoration: none;
    line-height: 40px;
    text-shadow: 1px 1px 0px #283744;
}
nav li a {
    border-right: 1px solid #576979;
    box-sizing:border-box;
    -moz-box-sizing:border-box;
    -webkit-box-sizing:border-box;
}
nav li:last-child a {
    border-right: 0;
}
nav a:hover, nav a:active {
    background-color: #8c99a4;
}
nav a#pull {
    display: none;
}

/*Styles for screen 600px and lower*/
@media screen and (max-width: 600px) {
    nav { 
        height: auto;
    }
    nav ul {
        width: 100%;
        display: block;
        height: auto;
    }
    nav li {
        width: 50%;
        float: left;
        position: relative;
    }
    nav li a {
        border-bottom: 1px solid #576979;
        border-right: 1px solid #576979;
    }
    nav a {
        text-align: left;
        width: 100%;
        text-indent: 25px;
    }
}

/*Styles for screen 480px and lower*/
@media only screen and (max-width : 480px) {
    nav {
        border-bottom: 0;
    }
    nav ul {
        display: none;
        height: auto;
    }
    nav a#pull {
        display: block;
        background-color: #283744;
        width: 100%;
        position: relative;
    }
    nav a#pull:after {
        content:"";
        background:   url('http://s30.postimg.org/68factszx/nav_icon.png') no-repeat;
        width: 30px;
        height: 30px;
        display: inline-block;
        position: absolute;
        right: 15px;
        top: 10px;
    }
}

/*Smartphone*/
@media only screen and (max-width : 320px) {
    nav li {
        display: block;
        float: none;
        width: 100%;
    }
    nav li a {
        border-bottom: 1px solid #576979;
    }
}

【问题讨论】:

    标签: css responsive-design


    【解决方案1】:

    我不知道有什么工具可以帮助您。这是一篇很好的文章,可以帮助您手动进行更改: link

    max-width 是显示这些样式的最大宽度。宽于指定数字的屏幕将不会使用与该规则关联的样式。

    同样,min-width 是显示这些样式的最小宽度。小于指定数字的屏幕将不会使用与该规则关联的样式。

    【讨论】:

    • 感谢您的链接,达格里尔。我理解 max-width 和 min-width 的概念,使用一种转换 CSS 并没有从头开始重新编码它并不是那么容易。乍一看,我以为我可以用 min-width 替换 max-width 的实例,并在级联中上下移动规则。但是 CSS 本身的级联特性是它不起作用的原因。
    猜你喜欢
    • 2012-03-19
    • 2012-07-09
    • 2017-07-29
    • 2012-12-12
    • 1970-01-01
    • 2013-09-10
    • 1970-01-01
    • 2013-11-19
    相关资源
    最近更新 更多