• 移动端页面的一些心得


    允许网页宽度自动调整

    • head标签里加入viewport元标签,viewport是网页默认宽度和高度
          //网页宽=屏幕宽,原始缩放比0.5
        <meta name="viewport" content="width=device-width, initial-scale=0.5" />

    不要固定宽度,字体也是

      使用width : xx%;或width : auto;

    在写CSS的时候,需要注意:

    -1. body选择器中声明Font-size=62.5%;

    -2. 将你的原来的px数值除以10,然后换上em作为单位;

    -3. 重新计算那些被放大的字体的em数值。避免字体大小的重复声明。

    也就是避免1.2 * 1.2= 1.44的现象。比如说你在#content中声明了字体大小为1.2em,那么在声明p的字体大小时就只能是1em,而不是1.2em, 因为此em非彼em,它因继承#content的字体高而变为了1em=12px。

    em是相对长度单位。相对于当前对象内文本的字体尺寸。如当前对行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸。(引自CSS2.0手册)

    任意浏览器的默认字体高都是16px。所有未经调整的浏览器都符合: 1em=16px。那么12px=0.75em,10px=0.625em。为了简化font-size的换算,需要在css中的body选择器中声明Font-size=62.5%,这就使em值变为 16px*62.5%=10px, 这样12px=1.2em, 10px=1em, 也就是说只需要将你的原来的px数值除以10,然后换上em作为单位就行了。

    EM特点

    -1. em的值并不是固定的;

    -2. em会继承父级元素的字体大小。

    rem特点

    rem是CSS3新增的一个相对单位(root em,根em),这个单位引起了广泛关注。这个单位与em有什么区别呢?区别在于使用rem为元素设定字体大小时,仍然是相对大小,但相对的只是HTML根元素。这个单位可谓集相对大小和绝对大小的优点于一身,通过它既可以做到只修改根元素就成比例地调整所有字体大小,又可以避免字体大小逐层复合的连锁反应。目前,除了IE8及更早版本外,所有浏览器均已支持rem。对于不支持它的浏览器,应对方法也很简单,就是多写一个绝对单位的声明。这些浏览器会忽略用rem设定的字体大小。下面就是

    一个例子:

    p {font-size:14px; font-size:.875rem;}

    注意:

    选择使用什么字体单位主要由你的项目来决定,如果你的用户群都使用最新版的浏览器,那推荐使用rem,如果要考虑兼容性,那就使用px,或者两者同时使用。

    px,em,rem单位转换工具 地址:http://pxtoem.com/

    流动布局

    • 俗点就是各块都浮动,不是固定不变的。
    • 当屏幕宽度小,放不下两个元素,后面的元素会自动滚动到下方
    • 注意绝对定位position: absolute
        .rDiv {
          float: right;
           70%;
        }
        .lDiv {
          float: left;
           25%;
        }
            //别刚好加起来等于100%,应当小于100%

    图片自适应

    • 自动缩放,神技, 一行CSS解决战斗
      img,object { max-width: 100%;}
    • 另外要提醒的是:坑爹的IE兼容

    选择加载CSS

    "自适应网页设计"的核心,就是CSS3引入的Media Query模块。
    它的意思就是,自动探测屏幕宽度,然后加载相应的CSS文件。

    <link rel="stylesheet" type="text/css"
        media="screen and (max-device- 400px)"
        href="tinyScreen.css" />

    上面的代码意思是,如果屏幕宽度小于400像素(max-device- 400px),就加载tinyScreen.css文件。

      <link rel="stylesheet" type="text/css"
        media="screen and (min- 400px) and (max-device- 600px)"
        href="smallScreen.css" />

    如果屏幕宽度在400像素到600像素之间,则加载smallScreen.css文件。
    除了用html标签加载CSS文件,还可以在现有CSS文件中加载。

     @import url("tinyScreen.css") screen and (max-device- 400px);

    CSS的@media规则

    同一个CSS文件中,也可以根据不同的屏幕分辨率,选择应用不同的CSS规则。

        //屏幕宽度小于400像素,则column块取消浮动、宽度自动调节,sidebar块不显示
      @media screen and (max-device- 400px) {
        .column {
          float: none;
          auto;
        }
        #sidebar {
          display:none;
        }
      }

     

  • 相关阅读:
    [程序员修炼之道]读书笔记
    protobufnet 简介
    提高IIS响应能力
    彻底解决性能问题,就因为一个配置
    2009年12月小记(Split,netstat,SortedList)
    如何在vmwarer中的linux安装lrzsz文件共享工具
    Liunx常用命令
    正则表达式 浅析
    java的final关键字
    JAVA正则表达式 Pattern和Matcher
  • 原文地址:https://www.cnblogs.com/qihang0/p/11745211.html
Copyright © 2020-2023  润新知