zoukankan      html  css  js  c++  java
  • rem布局注意问题和meta标签

    使用rem前的准备:

    • 如果是移动端,添加name="viewport"的meta标签,其中的属性数值根据实际需求而定:
      <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">

    rem布局:

    两个常用方法:(视情况选其一使用)

    • 通过document.body.clientWidth获取网页可见区域的宽度,
    • 通过window.screen.width获取设备宽度
    <script>
         var offWidth = window.screen.width;    // 获取设备宽度
      //  通常把设计稿按照1rem =100px设置,好换算,假设设计稿宽度为移动端的375px,换算如下:
         document.getElementsByTagName("html")[0].style.fontSize = offWidth*(100/375)+ 'px';         //把转换的值赋值给顶级标签html的font-size属性(即1rem的标准参考物)
    
         console.log('offWidth:'+offWidth,document.getElementsByTagName("html")[0].style.fontSize)
    </script>
    

    meta标签详解和常用属性

    • 概念: 标签提供了 HTML 文档的元数据。元数据不会显示在客户端,但是会被浏览器解析。详细请点:
      它根据name的不同,提供各种功能。
    • 常用属性:
      1. name="viewport" 用于移动端显示优化(通常直接复制下面代码使用即可)深入理解viewport
        <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
        * content里的属性:
        width 设置layout viewport 的宽度,为一个正整数,或字符串"width-device"
        initial-scale 设置页面的初始缩放值,为一个数字,可以带小数
        minimum-scale 允许用户的最小缩放值,为一个数字,可以带小数
        maximum-scale 允许用户的最大缩放值,为一个数字,可以带小数
        height 设置layout viewport 的高度,这个属性对我们并不重要,很少使用
        user-scalable 是否允许用户进行缩放,值为"no"或"yes", no 代表不允许,yes代表允许
      2. 移动端其他优化:
    <!-- 针对手持设备优化,主要是针对一些老的不识别viewport的浏览器,比如黑莓 -->
    <meta name="HandheldFriendly" content="true">
    <!-- 微软的老式浏览器 -->
    <meta name="MobileOptimized" content="320">
    <!-- uc强制竖屏 -->
    <meta name="screen-orientation" content="portrait">
    <!-- QQ强制竖屏 -->
    <meta name="x5-orientation" content="portrait">
    <!-- UC强制全屏 -->
    <meta name="full-screen" content="yes">
    <!-- QQ强制全屏 -->
    <meta name="x5-fullscreen" content="true">
    <!-- UC应用模式 -->
    <meta name="browsermode" content="application">
    <!-- QQ应用模式 -->
    <meta name="x5-page-mode" content="app">
    <!-- windows phone 点击无高光 -->
    
    3. 描述、搜索优化:
         实例 1 - 定义文档关键词,用于搜索引擎:
        `<meta name="keywords" content="HTML, CSS, XML, XHTML, JavaScript">`
        实例 2 - 定义web页面描述:
         `<meta name="description" content="Free Web tutorials on HTML and CSS">`
        实例 3 - 定义页面作者:
        `<meta name="author" content="Hege Refsnes">  `
        实例 4 - 每30秒刷新页面:
        `<meta http-equiv="refresh" content="30">`
    

    本文部分知识点来源于菜鸟教程笔记

  • 相关阅读:
    [性能调优]在PeopleSoft中使用函数索引
    如何在PeopleSoft中找到并更改默认样式表名称
    安装docker之后,测试hello-world镜像,终端提示:Unable to find image 'hello-world:latest' locally019-11-06
    ubuntu上安装docker
    ubuntu设置MySQL被局域网访问
    .Net Core使用 MiniProfiler 进行性能分析
    EF初次启动慢
    数据库最大连接池Max Pool Size
    SQLSERVER:Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached.
    EntityFramework中常用的数据删除方式
  • 原文地址:https://www.cnblogs.com/nogodie/p/10118618.html
Copyright © 2011-2022 走看看