移动端流体布局[6]

2017年11月2日07:00:49 发表评论

本章主要开始如果通过第一个 PC 端项目进行重构,设计成移动端可访问的页面,这个项目采用的是流体布局。

一.旅游资讯

这个如果做成移动端,那么一切从简,否则缩小时就无法容纳太多的文字。

//html,布局和 PC 端差不多

<figure>
    <img src="img/tour1.png" alt="移动端流体布局[6]" alt="">
    <figcaption>
        <hgroup>
            <h2 class="title">曼谷-芭提雅 6 日游</h2>
            <h3 class="small_title">包团特惠,超丰富景点,升级 1 晚国五,无自费,赠送 600 元...</h3>
        </hgroup>  
        <div class="price">¥<strong>2864</strong></div>
    </figcaption>
</figure>

注意:两边各占 50%的浮动后,需要清理浮动,这里直接通过 figure 本身清理即可。

//CSS

.information figure:after {
    content:".";
    height:0;
    visibility:hidden;
    display:block;
    clear:both;
}
.information figure {
    position: relative;
    margin: .15rem 0 0 0;
}
.information figure img {
    width: 50%;
    float: left;
}
.information figcaption {
    width: 48%;
    float: right;
}
.information .title {
    border: none;
    padding: 0 0 0.05rem 0;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}
.information .small_title {
    font-weight: normal;
    padding: 0;
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.information .price {
    position: absolute;
    bottom: 0;
}
.information .price strong {
    color: #f60;
    font-size: .26rem;
}

二.机票预定

这个栏目和 PC 端的 html 一致,不需要变化,直接复制过来即可。重点在 CSS 配置上。在表格和列表上基本和 PC 端类似,主要用百分比即可。

//css

.ticket .type {
    margin: 20px 0 10px 0;
    border: none;
}
.ticket .type mark {
    color: #fff;
    background-color: #458B00;
    padding: 0.05rem 0.08rem;
    border-radius: 0.04rem;
    margin: 0 0.1rem 0 0.16rem;
}
.ticket .form {
    font-size: 0.2rem;
    border: none;
}
.ticket .form p {
    margin: 0.1rem 0;
}
.ticket .form label {
    display: block;
    margin: 0 0 0.05rem 0;
    font-size: .16rem;
}
.ticket .form input {
    width: 97%;
    border: 0.01rem solid #ccc;
    background-color: #fff;
    border-radius: 0.04rem;
    padding: 0.05rem;
    color: #666;
}
.ticket .form .submit {
    width: 30%;
    border-radius: 0.04rem;
    background-color: #f60;
    color: #fff;
    text-align: center;
    border: none;
    padding: 0.1rem;
    margin: 0 auto;
    display: block;
}
.ticket .new {
    margin: 0.2rem 0 0 0;
}
.ticket .new ul {
    margin: 0.2rem 0 0 0;
}
.ticket .new li {
    display: inline-block;
    padding: 0.05rem 0.1rem;
}
.ticket .new li:first-child {
    padding-left: 0;
}
.ticket .new li:nth-child(2) {
    background-color: #458B00;
    border-radius: 4px;
    color: #fff;
}
.ticket table {
    width: 100%;
    border-collapse:collapse;
    margin: 0.2rem 0 0 0;
    border: 0.01rem solid #ddd;
}
.ticket table th {
    padding: 0.1rem 0;
    border-bottom: 0.01rem solid #ddd;
    font-weight: normal;
}
.ticket table td {
    padding: 0.1rem 0;
    text-align: center;
    border-bottom: 0.01rem solid #ddd;
}
.ticket table tr:nth-child(2n) {
    background-color: #fafafa;
}
.ticket table tr:hover {
    background-color: #eee;
}
.ticket .price {
    color: #f60;
}
.ticket .more2 {
    text-align: center;
    margin: 0 auto;
    cursor: pointer;
    display: block;
    color: #666;
}
.ticket .reserve {
    padding: 0.05rem 0.1rem;
    display: inline-block;
    border-radius: 0.04rem;
    background-color: #f60;
    color: #fff;
    text-align: center;
}

//媒体查询

/*媒体查询,大于 480px 小于 640px*/

@media (min-width: 480px) and (max-width: 640px) {
    #tour h2,.information .price strong {
        font-size: .26rem;
    }
    #tour h3, #footer, #tour figcaption, #tour .info, .list,.ticket .form
label {
        font-size: .16rem;
    }
    #headline h2 {
        font-size: .22rem;
    }
    #headline h3 {
        font-size: .14rem;
    }
    .list h2 {
        font-size: .2rem;
    }
}

/*媒体查询,小于 480px*/

@media (max-width: 480px) {
    #tour h2,.information .price strong {
        font-size: .20rem;
    }
    #tour h3, #tour figcaption, #tour .info, .list,.ticket .form label
    {
        font-size: .14rem;
    }
    #footer {
        font-size: .12rem;
    }
    #headline h2 {
        font-size: .18rem;
    }
    #headline h3 {
        font-size: .12rem;
    }
    .list h2 {
        font-size: .17rem;
    }
    .min {
        display: none;
    }
}

注:本章为第57课。本次教程共63节课(由大庆seo工程师整理发布),循序渐进地教您响应式网站的制作。1-13课时为html5内容,14-40课时为css3内容,41-51课时为pc端固定布局网站制作实例,52-57课时为移动端流体布局网站制作实例,58-63课时为响应式网站制作实例。最贴心的是每节课示例代码提供免费下载。小白从第一节课开始学起,将走向前端开发,特别是目前最为流行的响应式网站高手之路......

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信公众号扫一扫
  • weinxin
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: