zoukankan      html  css  js  c++  java
  • 使用CSS让网页自适配手机端

    博客在手机打开一直不能适配,手机上访问的体验很不好。今天把博客的大部分页面都加了自适配手机端,只要修改每个页面的css 即可。

    之前大概知道怎么去改,但是页面太多实在觉得麻烦,就一直没有去改。当初做博客的时候也没有考虑到手机访问的重要性,所以现在虽然能改,但是也是缝缝补补。 一直想换一套模板的,又觉得要做的实在太多了。不过要想在手机上完美体验还是需要重新做一套前端了,现在先这样用着。

    之前呢,考虑到很多人通过链接在手机上打开了我的博客,为了让他们访问加了个电脑访问的提示。通过js判断是否手机打开,如果是就弹窗提示。

    <script type="text/javascript">
        /* 手机打开提示 */
         var mobileAgent = new Array("iphone", "ipod", "ipad", "android", "mobile", "blackberry", "webos", "incognito", "webmate", "bada", "nokia", "lg", "ucweb", "skyfire");
         var browser = navigator.userAgent.toLowerCase();
         var isMobile = false;
         for (var i = 0; i < mobileAgent.length; i++) {
             if (browser.indexOf(mobileAgent[i]) != -1) {
                 isMobile = true;
                 alert("本博客手机打开不适配,建议使用电脑访问效果最佳!点击确定继续使用手机浏览");
                 break;
             }
         }
    </script>

    效果:

    161611830087300049916.png

    这样肯定是不行的,还是得改css。html+css完全是靠在大学时老师教的那些撑着,一开始觉得完全够用,后面发现很多东西老师没有教过。接触的越多发现要学的就越多,虽然是一个后端开发,但是该学的还是得学。css最烦的就是调来调去还差点的,特别是屏幕宽度,就很无语~

    手机适配的话先加个meta viewport。移动端的布局不同于pc端,首先我们要知道在移动端中,css中的1px并不等于物理上的1px,因为手机屏幕的分辨率已经越来越高,高像素但是屏幕尺寸却没有发生太大变化,那就意味着一个物理像素点实际上塞入了好几个像素。头部加上viewport 并设置一些默认属性。

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    然后就是css判断了,使用@media来判断屏幕宽度,再调整响应模块的scc。

    /**手机适配**/
    @media only screen and (max- 767px) {
       header{100%}
       .banner{ 100%;height: 100px;}
       .avatar{ 80px;height: 80px;margin: 6px;}
       .avatar a{padding-top: 59px; 80px;height: 80px;background-size: 80px 78px;}
       .avatar a span{margin-top: 0px; padding-top: 0px;  auto;height: auto;}
    .bloglist h3 {margin: 20px 0 10px 10px;}
    .bloglist figure {auto;margin-left: 4px;}
    .bloglist figure img { 90px;height: 60px;}
    .bloglist ul{64%}
    .dateview {100%;padding-left:4px;}
    .dateview span {margin: 0 3px;}
    .weixinnone,.thumbs{display: none}
    .right{ 100%;margin-top: 22px}
    .right ul{64%;margin-left: 22px;}
    .weather{margin: 20px 50px;}
    .bloglinkli{display: block}
    footer{100%}
    }

    参考下面两篇文章

    viewport:viewport 深入理解

    media:CSS3@media查询

    没有适配手机之前的效果

    首页:

    161611929784137041587.png

    详情页:

    161612005990519039413.png

    做了适配之后的效果

    首页:

    161612000396423073854.png

    161612003128451034408.png

    详情页:

    161611997542255056654.png

    一个java小菜鸡的进阶之路,我的个人博客:http://www.zjhuiwan.cn 欢迎访问!
  • 相关阅读:
    Mysql索引优化
    [ExtJS5学习笔记]第六节 Extjs的类系统Class System命名规则及定义和调试
    [ExtJS5学习笔记]第五节 使用fontawesome给你的extjs5应用增加字体图标
    【翻译】Ext JS 5.0.1 中的新功能
    OpenCV——PS图层混合算法(六)
    [IDE工具配置]myeclipse 2014 专业版 安装 svn插件
    OpenCV——PS 图层混合算法 (四)
    [ExtJS5学习笔记]第四节 欢迎来到extjs5-手把手教你实现你的第一个应用
    [ExtJS5学习笔记]第三节 sencha cmd学习笔记 生成应用程序构建的内部细节
    [ExtJS5学习笔记]第二节 Sencha Cmd 学习笔记 使你的sencha cmd跑起来
  • 原文地址:https://www.cnblogs.com/sunonzj/p/14557279.html
Copyright © 2011-2022 走看看