如何使用两种不同的设计用于网络和移动

时间:2016-08-31 23:17:26

标签: html css twitter-bootstrap mobile web

我希望能够为我的网页设计一定的设计,并在调整为移动设备时使用不同的设计。我会包含照片以便更好地解释。

这是我想要使用的设计 Web 这是草图 Mobile 我目前还不完全确定如何使用媒体查询 这是迄今为止的代码

HTML                                       婴幼儿                                           2岁以上的儿童                      

    <div class="row">
        <div class="full-time col-sm-12 col-md-12 col-lg-2">Full Time</div>
        <div class="prices-left-box col-sm-12 col-md-12 col-lg-5">
            <div class="prices-left">$200 Per Week</div>
        </div>
        <div class="prices-right-box col-sm-12 col-md-12 col-lg-5">
            <div class="prices-right">$150 Per Week</div>
        </div>
    </div>
    <div class="row">
        <div class="full-time col-sm-12 col-md-12 col-lg-2">Up to 4 Hours</div>
        <div class="prices-left-box col-sm-12 col-md-12 col-lg-5">
            <div class="prices-left">$125 Per Week</div>
        </div>
        <div class="prices-right-box col-sm-12 col-md-12 col-lg-5">
            <div class="prices-right">$100 Per Week</div>
        </div>
    </div>
</div>

和CSS:

@media (max-width: 992px) {
    .infants{
        color: black;
        background-color: #7FC7AF;
        font-size: 36px;
        font-weight: bold;
        font-family: "open sans";
        height: 125px;
        width: 304.3px;
        text-align: center;
        margin: auto;
        display: inline-block;
    }

    .children{
        color: black;
        background-color: #FF9E9D;
        font-size: 36px;
        font-weight: bold;
        font-family: "open sans";
        height: 125px;
        width: 304.4px;
        text-align: center;
        padding: auto;
        display: inline-block;
    }
}

.infants{
    color: white;
    background-color: #7FC7AF;
    font-size: 36px;
    font-weight: bold;
    font-family: "open sans";
    height: 87px;
    width: 304.3px;
    text-align: center;
}

.infants-box{
    padding-left: 176px;
    padding-right: 80px;
}

.children{
    color: white;
    background-color: #FF9E9D;
    font-size: 36px;
    font-weight: bold;
    font-family: "open sans";
    height: 87px;
    width: 304.4px;
    text-align: center;
}

.payment-method{
    font-size: 24px;
    padding-bottom: 57px;
    padding-top: 57px;
    text-align: center;
    font-family: "Source Sans Pro";
    font-weight: 600;
    font-style: italic;
    font-size: 24px;
    line-height: 30px;
    color: #4B4B4B
}

.full-time{
    background-color: #454545;
    color: white;
    font-size: 24px;
    font-weight: bold;
    font-family: "open sans";
    height: 150px;
    margin: auto;
    width: 176px;
    text-align: center;
}
.prices-left-box{
    background-color: white;
    width: 304.4px;
    height: 150px;
}
.prices-left{
    font-family: "source sans pro";
    font-size: 24px;
    width: 304.3px;
    margin-right: 220px;
    text-align: center;
}

.prices-right-box{
    background-color: #ffffff;
    width: 304.4px;
    margin-left: 10%;
    height: 150px
}

.prices-right{
        font-family: "source sans pro";
    font-size: 24px;
    background color: white !important;
    text-align: center;
}
.background-pricing{
    background-color: #F0F0F0;
    padding-bottom: 84px;
}

2 个答案:

答案 0 :(得分:0)

无论您使用的是Bootstrap,只需引用grid并将更改应用于您引用的类名。您还可以在文档中看到这些Responsive Utilities

如果您确实需要使用上面的代码,请尝试重写上面的代码:

@media only screen and (max-width: 992px) {
    .infants{
           /* 
           Custom CSS here 
           ...
           */
     }
}

答案 1 :(得分:0)

我建议查看http://getbootstrap.com/css/#gridBootstrap Responsive Utilities上的文档,以创建一个响应式布局,为较小的移动屏幕堆叠行网格结构。

我建议首先为移动而不是桌面构建您的布局。使用.col-xs-*确定移动版面设置是否正确,然后使用.col-sm-*移动到平板电脑尺寸,使用.col-md-*移动更大的平板电脑和桌面,最后使用.col-lg-*移动大型设备桌面。有关选项的一个很好的示例,请参阅此代码笔 - http://codepen.io/arsinak/pen/qDgvt/

  

通过在列中添加.col-xs- * .col-md- *来使用额外的中小型设备网格类。 Example: Mobile and desktop

您不需要在自己的css中为容器和网格系统定义媒体查询,bootstrap会处理这个问题。如果需要基于媒体查询定义CSS。我建议先为手机创建CSS,然后根据屏幕尺寸进行缩小。

/*==========  Mobile First Method  ==========*/

/* Custom, iPhone Retina */
@media only screen and (min-width : 320px){

}

/* Extra Small Devices, Phones */
@media only screen and (min-width : 480px){

}

/* Small Devices, Tablets */
@media only screen and (min-width : 768px){

}

/* Medium Devices, Desktops */
@media only screen and (min-width : 992px){

}

/* Large Devices, Wide Screens */
@media only screen and (min-width : 1200px){

}

另外,为了清理你的CSS并减少重复的代码,我建议你使用SASSBEM Methodology以更清晰的方式构建你的css,这很容易理解和维护。