最新版本号[免费下载]
  • 用github部署静态网页-创建您github主页与博客网站
    用github部署静态网页-创建您github主页与博客网站

    一、Github Pages的使用 1、首先你得有一个Github账号,没有的话去github.com注nbsp;git branch1

    这里写图片描述
    只有master一个分支,因为我们刚刚是在远程仓库创建的分支,现在在本地创建同名分支gh-pages

    VSCode 是继 Sublime Text3、Atom 后另一个让我爱不释手的编辑器,其颜值和插件生态圈与 Atom 不相上下,但比后者用起来更加丝滑流畅(Atom 需要4G+内存和SSD 才能逆天),所以自然成了我目前首选的编辑器。


    前端项目自然少不了和 Sass 打交道,VSCode 提供了丰富的相关插件来帮助我们处理 Sass 相关任务。我用的是 Easy Sass 这款插件,目前最新版本是 0.0.6。

    由于 Sass 的编译依赖 Ruby 环境,因此我们在开始之前首先得安装 Ruby,别担心,装 Ruby 只是为了提供运行环境,不懂 Ruby 没任何关系。官网下载传送门

    安装 Ruby 时一定要勾选 Add Ruby executables to your PATH,用来将 Ruby 添加到系统变量,这样后续可以省却很多不必要的麻烦。装好后在命令行输入 gem sass 来安装 Sass,安装完成后启动 VSCode,在拓展商店里搜索“easy sass”,并安装,安装成功后重启 VSCode。

    east


    接下来进行配置。在 VSCode 菜单栏依次点击“文件 首选项 设置”,打开 settings.json 全局配置文件。搜索“easysass”,然后把 easysass 相关的设置项复制到右侧的用户设置编辑窗口中,再根据实际情况修改配置项。
    注意这里的配置项是全局的,不是只针对当前 VSCode 中打开的项目。换句话说,如果你在 VSCode 中切换了项目,应按实际情况再次调整 easysass 的配置项。


    settings


    所有的默认配置项如下:

    "easysass.compileAfterSave": true,"easysass.excludeRegex": "","easysass.formats": [
        {
          "format": "expanded",
          "extension": ".css"
        },
        {
          "format": "compressed",
          "extension": ".min.css"
        }],"easysass.targetDir": ""
    • easysass.compileAfterSave 保存 scss 或 sass 文件后自动进行编译。默认为 true。一般设为 true,可提高工作效率,如果项目中有不直接编译的文件,例如 variable.scss、theme.scss、mixin.scss 等,建议设为 false,避免这类文件编辑保存后被编译为无效 css 需要手动删除的尴尬。

    • easysass.excludeRegex 提供一个文件名的正则表达式,匹配的文件会被排除,不会被编译成 css。默认为空,即该功能关闭。个人建议将一些不直接编译的文件以下划线开头命名,例如:mixin.scss,然后设置:`"easysass.excludeRegex": "^+"`,即可排除所有以下划线开头的 scss/sass 文件。

    • easysass.formats 定义输出 css 文件的排版风格和文件名,是一个数组,可以同时编译输出多个不同风格、文件名的 css 文件。每个数组对象中有两个参数:

      1. easysass.formats[i].format 用以编译生成对应风格的 css,参数值如下:

        nested:嵌套缩进的 css 代码。
        expanded:没有缩进的、扩展的css代码。
        compact:简洁格式的 css 代码。
        compressed:压缩后的 css 代码。

      2. easysass.formats[i].extension 顾名思义就是设置编译输出的文件拓展名了,此处可以自定义文件名,输出的 css 文件名会按照“当前 Sass 文件名(不含拓展名)+此处自定义文件名”的格式来生成。
        例如:设置 "easysass.formats[i].extension": ".min.css",假设当前的 Sass 文件名为
        style.scss,则编译输出的 css 文件名为 style.min.css。

    • easysass.targetDir 我们在生产环境中很多情况下 scss/sass 文件和 css 文件是不在同一个目录下的,而 Easy Sass 默认输出的 css 是和当前 Sass 文件处于相同目录的,为此我们需要通过该参数来配置输出路径。
      参数值可以是绝对路径或相对路径。如果是相对路径,则以 VSCode 当前打开的项目的根目录为基准。
      例如:设置 easysass.targetDir 为 "./css/",此时保存修改完毕的 Sass 文件,VSCode 会自动编译并在当前 Sass 文件的上级文件夹 css 目录下输出生成 css 文件(见下图)。

    例如下图的文件结构,项目根目录是 TEST 文件夹,scss 文件存放于 sass 文件夹,编译输出目录是 css 文件,则配置为:"easysass.targetDir": "css/"("css" 后面的斜线也可省略)。


    生成css路径



    本文所述的只是采用 VSCode 编辑器编译生成 CSS 的一种方式,可能比较原始,实际生产环境中大多采用自动化构建方案,比如 grunt、gulp、fis 等。

    nbsp;git branch gh-pages1

    这里写图片描述
    我们还在master分支上,现在切换分支

    VSCode 是继 Sublime Text3、Atom 后另一个让我爱不释手的编辑器,其颜值和插件生态圈与 Atom 不相上下,但比后者用起来更加丝滑流畅(Atom 需要4G+内存和SSD 才能逆天),所以自然成了我目前首选的编辑器。


    前端项目自然少不了和 Sass 打交道,VSCode 提供了丰富的相关插件来帮助我们处理 Sass 相关任务。我用的是 Easy Sass 这款插件,目前最新版本是 0.0.6。

    由于 Sass 的编译依赖 Ruby 环境,因此我们在开始之前首先得安装 Ruby,别担心,装 Ruby 只是为了提供运行环境,不懂 Ruby 没任何关系。官网下载传送门

    安装 Ruby 时一定要勾选 Add Ruby executables to your PATH,用来将 Ruby 添加到系统变量,这样后续可以省却很多不必要的麻烦。装好后在命令行输入 gem sass 来安装 Sass,安装完成后启动 VSCode,在拓展商店里搜索“easy sass”,并安装,安装成功后重启 VSCode。

    east


    接下来进行配置。在 VSCode 菜单栏依次点击“文件 首选项 设置”,打开 settings.json 全局配置文件。搜索“easysass”,然后把 easysass 相关的设置项复制到右侧的用户设置编辑窗口中,再根据实际情况修改配置项。
    注意这里的配置项是全局的,不是只针对当前 VSCode 中打开的项目。换句话说,如果你在 VSCode 中切换了项目,应按实际情况再次调整 easysass 的配置项。


    settings


    所有的默认配置项如下:

    "easysass.compileAfterSave": true,"easysass.excludeRegex": "","easysass.formats": [
        {
          "format": "expanded",
          "extension": ".css"
        },
        {
          "format": "compressed",
          "extension": ".min.css"
        }],"easysass.targetDir": ""
    • easysass.compileAfterSave 保存 scss 或 sass 文件后自动进行编译。默认为 true。一般设为 true,可提高工作效率,如果项目中有不直接编译的文件,例如 variable.scss、theme.scss、mixin.scss 等,建议设为 false,避免这类文件编辑保存后被编译为无效 css 需要手动删除的尴尬。

    • easysass.excludeRegex 提供一个文件名的正则表达式,匹配的文件会被排除,不会被编译成 css。默认为空,即该功能关闭。个人建议将一些不直接编译的文件以下划线开头命名,例如:mixin.scss,然后设置:`"easysass.excludeRegex": "^+"`,即可排除所有以下划线开头的 scss/sass 文件。

    • easysass.formats 定义输出 css 文件的排版风格和文件名,是一个数组,可以同时编译输出多个不同风格、文件名的 css 文件。每个数组对象中有两个参数:

      1. easysass.formats[i].format 用以编译生成对应风格的 css,参数值如下:

        nested:嵌套缩进的 css 代码。
        expanded:没有缩进的、扩展的css代码。
        compact:简洁格式的 css 代码。
        compressed:压缩后的 css 代码。

      2. easysass.formats[i].extension 顾名思义就是设置编译输出的文件拓展名了,此处可以自定义文件名,输出的 css 文件名会按照“当前 Sass 文件名(不含拓展名)+此处自定义文件名”的格式来生成。
        例如:设置 "easysass.formats[i].extension": ".min.css",假设当前的 Sass 文件名为
        style.scss,则编译输出的 css 文件名为 style.min.css。

    • easysass.targetDir 我们在生产环境中很多情况下 scss/sass 文件和 css 文件是不在同一个目录下的,而 Easy Sass 默认输出的 css 是和当前 Sass 文件处于相同目录的,为此我们需要通过该参数来配置输出路径。
      参数值可以是绝对路径或相对路径。如果是相对路径,则以 VSCode 当前打开的项目的根目录为基准。
      例如:设置 easysass.targetDir 为 "./css/",此时保存修改完毕的 Sass 文件,VSCode 会自动编译并在当前 Sass 文件的上级文件夹 css 目录下输出生成 css 文件(见下图)。

    例如下图的文件结构,项目根目录是 TEST 文件夹,scss 文件存放于 sass 文件夹,编译输出目录是 css 文件,则配置为:"easysass.targetDir": "css/"("css" 后面的斜线也可省略)。


    生成css路径



    本文所述的只是采用 VSCode 编辑器编译生成 CSS 的一种方式,可能比较原始,实际生产环境中大多采用自动化构建方案,比如 grunt、gulp、fis 等。

    nbsp;git checkout gh-pages1

    这里写图片描述
    完美切换,现在向本地分支提交代码
    这里写图片描述
    向远程仓库推送代码

    VSCode 是继 Sublime Text3、Atom 后另一个让我爱不释手的编辑器,其颜值和插件生态圈与 Atom 不相上下,但比后者用起来更加丝滑流畅(Atom 需要4G+内存和SSD 才能逆天),所以自然成了我目前首选的编辑器。


    前端项目自然少不了和 Sass 打交道,VSCode 提供了丰富的相关插件来帮助我们处理 Sass 相关任务。我用的是 Easy Sass 这款插件,目前最新版本是 0.0.6。

    由于 Sass 的编译依赖 Ruby 环境,因此我们在开始之前首先得安装 Ruby,别担心,装 Ruby 只是为了提供运行环境,不懂 Ruby 没任何关系。官网下载传送门

    安装 Ruby 时一定要勾选 Add Ruby executables to your PATH,用来将 Ruby 添加到系统变量,这样后续可以省却很多不必要的麻烦。装好后在命令行输入 gem sass 来安装 Sass,安装完成后启动 VSCode,在拓展商店里搜索“easy sass”,并安装,安装成功后重启 VSCode。

    east


    接下来进行配置。在 VSCode 菜单栏依次点击“文件 首选项 设置”,打开 settings.json 全局配置文件。搜索“easysass”,然后把 easysass 相关的设置项复制到右侧的用户设置编辑窗口中,再根据实际情况修改配置项。
    注意这里的配置项是全局的,不是只针对当前 VSCode 中打开的项目。换句话说,如果你在 VSCode 中切换了项目,应按实际情况再次调整 easysass 的配置项。


    settings


    所有的默认配置项如下:

    "easysass.compileAfterSave": true,"easysass.excludeRegex": "","easysass.formats": [
        {
          "format": "expanded",
          "extension": ".css"
        },
        {
          "format": "compressed",
          "extension": ".min.css"
        }],"easysass.targetDir": ""
    • easysass.compileAfterSave 保存 scss 或 sass 文件后自动进行编译。默认为 true。一般设为 true,可提高工作效率,如果项目中有不直接编译的文件,例如 variable.scss、theme.scss、mixin.scss 等,建议设为 false,避免这类文件编辑保存后被编译为无效 css 需要手动删除的尴尬。

    • easysass.excludeRegex 提供一个文件名的正则表达式,匹配的文件会被排除,不会被编译成 css。默认为空,即该功能关闭。个人建议将一些不直接编译的文件以下划线开头命名,例如:mixin.scss,然后设置:`"easysass.excludeRegex": "^+"`,即可排除所有以下划线开头的 scss/sass 文件。

    • easysass.formats 定义输出 css 文件的排版风格和文件名,是一个数组,可以同时编译输出多个不同风格、文件名的 css 文件。每个数组对象中有两个参数:

      1. easysass.formats[i].format 用以编译生成对应风格的 css,参数值如下:

        nested:嵌套缩进的 css 代码。
        expanded:没有缩进的、扩展的css代码。
        compact:简洁格式的 css 代码。
        compressed:压缩后的 css 代码。

      2. easysass.formats[i].extension 顾名思义就是设置编译输出的文件拓展名了,此处可以自定义文件名,输出的 css 文件名会按照“当前 Sass 文件名(不含拓展名)+此处自定义文件名”的格式来生成。
        例如:设置 "easysass.formats[i].extension": ".min.css",假设当前的 Sass 文件名为
        style.scss,则编译输出的 css 文件名为 style.min.css。

    • easysass.targetDir 我们在生产环境中很多情况下 scss/sass 文件和 css 文件是不在同一个目录下的,而 Easy Sass 默认输出的 css 是和当前 Sass 文件处于相同目录的,为此我们需要通过该参数来配置输出路径。
      参数值可以是绝对路径或相对路径。如果是相对路径,则以 VSCode 当前打开的项目的根目录为基准。
      例如:设置 easysass.targetDir 为 "./css/",此时保存修改完毕的 Sass 文件,VSCode 会自动编译并在当前 Sass 文件的上级文件夹 css 目录下输出生成 css 文件(见下图)。

    例如下图的文件结构,项目根目录是 TEST 文件夹,scss 文件存放于 sass 文件夹,编译输出目录是 css 文件,则配置为:"easysass.targetDir": "css/"("css" 后面的斜线也可省略)。


    生成css路径



    本文所述的只是采用 VSCode 编辑器编译生成 CSS 的一种方式,可能比较原始,实际生产环境中大多采用自动化构建方案,比如 grunt、gulp、fis 等。

    nbsp;git push origin gh-pages12

    一定要指明推送分支的名称!!!!
    这里写图片描述
    很明显有冲突,pull回来,pull回来也要指明推送分支的名称!!!!

    VSCode 是继 Sublime Text3、Atom 后另一个让我爱不释手的编辑器,其颜值和插件生态圈与 Atom 不相上下,但比后者用起来更加丝滑流畅(Atom 需要4G+内存和SSD 才能逆天),所以自然成了我目前首选的编辑器。


    前端项目自然少不了和 Sass 打交道,VSCode 提供了丰富的相关插件来帮助我们处理 Sass 相关任务。我用的是 Easy Sass 这款插件,目前最新版本是 0.0.6。

    由于 Sass 的编译依赖 Ruby 环境,因此我们在开始之前首先得安装 Ruby,别担心,装 Ruby 只是为了提供运行环境,不懂 Ruby 没任何关系。官网下载传送门

    安装 Ruby 时一定要勾选 Add Ruby executables to your PATH,用来将 Ruby 添加到系统变量,这样后续可以省却很多不必要的麻烦。装好后在命令行输入 gem sass 来安装 Sass,安装完成后启动 VSCode,在拓展商店里搜索“easy sass”,并安装,安装成功后重启 VSCode。

    east


    接下来进行配置。在 VSCode 菜单栏依次点击“文件 首选项 设置”,打开 settings.json 全局配置文件。搜索“easysass”,然后把 easysass 相关的设置项复制到右侧的用户设置编辑窗口中,再根据实际情况修改配置项。
    注意这里的配置项是全局的,不是只针对当前 VSCode 中打开的项目。换句话说,如果你在 VSCode 中切换了项目,应按实际情况再次调整 easysass 的配置项。


    settings


    所有的默认配置项如下:

    "easysass.compileAfterSave": true,"easysass.excludeRegex": "","easysass.formats": [
        {
          "format": "expanded",
          "extension": ".css"
        },
        {
          "format": "compressed",
          "extension": ".min.css"
        }],"easysass.targetDir": ""
    • easysass.compileAfterSave 保存 scss 或 sass 文件后自动进行编译。默认为 true。一般设为 true,可提高工作效率,如果项目中有不直接编译的文件,例如 variable.scss、theme.scss、mixin.scss 等,建议设为 false,避免这类文件编辑保存后被编译为无效 css 需要手动删除的尴尬。

    • easysass.excludeRegex 提供一个文件名的正则表达式,匹配的文件会被排除,不会被编译成 css。默认为空,即该功能关闭。个人建议将一些不直接编译的文件以下划线开头命名,例如:mixin.scss,然后设置:`"easysass.excludeRegex": "^+"`,即可排除所有以下划线开头的 scss/sass 文件。

    • easysass.formats 定义输出 css 文件的排版风格和文件名,是一个数组,可以同时编译输出多个不同风格、文件名的 css 文件。每个数组对象中有两个参数:

      1. easysass.formats[i].format 用以编译生成对应风格的 css,参数值如下:

        nested:嵌套缩进的 css 代码。
        expanded:没有缩进的、扩展的css代码。
        compact:简洁格式的 css 代码。
        compressed:压缩后的 css 代码。

      2. easysass.formats[i].extension 顾名思义就是设置编译输出的文件拓展名了,此处可以自定义文件名,输出的 css 文件名会按照“当前 Sass 文件名(不含拓展名)+此处自定义文件名”的格式来生成。
        例如:设置 "easysass.formats[i].extension": ".min.css",假设当前的 Sass 文件名为
        style.scss,则编译输出的 css 文件名为 style.min.css。

    • easysass.targetDir 我们在生产环境中很多情况下 scss/sass 文件和 css 文件是不在同一个目录下的,而 Easy Sass 默认输出的 css 是和当前 Sass 文件处于相同目录的,为此我们需要通过该参数来配置输出路径。
      参数值可以是绝对路径或相对路径。如果是相对路径,则以 VSCode 当前打开的项目的根目录为基准。
      例如:设置 easysass.targetDir 为 "./css/",此时保存修改完毕的 Sass 文件,VSCode 会自动编译并在当前 Sass 文件的上级文件夹 css 目录下输出生成 css 文件(见下图)。

    例如下图的文件结构,项目根目录是 TEST 文件夹,scss 文件存放于 sass 文件夹,编译输出目录是 css 文件,则配置为:"easysass.targetDir": "css/"("css" 后面的斜线也可省略)。


    生成css路径



    本文所述的只是采用 VSCode 编辑器编译生成 CSS 的一种方式,可能比较原始,实际生产环境中大多采用自动化构建方案,比如 grunt、gulp、fis 等。

    nbsp;git pull origin gh-pages12

    这里写图片描述
    解决冲突,重新提交,还是要add
    这里写图片描述
    再次push
    这里写图片描述
    完美!
    看看github上什么情况了。
    这里写图片描述
    完美!需要演示的静态文件都在gh-pages分支上了。现在来访问一下。还记得演示地址是多少吗?嘻嘻
    在settings里看
    这里写图片描述
    去看看吧!这个是一个移动web应用,嘿嘿我的静态网站

    同样的,我们也可以通过这种方式部署自己的静态blog。么么哒,比起coding,github自由多了。
    比起blog论坛,自己设计blog更自由!!!哎,最近太忙···空了我也倒腾一个超炫的blog.( > 3 < )

    !!!补充
    更新代码时出了点小状况,切换到gh-pages分支后,git add .,git commit -am 'update’打开本地文件,发现还是之前的文件(因为我有新建文件,一眼就可以看出没有变化)···我也不太清楚为啥··后来手动拷贝了一份到分支文件夹下,才继续了版本更新···


    ,220)/}

    博客网,主页,网页,部署,创建
    2018-03-31

    2950

  • Emmet 常用的高级功能
    Emmet 常用的高级功能

    Emmet 的功能不仅仅局限在快速生成标记语言结构或者生成 CSS 代码,它还具有很多常用的前端相关的功能,下面就来介绍几个比较常用的功能。生成 Lorem IpsumLorem Ipsum 表示一段随机看不懂的文字。Lorem Ipsum 的文字让人看不懂,这样才能忽略内容的含义而专注内容的排版,作为测试数据填充用的。使用 Emmet 生成 Lorem Ipsum 文本非常简单,只需要使用 lorem这一条命令即可,敲击 Tab 键之后,就会生成如下一段文字:Lorem ipsum dolor sit amet

    功能,高级,常用,
    2018-03-27

    1179

  • 详解CSS中flex布局-面向未来的网页设计理念
    详解CSS中flex布局-面向未来的网页设计理念

    一、例子可以点这里先看一个例子:http://code.z01.com/v4/layout/example.html 二、什么是Flex布局做网页布局难,左右居中可以,上下居中如何处理?四个角浮动如何处理?尤其是中文环境中,这些问题一直很难解决,直到flex弹性布局出现…. 网页布局(layout)是 CSS 的一个重点应用。 布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。 2009年,W3C 提出了一种新的方案——Flex 布局,可以简便、完整、响应式地实现各种页面布局。目前,它已经得到了所有浏览器的支持,这意味着,现在就能很安全地使用这项功能。 Flex 布局将成为未来布局的首选方案。本文介绍它的语法,下一篇文章给出常见布局的 Flex 写法。网友 JailBreak 为本文的所有示例制作了 Demo,也可以参考。 以下内容主要参考了下面两篇文章:A Complete Guide to Flexbox 和 A Visual Guide to CSS3 Flexbox Properties。 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。 三、起步Flex是Flexible Box的缩写,意为”弹性布局”,用来为盒状模型提供最大的灵活性。 任何一个容器都可以指定为Flex布局。 方法只要一行代码: .box{ display: flex;} 行内元素也可以使用Flex布局,也是一行代码: .box{ display: inline-flex;} Webkit内核的浏览器,必须加上-webkit前缀(现在已经webkit一统天 下,不需要这么麻烦): .box{ display: -webkit-flex; /* Safari */ display: flex; } 注意: 1、设为Flex布局以后,子元素的float、clear和vertical-align属性将失效。 2、部份Flex属性在IE11上不支持,更低版本浏览器亦不兼容。 3、著名的Bootstrap前端框架从bootstrapz4.0开始全面基于Flex布局(详见http://code.z01.com/v4 ) 四、基本概念采用Flex布局的元素,称为Flex容器(flex container),简称”容器”。它的所有子元素自动成为容器成员,称为Flex项目(flex item),简称”项目”。 容器默认存在两根轴:水平的主轴(main axis)和垂直的交叉轴(cross axis)。主轴的开始位置(与边框的交叉点)叫做main start,结束位置叫做main end;交叉轴的开始位置叫做cross start,结束位置叫做cross end。项目默认沿主轴排列。单个项目占据的主轴空间叫做main size,占据的交叉轴空间叫做cross size。 五、容器的属性以下6个属性设置在容器上: flex-direction flex-wrap flex-flow justify-content align-items align-content 5.1 flex-direction属性flex-direction属性决定主轴的方向(即项目的排列方向)。 .box { flex-direction: row | row-reverse | column | column-reverse; } 它可能有四个值: row(默认值):主轴为水平方向,起点在左端。 row-reverse:主轴为水平方向,起点在右端。 column:主轴为垂直方向,起点在上沿。 column-reverse:主轴为垂直方向,起点在下沿。 效果: 5.2 flex-wrap属性默认情况下,项目都排在一条线(又称”轴线”)上。flex-wrap属性定义,如果一条轴线排不下,如何换行。 .box{ flex-wrap: nowrap | wrap | wrap-reverse; } 它不可能取三值:(1)nowrap(默认):不换行。 (2)wrap:换行,第一行在上方。 (3)wrap-reverse:换行,第一行在下方。 5.3 flex-flowflex-flow属性是flex-direction属性和flex-wrap属性的简写形式,默认值为row nowrap。 .box{ flex-wrap: nowrap | wrap | wrap-reverse; } 5.4 justify-content属性justify-content属性定义了项目在主轴上的对齐方式。 .box { justify-content: flex-start | flex-end | center | space-between | space-around; } 它可能取5个值,具体对齐方式与轴的方向有关。下面假设主轴为从左到右。 flex-start(默认值):左对齐 flex-end:右对齐 center: 居中 space-between:两端对齐,项目之间的间隔都相等。 space-around:每个项目两侧的间隔相等。所以,项目之间的间隔比项目与边框的间隔大一倍。 5.5 align-items属性align-items属性定义项目在交叉轴上如何对齐。 .box { align-items: flex-start | flex-end | center | baseline | stretch; } flex-start:交叉轴的起点对齐。 flex-end:交叉轴的终点对齐。 center:交叉轴的中点对齐。 baseline: 项目的第一行文字的基线对齐。 stretch(默认值):如果项目未设置高度或设为auto,将占满整个容器的高度。 5.6 align-content属性align-content属性定义了多根轴线的对齐方式。如果项目只有一根轴线,该属性不起作用。 .box { align-items: flex-start | flex-end | center | baseline | stretch; } 该属性可能取6个值: flex-start:与交叉轴的起点对齐。 flex-end:与交叉轴的终点对齐。 center:与交叉轴的中点对齐。 space-between:与交叉轴两端对齐,轴线之间的间隔平均分布。 space-around:每根轴线两侧的间隔都相等。所以,轴线之间的间隔比轴线与边框的间隔大一倍。 stretch(默认值):轴线占满整个交叉轴。 六、项目的属性以下6个属性设置在项目上: order flex-grow flex-shrink flex-basis flex align-self 6.1 order属性order属性定义项目的排列顺序。数值越小,排列越靠前,默认为0。 .item { order: <integer>; } 6.2 flex-grow属性flex-grow属性定义项目的放大比例,默认为0,即如果存在剩余空间,也不放大。 .item { flex-grow: <number>; /* default 0 */ } 如果所有项目的flex-grow属性都为1,则它们将等分剩余空间(如果有的话)。如果一个项目的flex-grow属性为2,其他项目都为1,则前者占据的剩余空间将比其他项多一倍。 6.3 flex-shrink属性flex-shrink属性定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小。 .item { flex-shrink: <number>; /* default 1 */ } 如果所有项目的flex-shrink属性都为1,当空间不足时,都将等比例缩小。如果一个项目的flex-shrink属性为0,其他项目都为1,则空间不足时,前者不缩小。负值对该属性无效。 6.4 flex-basis属性flex-basis属性定义了在分配多余空间之前,项目占据的主轴空间(main size)。浏览器根据这个属性,计算主轴是否有多余空间。它的默认值为auto,即项目的本来大小。 .item { flex-basis: <length> | auto; /* default auto */ } 它可以设为跟width或height属性一样的值(比如350px),则项目将占据固定空间。 6.5 flex属性flex属性是flex-grow

    设计,面向,详解,未来,网页
    2018-01-23

    11849

  • SASS界面编译工具—Koala的使用及中国镜像下载
    SASS界面编译工具—Koala的使用及中国镜像下载

    《SASS界面编译工具——Codekit的使用》一文中图解了"CodeKit"图形工具编译SASS项目。由于CodeKit是一款付费工具,而且只能在Mac中使用,因此国内众多SASS爱好者,或者初学者也就无法体验CodeKit工具编译SASS项目。幸运的是,有一款国产图形工具Koala和CodeKit功能极其类似,支持多个平台,而且是开源的。KoalaKoala官网下载KoalaKoala是一个前端预处理器语言图形编译工具,支持Less、Sass、Compass、CoffeeScript,帮助web开发者更高效地使用它们进行开发。跨平台运行,完美兼容windows、linux、mac。不过在这篇文章中,我们仅介绍如何用Koala来编译SASS项目。Koala特性在介绍如何使用Koala之前,我们先简单的了解一下Koala具有哪些功能特性:支持多语言:支持LESS、SASS、CoffeeScript和Compass;实时编译:监听文件,当文件改变时自动执行编译,这一切都在后台运行,无需人工操作;编译选项:可以设置各个语言的编译选项;代码压缩:Less和Sass支持编译后自动压缩代码;错误提示:在编译时如果遇到语法的错误,提供错误信息log,方便开发者定位代码错误位置;跨平台运行:可以在Window、Linux和Mac OS X多个平台下完美运行。Koala下载与安装如果你决定使用Koala来编译您的SASS项目,那么你就得先安装一个Koala。要是你是第一次使用Koala,你可以到他的官网下载对应的版本,因为Koala提供多个环境的安装文件:WindowsMac OS X 10.7+            Linux:32bit/64bit            Ubuntu:32bit/64bit下载Koala下载您所需版本后直接点击安装文件,step by step就Ok了,此处就不做过多阐述了。附逐浪官方下载源://code.z01.com/KoalaSetup.exe    创建项目要让Koala来编译SASS项目,首要的条件就是要有SASS项目,不然巧妇难为无米之炊,什么事也办不了。因为在自己的项目目录下先创建一个SASS项目,在这里我创建了一个名叫koalaSass的项目。(我一般喜欢把项目都放置在一个叫Sites目录中)。同时创建一个sass的目录,把项目中的所以.scss文件放置在这个目录中:Koala使用Koala的使用其实非常的简单,第一步你启动您安装在本地的Koala,你会看到一个很清爽的界面:整个界面包含的内容非常的简单,左上角有三个按钮:“添加项目”、“Error Log”和“配置”

    使用,下载,工具,编译,界面
    2017-12-14

    3807

  • 超级强大的SVG SMIL animation动画详解
    超级强大的SVG SMIL animation动画详解

    本文摘自张鑫博客,如果有侵权请第一时间告知。更新于2017-02-24拒有些资料显示,Chrome 45 & Opera 32版本之后 SMIL会在控制台console会有警告(虽然本人没有看到),以后有可能不支持的风险。我觉得应该是打算靠CSS来撑场子,因为很巧的是,Chrome 46和Opera 33正好开始支持CSS Motion Path了,真是心机浏览器。//zxx: 本文的SVG在有缓存时候是无动画效果,此时您可以试着【右键-新标签页打开图片】。一、SVG SMIL animation概览1. SMIL是什么?SMIL不是指「水蜜梨」,而是Synchronized Multimedia Integration Language(同步多媒体集成语言)的首字母缩写简称,是有标准的。本文所要介绍的SVG动画就是基于这种语言。SMIL允许你做下面这些事情:动画元素的数值属性(X

    强大,详解,动画,超级,
    2017-11-03

    1786

  • webpack 入门指南
    webpack 入门指南

    VSCode 是继 Sublime Text3、Atom 后另一个让我爱不释手的编辑器,其颜值和插件生态圈与 Atom 不相上下,但比后者用起来更加丝滑流畅(Atom 需要4G+内存和SSD 才能逆天),所以自然成了我目前首选的编辑器。


    前端项目自然少不了和 Sass 打交道,VSCode 提供了丰富的相关插件来帮助我们处理 Sass 相关任务。我用的是 Easy Sass 这款插件,目前最新版本是 0.0.6。

    由于 Sass 的编译依赖 Ruby 环境,因此我们在开始之前首先得安装 Ruby,别担心,装 Ruby 只是为了提供运行环境,不懂 Ruby 没任何关系。官网下载传送门

    安装 Ruby 时一定要勾选 Add Ruby executables to your PATH,用来将 Ruby 添加到系统变量,这样后续可以省却很多不必要的麻烦。装好后在命令行输入 gem sass 来安装 Sass,安装完成后启动 VSCode,在拓展商店里搜索“easy sass”,并安装,安装成功后重启 VSCode。

    east


    接下来进行配置。在 VSCode 菜单栏依次点击“文件 首选项 设置”,打开 settings.json 全局配置文件。搜索“easysass”,然后把 easysass 相关的设置项复制到右侧的用户设置编辑窗口中,再根据实际情况修改配置项。
    注意这里的配置项是全局的,不是只针对当前 VSCode 中打开的项目。换句话说,如果你在 VSCode 中切换了项目,应按实际情况再次调整 easysass 的配置项。


    settings


    所有的默认配置项如下:

    "easysass.compileAfterSave": true,"easysass.excludeRegex": "","easysass.formats": [
        {
          "format": "expanded",
          "extension": ".css"
        },
        {
          "format": "compressed",
          "extension": ".min.css"
        }],"easysass.targetDir": ""
    • easysass.compileAfterSave 保存 scss 或 sass 文件后自动进行编译。默认为 true。一般设为 true,可提高工作效率,如果项目中有不直接编译的文件,例如 variable.scss、theme.scss、mixin.scss 等,建议设为 false,避免这类文件编辑保存后被编译为无效 css 需要手动删除的尴尬。

    • easysass.excludeRegex 提供一个文件名的正则表达式,匹配的文件会被排除,不会被编译成 css。默认为空,即该功能关闭。个人建议将一些不直接编译的文件以下划线开头命名,例如:mixin.scss,然后设置:`"easysass.excludeRegex": "^+"`,即可排除所有以下划线开头的 scss/sass 文件。

    • easysass.formats 定义输出 css 文件的排版风格和文件名,是一个数组,可以同时编译输出多个不同风格、文件名的 css 文件。每个数组对象中有两个参数:

      1. easysass.formats[i].format 用以编译生成对应风格的 css,参数值如下:

        nested:嵌套缩进的 css 代码。
        expanded:没有缩进的、扩展的css代码。
        compact:简洁格式的 css 代码。
        compressed:压缩后的 css 代码。

      2. easysass.formats[i].extension 顾名思义就是设置编译输出的文件拓展名了,此处可以自定义文件名,输出的 css 文件名会按照“当前 Sass 文件名(不含拓展名)+此处自定义文件名”的格式来生成。
        例如:设置 "easysass.formats[i].extension": ".min.css",假设当前的 Sass 文件名为
        style.scss,则编译输出的 css 文件名为 style.min.css。

    • easysass.targetDir 我们在生产环境中很多情况下 scss/sass 文件和 css 文件是不在同一个目录下的,而 Easy Sass 默认输出的 css 是和当前 Sass 文件处于相同目录的,为此我们需要通过该参数来配置输出路径。
      参数值可以是绝对路径或相对路径。如果是相对路径,则以 VSCode 当前打开的项目的根目录为基准。
      例如:设置 easysass.targetDir 为 "./css/",此时保存修改完毕的 Sass 文件,VSCode 会自动编译并在当前 Sass 文件的上级文件夹 css 目录下输出生成 css 文件(见下图)。

    例如下图的文件结构,项目根目录是 TEST 文件夹,scss 文件存放于 sass 文件夹,编译输出目录是 css 文件,则配置为:"easysass.targetDir": "css/"("css" 后面的斜线也可省略)。


    生成css路径



    本文所述的只是采用 VSCode 编辑器编译生成 CSS 的一种方式,可能比较原始,实际生产环境中大多采用自动化构建方案,比如 grunt、gulp、fis 等。

    nbsp;webpack --watch   //监听变动并自动打包

    VSCode 是继 Sublime Text3、Atom 后另一个让我爱不释手的编辑器,其颜值和插件生态圈与 Atom 不相上下,但比后者用起来更加丝滑流畅(Atom 需要4G+内存和SSD 才能逆天),所以自然成了我目前首选的编辑器。


    前端项目自然少不了和 Sass 打交道,VSCode 提供了丰富的相关插件来帮助我们处理 Sass 相关任务。我用的是 Easy Sass 这款插件,目前最新版本是 0.0.6。

    由于 Sass 的编译依赖 Ruby 环境,因此我们在开始之前首先得安装 Ruby,别担心,装 Ruby 只是为了提供运行环境,不懂 Ruby 没任何关系。官网下载传送门

    安装 Ruby 时一定要勾选 Add Ruby executables to your PATH,用来将 Ruby 添加到系统变量,这样后续可以省却很多不必要的麻烦。装好后在命令行输入 gem sass 来安装 Sass,安装完成后启动 VSCode,在拓展商店里搜索“easy sass”,并安装,安装成功后重启 VSCode。

    east


    接下来进行配置。在 VSCode 菜单栏依次点击“文件 首选项 设置”,打开 settings.json 全局配置文件。搜索“easysass”,然后把 easysass 相关的设置项复制到右侧的用户设置编辑窗口中,再根据实际情况修改配置项。
    注意这里的配置项是全局的,不是只针对当前 VSCode 中打开的项目。换句话说,如果你在 VSCode 中切换了项目,应按实际情况再次调整 easysass 的配置项。


    settings


    所有的默认配置项如下:

    "easysass.compileAfterSave": true,"easysass.excludeRegex": "","easysass.formats": [
        {
          "format": "expanded",
          "extension": ".css"
        },
        {
          "format": "compressed",
          "extension": ".min.css"
        }],"easysass.targetDir": ""
    • easysass.compileAfterSave 保存 scss 或 sass 文件后自动进行编译。默认为 true。一般设为 true,可提高工作效率,如果项目中有不直接编译的文件,例如 variable.scss、theme.scss、mixin.scss 等,建议设为 false,避免这类文件编辑保存后被编译为无效 css 需要手动删除的尴尬。

    • easysass.excludeRegex 提供一个文件名的正则表达式,匹配的文件会被排除,不会被编译成 css。默认为空,即该功能关闭。个人建议将一些不直接编译的文件以下划线开头命名,例如:mixin.scss,然后设置:`"easysass.excludeRegex": "^+"`,即可排除所有以下划线开头的 scss/sass 文件。

    • easysass.formats 定义输出 css 文件的排版风格和文件名,是一个数组,可以同时编译输出多个不同风格、文件名的 css 文件。每个数组对象中有两个参数:

      1. easysass.formats[i].format 用以编译生成对应风格的 css,参数值如下:

        nested:嵌套缩进的 css 代码。
        expanded:没有缩进的、扩展的css代码。
        compact:简洁格式的 css 代码。
        compressed:压缩后的 css 代码。

      2. easysass.formats[i].extension 顾名思义就是设置编译输出的文件拓展名了,此处可以自定义文件名,输出的 css 文件名会按照“当前 Sass 文件名(不含拓展名)+此处自定义文件名”的格式来生成。
        例如:设置 "easysass.formats[i].extension": ".min.css",假设当前的 Sass 文件名为
        style.scss,则编译输出的 css 文件名为 style.min.css。

    • easysass.targetDir 我们在生产环境中很多情况下 scss/sass 文件和 css 文件是不在同一个目录下的,而 Easy Sass 默认输出的 css 是和当前 Sass 文件处于相同目录的,为此我们需要通过该参数来配置输出路径。
      参数值可以是绝对路径或相对路径。如果是相对路径,则以 VSCode 当前打开的项目的根目录为基准。
      例如:设置 easysass.targetDir 为 "./css/",此时保存修改完毕的 Sass 文件,VSCode 会自动编译并在当前 Sass 文件的上级文件夹 css 目录下输出生成 css 文件(见下图)。

    例如下图的文件结构,项目根目录是 TEST 文件夹,scss 文件存放于 sass 文件夹,编译输出目录是 css 文件,则配置为:"easysass.targetDir": "css/"("css" 后面的斜线也可省略)。


    生成css路径



    本文所述的只是采用 VSCode 编辑器编译生成 CSS 的一种方式,可能比较原始,实际生产环境中大多采用自动化构建方案,比如 grunt、gulp、fis 等。

    nbsp;webpack -p    //压缩混淆脚本,这个非常非常重要!

    VSCode 是继 Sublime Text3、Atom 后另一个让我爱不释手的编辑器,其颜值和插件生态圈与 Atom 不相上下,但比后者用起来更加丝滑流畅(Atom 需要4G+内存和SSD 才能逆天),所以自然成了我目前首选的编辑器。


    前端项目自然少不了和 Sass 打交道,VSCode 提供了丰富的相关插件来帮助我们处理 Sass 相关任务。我用的是 Easy Sass 这款插件,目前最新版本是 0.0.6。

    由于 Sass 的编译依赖 Ruby 环境,因此我们在开始之前首先得安装 Ruby,别担心,装 Ruby 只是为了提供运行环境,不懂 Ruby 没任何关系。官网下载传送门

    安装 Ruby 时一定要勾选 Add Ruby executables to your PATH,用来将 Ruby 添加到系统变量,这样后续可以省却很多不必要的麻烦。装好后在命令行输入 gem sass 来安装 Sass,安装完成后启动 VSCode,在拓展商店里搜索“easy sass”,并安装,安装成功后重启 VSCode。

    east


    接下来进行配置。在 VSCode 菜单栏依次点击“文件 首选项 设置”,打开 settings.json 全局配置文件。搜索“easysass”,然后把 easysass 相关的设置项复制到右侧的用户设置编辑窗口中,再根据实际情况修改配置项。
    注意这里的配置项是全局的,不是只针对当前 VSCode 中打开的项目。换句话说,如果你在 VSCode 中切换了项目,应按实际情况再次调整 easysass 的配置项。


    settings


    所有的默认配置项如下:

    "easysass.compileAfterSave": true,"easysass.excludeRegex": "","easysass.formats": [
        {
          "format": "expanded",
          "extension": ".css"
        },
        {
          "format": "compressed",
          "extension": ".min.css"
        }],"easysass.targetDir": ""
    • easysass.compileAfterSave 保存 scss 或 sass 文件后自动进行编译。默认为 true。一般设为 true,可提高工作效率,如果项目中有不直接编译的文件,例如 variable.scss、theme.scss、mixin.scss 等,建议设为 false,避免这类文件编辑保存后被编译为无效 css 需要手动删除的尴尬。

    • easysass.excludeRegex 提供一个文件名的正则表达式,匹配的文件会被排除,不会被编译成 css。默认为空,即该功能关闭。个人建议将一些不直接编译的文件以下划线开头命名,例如:mixin.scss,然后设置:`"easysass.excludeRegex": "^+"`,即可排除所有以下划线开头的 scss/sass 文件。

    • easysass.formats 定义输出 css 文件的排版风格和文件名,是一个数组,可以同时编译输出多个不同风格、文件名的 css 文件。每个数组对象中有两个参数:

      1. easysass.formats[i].format 用以编译生成对应风格的 css,参数值如下:

        nested:嵌套缩进的 css 代码。
        expanded:没有缩进的、扩展的css代码。
        compact:简洁格式的 css 代码。
        compressed:压缩后的 css 代码。

      2. easysass.formats[i].extension 顾名思义就是设置编译输出的文件拓展名了,此处可以自定义文件名,输出的 css 文件名会按照“当前 Sass 文件名(不含拓展名)+此处自定义文件名”的格式来生成。
        例如:设置 "easysass.formats[i].extension": ".min.css",假设当前的 Sass 文件名为
        style.scss,则编译输出的 css 文件名为 style.min.css。

    • easysass.targetDir 我们在生产环境中很多情况下 scss/sass 文件和 css 文件是不在同一个目录下的,而 Easy Sass 默认输出的 css 是和当前 Sass 文件处于相同目录的,为此我们需要通过该参数来配置输出路径。
      参数值可以是绝对路径或相对路径。如果是相对路径,则以 VSCode 当前打开的项目的根目录为基准。
      例如:设置 easysass.targetDir 为 "./css/",此时保存修改完毕的 Sass 文件,VSCode 会自动编译并在当前 Sass 文件的上级文件夹 css 目录下输出生成 css 文件(见下图)。

    例如下图的文件结构,项目根目录是 TEST 文件夹,scss 文件存放于 sass 文件夹,编译输出目录是 css 文件,则配置为:"easysass.targetDir": "css/"("css" 后面的斜线也可省略)。


    生成css路径



    本文所述的只是采用 VSCode 编辑器编译生成 CSS 的一种方式,可能比较原始,实际生产环境中大多采用自动化构建方案,比如 grunt、gulp、fis 等。

    nbsp;webpack -d    //生成map映射文件,告知哪些模块被最终打包到哪里了

    复制代码

    其中的 -p 是很重要的参数,曾经一个未压缩的 700kb 的文件,压缩后直接降到 180kb(主要是样式这块一句就独占一行脚本,导致未压缩脚本变得很大)

    模块引入

    上面唠嗑了那么多配置和执行方法,下面开始说说寻常页面和脚本怎么使用呗。

    一. HTML

    直接在页面引入 webpack 最终生成的页面脚本即可,不用再写什么 data-main 或 seajs.use 了:

    复制代码

    <!DOCTYPE html><html><head lang="en">
      <meta charset="UTF-8">
      <title>demo</title></head><body>
      <script src="dist/js/page/common.js"></script>
      <script src="dist/js/page/index.js"></script></body></html>

    复制代码

    可以看到我们连样式都不用引入,毕竟脚本执行时会动态生成<style>并标签打到head里。

    二. JS

    各脚本模块可以直接使用 commonJS 来书写,并可以直接引入未经编译的模块,比如 JSX、sass、coffee等(只要你在 webpack.config.js 里配置好了对应的加载器)。

    我们再看看编译前的页面入口文件(index.js):

    复制代码

    require('../../css/reset.scss'); //加载初始化样式require('../../css/allComponent.scss'); //加载组件样式var React = require('react');var AppWrap = require('../component/AppWrap'); //加载组件var createRedux = require('redux').createRedux;var Provider = require('redux/react').Provider;var stores = require('AppStore');var redux = createRedux(stores);var App = React.createClass({
        render: function() {        return (            <Provider redux={redux}>
                    {function() { return <AppWrap />; }}
                </Provider>        );
        }
    });
    
    React.render(    <App />, document.body
    );

    复制代码

    一切就是这么简单么么哒~ 后续各种有的没的,webpack 都会帮你进行处理。

    其他

    至此我们已经基本上手了 webpack 的使用,下面是补充一些有用的技巧。

    一. shimming

    在 AMD/CMD 中,我们需要对不符合规范的模块(比如一些直接返回全局变量的插件)进行 shim 处理,这时候我们需要使用 exports-loader 来帮忙:

    { test: require.resolve("./src/js/tool/swipe.js"),  loader: "exports?swipe"}

    之后在脚本中需要引用该模块的时候,这么简单地来使用就可以了:

    require('./tool/swipe.js');
    swipe();

    二. 自定义公共模块提取

    在文章开始我们使用了 CommonsChunkPlugin 插件来提取多个页面之间的公共模块,并将该模块打包为 common.js 。

    但有时候我们希望能更加个性化一些,我们可以这样配置:

    复制代码

    var CommonsChunkPlugin = require("webpack/lib/optimize/CommonsChunkPlugin");
    module.exports = {
        entry: {
            p1: "./page1",
            p2: "./page2",
            p3: "./page3",
            ap1: "./admin/page1",
            ap2: "./admin/page2"
        },
        output: {
            filename: "[name].js"
        },
        plugins: [        new CommonsChunkPlugin("admin-commons.js", ["ap1", "ap2"]),        new CommonsChunkPlugin("commons.js", ["p1", "p2", "admin-commons.js"])
        ]
    };// <script>s required:// page1.html: commons.js, p1.js// page2.html: commons.js, p2.js// page3.html: p3.js// admin-page1.html: commons.js, admin-commons.js, ap1.js// admin-page2.html: commons.js, admin-commons.js, ap2.js

    复制代码

    三. 独立打包样式文件

    有时候可能希望项目的样式能不要被打包到脚本中,而是独立出来作为.css,然后在页面中以<link>标签引入。这时候我们需要 extract-text-webpack-plugin 来帮忙:

    复制代码

        var webpack = require('webpack');    var commonsPlugin = new webpack.optimize.CommonsChunkPlugin('common.js');    var ExtractTextPlugin = require("extract-text-webpack-plugin");
    
        module.exports = {
            plugins: [commonsPlugin, new ExtractTextPlugin("[name].css")],
            entry: {        //...省略其它配置

    复制代码

    最终 webpack 执行后会乖乖地把样式文件提取出来:

    fff.png


    四. 使用CDN/远程文件

    有时候我们希望某些模块走CDN并以<script>的形式挂载到页面上来加载,但又希望能在 webpack 的模块中使用上。

    这时候我们可以在配置文件里使用 externals 属性来帮忙:

    复制代码

    {
        externals: {        // require("jquery") 是引用自外部模块的
            // 对应全局变量 jQuery
            "jquery": "jQuery"
        }
    }

    复制代码

    需要留意的是,得确保 CDN 文件必须在 webpack 打包文件引入之前先引入。

    我们倒也可以使用 script.js 在脚本中来加载我们的模块:

    var $script = require("scriptjs");
    $script("//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js", function() {
      $('body').html('It works!')
    });

    五. 与 grunt/gulp 配合

    以 gulp 为示例,我们可以这样混搭:

    复制代码

    gulp.task("webpack", function(callback) {    // run webpack    webpack({        // configuration
        }, function(err, stats) {        if(err) throw new gutil.PluginError("webpack", err);
            gutil.log("[webpack]", stats.toString({            // output options        }));
            callback();
        });
    });

    复制代码

    当然我们只需要把配置写到 webpack({ ... }) 中去即可,无须再写 webpack.config.js 了。

    更多参照信息请参阅:grunt配置 / gulp配置 。

    六. React 相关

    ⑴ 推荐使用 npm install react 的形式来安装并引用 React 模块,而不是直接使用编译后的 react.js,这样最终编译出来的 React 部分的脚本会减少 10-20 kb左右的大小。

    ⑵ react-hot-loader 是一款非常好用的 React 热插拔的加载插件,通过它可以实现修改-运行同步的效果,配合 webpack-dev-server 使用更佳!

     

    基于 webpack 的入门指引就到这里,希望本文能对你有所帮助,你也可以参考下述的文章来入门:

    webpack入门指谜

    webpack-howto

    共勉~

    ,220)/}

    入门,指南,
    2017-10-28

    1247

  • 使用Sass Maps 的技术普及知识
    使用Sass Maps 的技术普及知识

    Sass的第三个版本给我们带来了新的数据类型,叫做map。虽然你可以不知道这个名称,但在其他的语言中我们使用过map,通常就是关联数组。换句话说,Sass的map就是用关键名匹配对应值的一个数组。不清楚为什么在CSS中为什么要使用map(Sass也是CSS),因此这篇文章将告诉你为什么?这个列表虽然不能面面俱到可以随意查找和分享其他用例。Sass Maps的语法在开始之前,让大家在同一个水平上开始讨论这个话题。Sass的map使用一个括号,并用冒号将键值与值分隔开来,并且使用逗号将一对键值/值隔开。下面是一个有效的Sass的map:$map: (   key: value

    使用,普及,知识,技术,
    2017-10-28

    800

  • 什么是Source map?.Map文件是什么,它的作用是什么?JQurey中的Source map使用技术放松
    什么是Source map?.Map文件是什么,它的作用是什么?JQurey中的Source map使用技术放松

        JavaScript脚本正变得越来越复杂。大部分源码(尤其是各种函数库和框架)都要经过转换,才能投入生产环境。    常见的源码转换,主要是以下三种情况:        1.压缩,减小体积。比如jQuery 1.9的源码,压缩前是252KB,压缩后是32KB。        2.多个文件合并,减少HTTP请求数。        3.其他语言编译成JavaScript。最常见的例子就是CoffeeScript。    这三种情况,都使得实际运行的代码不同于开发代码,除错(debug)变得困难重重。    通常,JavaScript的解释器会告诉你,第几行第几列代码出错。但是,这对于转换后的代码毫无用处。举例来说,jQuery 1.9压缩后只有3行,每行3万个字符,所有内部变量都改了名字。你看着报错信息,感到毫无头绪,根本不知道它所对应的原始位置。    这就是Source map想要解决的问题。什么是Source map    简单说,Source map就是一个信息文件,里面储存着位置信息。也就是说,转换后的代码的每一个位置,所对应的转换前的位置。    有了它,出错的时候,除错工具将直接显示原始代码,而不是转换后的代码。这无疑给开发者带来了很大方便。    目前,暂时只有Chrome浏览器支持这个功能。在Developer Tools的Setting设置中,确认选中"Enable source maps"。 你可以在系统设置中或自动压缩配置中设置是否为JS文件生成Map文件当然,你可以了解JSCompress为你提供的另一个功能:JSCompress.ISAPI.FilterJSFile介绍与使用补充阅读:2013年1月份,jQuery 1.9发布。这是2.0版之前的最后一个新版本,有很多新功能,其中一个就是支持Source Map。访问 http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js,打开压缩后的版本,滚动到底部,你可以看到最后一行是这样的: //@ sourceMappingURL=jquery.min.map这就是Source Map。它是一个独立的map文件,与源码在同一个目录下,你可以点击进去,看看它的样子。这是一个很有用的功能,本文将详细讲解这个功能。一、从源码转换讲起JavaScript脚本正变得越来越复杂。大部分源码(尤其是各种函数库和框架)都要经过转换,才能投入生产环境。常见的源码转换,主要是以下三种情况:压缩,减小体积。比如jQuery 1.9的源码,压缩前是252KB,压缩后是32KB。多个文件合并,减少HTTP请求数。其他语言编译成JavaScript。最常见的例子就是CoffeeScript。这三种情况,都使得实际运行的代码不同于开发代码,除错(debug)变得困难重重。通常,JavaScript的解释器会告诉你,第几行第几列代码出错。但是,这对于转换后的代码毫无用处。举例来说,jQuery 1.9压缩后只有3行,每行3万个字符,所有内部变量都改了名字。你看着报错信息,感到毫无头绪,根本不知道它所对应的原始位置。这就是Source map想要解决的问题。二、什么是Source map简单说,Source map就是一个信息文件,里面储存着位置信息。也就是说,转换后的代码的每一个位置,所对应的转换前的位置。有了它,出错的时候,除错工具将直接显示原始代码,而不是转换后的代码。这无疑给开发者带来了很大方便。目前,暂时只有Chrome浏览器支持这个功能。在Developer Tools的Setting设置中,确认选中"Enable source maps"。 三、如何启用Source map正如前文所提到的,只要在转换后的代码尾部,加上一行就可以了。//@ sourceMappingURL=/path/to/file.js.mapmap文件可以放在网络上,也可以放在本地文件系统。四、如何生成Source map最常用的方法是使用Google的Closure编译器。生成命令的格式如下:java -jar compiler.jar \       --js script.js \      --create_source_map ./script-min.js.map \      --source_map_format=V3 \      --js_output_file script-min.js各个参数的意义如下:- js: 转换前的代码文件- create_source_map: 生成的source map文件- source_map_format:source map的版本,目前一律采用V3。- js_output_file: 转换后的代码文件。其他的生成方法可以参考这篇文章。五、Source map的格式打开Source map文件,它大概是这个样子:{      version : 3

    使用,作用,文件,放松,技术
    2017-10-28

    9430

  • 第一时间:网页开发者如何为iPhone X进行样式优化
    第一时间:网页开发者如何为iPhone X进行样式优化

    由于iPhone X手机上方有一个集成各种传感器的“刘海”,网页设计行者和开发者都为此深深忧虑。幸好,

    开发者,一时间,如何,样式,网页
    2017-09-23

    194

  • 微软dotNET下的MVC架构源码即时编辑生效方法
    微软dotNET下的MVC架构源码即时编辑生效方法

    基于MVC混合架构动态页面,常常会造成不能即时修改生效。有一个技巧是编辑页面头部第一行,如下面的代码:<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="AddModelField.aspx.cs" Inherits="ZoomLaCMS.Manag

    生效,源码,方法,编辑,即时
    2017-04-19

    2550

  • 如何实现会员注册时精准会员组传值(实现注册会员组的绑定)
    如何实现会员注册时精准会员组传值(实现注册会员组的绑定)

    如上图,一个系统,有N个会员组,比如:普通会员、企业会员注册时,能否精确的让注册者的链接准确传到指定组?这一切在逐浪CMS就非常简单,只要在注册页面进行传值绑定,方法是:/User/Register?gid=[GroupID]其中[GroupID]是变量,只要填入会员组ID就可以了,如:/User/Register?gid=1/User/Register?gid=2即能实现自动传值。扩展使用:可以将“用户类型”表单进行隐藏,而根据注册链

    会员注册,会员组,实现,注册,如何
    2016-12-08

    2836

  • Adobe XD打开的五种方式-Adobe Experience Design CC
    Adobe XD打开的五种方式-Adobe Experience Design CC

    看过《码农与产品经理看过来-教你用Adobe Xd轻松做原型设计》http://www.z01.com/blog/techs/3080.shtml  的网友们通过本文会更好的了解如何打开Adobe XD程序进行设计。 

    2016-11-18

    7286