期权知识 第603页

  • CSS 的空格处理

    CSS 的空格处理

    一、空格规则 HTML 代码的空格通常会被浏览器忽略。 <p>◡◡hello◡◡world◡◡</p> 上面是一行 HTML 代码,文字的前部、内部和后部各有两个空格。为了便于识别,这里使用半圆形符号◡表示空格。 浏览器的输出结果如下。 hello world 可以看到,文字的前部和后部的空格都会忽略,内部的连续空格只会算作一个。这就是浏览器处理空格的基本规则。 如果希望空格原样输出,可以使用<pre>标签。 <pre>◡◡hello...

    期权知识 2020-08-18 471 0
  • SVG 图像入门教程

    SVG 图像入门教程

    一、概述 SVG 是一种基于 XML 语法的图像格式,全称是可缩放矢量图(Scalable Vector Graphics)。其他图像格式都是基于像素处理的,SVG 则是属于对图像的形状描述,所以它本质上是文本文件,体积较小,且不管放大多少倍都不会失真。 SVG 文件可以直接插入网页,成为 DOM 的一部分,然后用 JavaScript 和 CSS 进行操作。 <!DOCTYPE html> <html> <head></head> <body&...

    期权知识 2020-08-18 443 0
  • 如何降低软件的复杂性?

    如何降低软件的复杂性?

    John Ousterhout 是斯坦福大学计算机系教授,也是 Tcl 语言的创造者。 今年四月,他出版了一本新书《软件设计的哲学》(A Philosophy of Software Design)。这是课程讲稿,160多页,亚马逊全部是五星好评。 我还没读这本书,但是我看了作者在谷歌的一次演讲(Youtube),介绍了这本书的主要内容。我觉得非常值得看,大部分书教你怎么写正确的代码,这本书教你如何正确设计软件。 下面我就根据演讲视频和网上的书评,做一下笔记。 一、什么是复杂性 Ouste...

    期权知识 2020-08-18 505 0
  • Vim 配置入门

    Vim 配置入门

    Vim 是最重要的编辑器之一,主要有下面几个优点。 可以不使用鼠标,完全用键盘操作。 系统资源占用小,打开大文件毫无压力。 键盘命令变成肌肉记忆以后,操作速度极快。 服务器默认都安装 Vi 或 Vim。 Vim 的配置不太容易,它有自己的语法,许许多多的命令。我总是记不清楚,所以就整理了下面这篇文章,列出主要配置项的含义。 一、基础知识 Vim 的全局配置一般在/etc/vim/vimrc或者/etc/vimrc,对所有用户生效。用户个人的配置在~/.vimrc。 如果只对单...

    期权知识 2020-08-18 450 0
  • 命令行通配符教程

    命令行通配符教程

    一次性操作多个文件时,命令行提供通配符(wildcards),用一种很短的文本模式(通常只有一个字符),简洁地代表一组路径。 通配符又叫做 globbing patterns。因为 Unix 早期有一个/etc/glob文件保存通配符模板,后来 Bash 内置了这个功能,但是这个名字被保留了下来。 通配符早于正则表达式出现,可以看作是原始的正则表达式。它的功能没有正则那么强大灵活,但是胜在简单和方便。 本文介绍 Bash 的各种通配符。 一、? 字符 ?字符代表单个字符。 # 存在文件 a.t...

    期权知识 2020-08-18 464 0
  • RESTful API 最佳实践

    RESTful API 最佳实践

    RESTful 是目前最流行的 API 设计规范,用于 Web 数据接口的设计。 它的大原则容易把握,但是细节不容易做对。本文总结 RESTful 的设计细节,介绍如何设计出易于理解和使用的 API。 一、URL 设计 1.1 动词 + 宾语 RESTful 的核心思想就是,客户端发出的数据操作指令都是"动词 + 宾语"的结构。比如,GET /articles这个命令,GET是动词,/articles是宾语。 动词通常就是五种 HTTP 方法,对应 CRUD 操作。 GET:读取(Rea...

    期权知识 2020-08-18 497 0
  • Git 原理入门

    Git 原理入门

    Git 是最流行的版本管理工具,也是程序员的必备技能之一。 即使天天使用它,很多人也未必了解它的原理。Git 为什么可以管理版本?git add、git commit这些基本命令,到底在做什么,你说得清楚吗? 这篇文章用一个实例,解释 Git 的运行过程,帮助你理解 Git 的原理。 一、初始化 首先,让我们创建一个项目目录,并进入该目录。 $ mkdir git-demo-project $ cd git-demo-project 我们打算对该项目进行版本管理,第一件事就是使用git in...

    期权知识 2020-08-18 473 0
  • Page Visibility API 教程

    Page Visibility API 教程

    一、简介 有时候,开发者需要知道,用户正在离开页面。常用的方法是监听下面三个事件。 pagehide beforeunload unload 但是,这些事件在手机上可能不会触发,页面就直接关闭了。因为手机系统可以将一个进程直接转入后台,然后杀死。 用户点击了一条系统通知,切换到另一个 App。 用户进入任务切换窗口,切换到另一个 App。 用户点击了 Home 按钮,切换回主屏幕。 操作系统自动切换到另一个 App(比如,收到一个电话)。 上面这些情况,都会导致...

    期权知识 2020-08-18 494 0
  • Flexbox 布局的最简单表单

    Flexbox 布局的最简单表单

    弹性布局(Flexbox)逐渐流行,越来越多人使用,因为它写 CSS 布局真是太方便了。 三年前,我写过 Flexbox 的介绍(上,下),但是有些地方写得不清楚。今天,我看到一篇教程,才意识到一个最简单的表单,就可以解释 Flexbox,而且内容还很实用。 下面,你只需要10分钟,就可以学会简单的表单布局。 一、<form> 元素 表单使用<form>元素。 <form></form> 上面是一个空表单。根据 HTML 标准,它是一个块级元素,默...

    期权知识 2020-08-18 488 0
  • Page Lifecycle API 教程

    Page Lifecycle API 教程

    两周前,我介绍了 Page Visibility API。有了它,就可以监听各种情况的网页卸载。 但是,它没有解决一个问题。Android、iOS 和最新的 Windows 系统可以随时自主地停止后台进程,及时释放系统资源。也就是说,网页可能随时被系统丢弃掉。Page Visibility API 只在网页对用户不可见时触发,至于网页会不会被系统丢弃掉,它就无能为力了。 为了解决这个问题,W3C 新制定了一个 Page Lifecycle API,统一了网页从诞生到卸载的行为模式,并且定义了新的事件,允许开发...

    期权知识 2020-08-18 442 0