From ca7d2005980a5614edb4da3db389a22def4d02a9 Mon Sep 17 00:00:00 2001
From: sofish
Date: Fri, 23 Mar 2012 09:51:37 +0800
Subject: [PATCH 001/116] fixed font appearances on windows7
---
typo.css | 7 ++++---
typo.html | 1 -
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/typo.css b/typo.css
index 98e7ad3..566982e 100644
--- a/typo.css
+++ b/typo.css
@@ -28,7 +28,7 @@ audio, canvas, video {
/* 要注意表单元素并不继承父级 font 的问题 */
body, button, input, select, textarea {
- font: 100%/1.5 serif;
+ font: 100%/1.5 Verdana, "Microsoft Yahei";
}
input, select, textarea {
@@ -101,7 +101,7 @@ caption, th {
/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
h1, h2, h3, h4, h5, h6 {
- font: 100%/1 Arial, sans-serif;
+ font: 100%/1 Verdana, sans-serif;
}
q:before, q:after {
@@ -149,7 +149,7 @@ mark {
/* 代码片断 */
pre, code {
- font-family: 'Courier New', serif;
+ font-family: 'Courier New', Courier, serif;
}
pre {
border: 1px solid #ddd;
@@ -194,6 +194,7 @@ small {
/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
.typo h1, .typo h2, .typo h3, .typo h4, .typo h5, .typo h6 {
+ font: 100%/1 Verdana, "STXihei", Hei, "WenQuanYi Micro Hei", "Microsoft Yahei", sans-serif;
margin: 1.4em 0 0.8em;
}
.typo h1 {
diff --git a/typo.html b/typo.html
index c82570d..3d2ffdd 100644
--- a/typo.html
+++ b/typo.html
@@ -361,7 +361,6 @@ 1、TYPO.CSS 排版偏重点
2、开源许可
TYPO.CSS 基于 MIT License 开源,使用代码只需说明来源,或者引用 license.txt 即可。
-
From 2fa970c7d36fe4395531e4b9d052158cf91e3306 Mon Sep 17 00:00:00 2001
From: sofish
Date: Fri, 23 Mar 2012 10:06:14 +0800
Subject: [PATCH 002/116] update compliant table
---
typo.css | 2 +-
typo.html | 42 +++++++++++++++++++++---------------------
2 files changed, 22 insertions(+), 22 deletions(-)
diff --git a/typo.css b/typo.css
index 566982e..ec6bbe9 100644
--- a/typo.css
+++ b/typo.css
@@ -28,7 +28,7 @@ audio, canvas, video {
/* 要注意表单元素并不继承父级 font 的问题 */
body, button, input, select, textarea {
- font: 100%/1.5 Verdana, "Microsoft Yahei";
+ font: 100%/1.5 Georgia, "Microsoft Yahei", serif;
}
input, select, textarea {
diff --git a/typo.html b/typo.html
index 3d2ffdd..ae46020 100644
--- a/typo.html
+++ b/typo.html
@@ -59,10 +59,10 @@ 现状和如何去做:
Mac OS X
- -
- -
- -
- -
+ √
+ √
+ √
+ √
-
-
-
@@ -70,32 +70,32 @@ 现状和如何去做:
Windows 7
- -
- -
- -
- -
- -
- -
- -
+ √
+ √
+ √
+ √
+ √
+ √
+ √
-
Windows XP
+ √
+ √
+ √
+ √
-
- -
- -
- -
- -
- -
- -
- -
+ √
+ √
+ √
Ubuntu Linux
+ √
+ √
-
- -
- -
- -
+ √
-
-
-
From 0aba65d18aed8c715a457d816ee7b7f7ea29f985 Mon Sep 17 00:00:00 2001
From: sofish
Date: Fri, 23 Mar 2012 23:08:06 +0800
Subject: [PATCH 003/116] change georgia to Times New Roman
---
typo.css | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/typo.css b/typo.css
index ec6bbe9..8817e73 100644
--- a/typo.css
+++ b/typo.css
@@ -28,7 +28,7 @@ audio, canvas, video {
/* 要注意表单元素并不继承父级 font 的问题 */
body, button, input, select, textarea {
- font: 100%/1.5 Georgia, "Microsoft Yahei", serif;
+ font: 100%/1.5 "Times New Roman", "Microsoft Yahei", serif;
}
input, select, textarea {
From 440c89d0788b5362236587afd2d653900726a7e4 Mon Sep 17 00:00:00 2001
From: sofish
Date: Fri, 23 Mar 2012 23:10:21 +0800
Subject: [PATCH 004/116] change font in mac osx
---
typo.css | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/typo.css b/typo.css
index 8817e73..cee5222 100644
--- a/typo.css
+++ b/typo.css
@@ -194,7 +194,7 @@ small {
/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
.typo h1, .typo h2, .typo h3, .typo h4, .typo h5, .typo h6 {
- font: 100%/1 Verdana, "STXihei", Hei, "WenQuanYi Micro Hei", "Microsoft Yahei", sans-serif;
+ font: 100%/1 Verdana, "WenQuanYi Micro Hei", "Microsoft Yahei", sans-serif;
margin: 1.4em 0 0.8em;
}
.typo h1 {
From 9fc15ecf809c89da48126dde1f371162962a9164 Mon Sep 17 00:00:00 2001
From: sofish
Date: Wed, 4 Apr 2012 21:32:03 +0800
Subject: [PATCH 005/116] =?UTF-8?q?fix=20table=20=E4=B8=AD=20margin=20?=
=?UTF-8?q?=E5=80=BC=E6=9C=AA=E8=AE=BE=20bug?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
typo.css | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/typo.css b/typo.css
index cee5222..20d8ccc 100644
--- a/typo.css
+++ b/typo.css
@@ -188,7 +188,7 @@ small {
}
/* 现代排版:保证块/段落之间的空白隔行 */
-.typo p, .typo pre, .typo ul, .typo ol, .typo dl, .typo form, .typo hr {
+.typo p, .typo pre, .typo ul, .typo ol, .typo dl, .typo form, .typo hr, .typo table {
margin: 0.6em 0 1em;
}
From e8ed24f59bbf2fea4f81838269aeb3741bcebe47 Mon Sep 17 00:00:00 2001
From: sofish
Date: Tue, 10 Apr 2012 16:46:23 +0800
Subject: [PATCH 006/116] make typo element available outside .typo class
---
typo.css | 32 +++++++++++++++++---------------
1 file changed, 17 insertions(+), 15 deletions(-)
diff --git a/typo.css b/typo.css
index 20d8ccc..ccaadc3 100644
--- a/typo.css
+++ b/typo.css
@@ -188,63 +188,65 @@ small {
}
/* 现代排版:保证块/段落之间的空白隔行 */
-.typo p, .typo pre, .typo ul, .typo ol, .typo dl, .typo form, .typo hr, .typo table {
+.typo p, .typo pre, .typo ul, .typo ol, .typo dl, .typo form, .typo hr, .typo table,
+.typo-p, .typo-pre, .typo-ul, .typo-ol, .typo-dl, .typo-form, .typo-hr, .typo-table {
margin: 0.6em 0 1em;
}
/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
-.typo h1, .typo h2, .typo h3, .typo h4, .typo h5, .typo h6 {
+.typo h1, .typo h2, .typo h3, .typo h4, .typo h5, .typo h6,
+.typo-h1, .typo-h2, .typo-h3, .typo-h4, .typo-5, .typo-h6 {
font: 100%/1 Verdana, "WenQuanYi Micro Hei", "Microsoft Yahei", sans-serif;
margin: 1.4em 0 0.8em;
}
-.typo h1 {
+.typo h1, .typo-h1 {
font-size: 1.8em;
}
-.typo h2 {
+.typo h2, .typo-h2 {
font-size: 1.6em;
}
-.typo h3 {
+.typo h3, .typo-h3 {
font-size: 1.4em;
}
-.typo h4 {
+.typo h4, .typo-h4 {
font-size: 1.2em;
}
-.typo h5, .typo h6 {
+.typo h5, .typo h6, .typo-h5, .typo-h6 {
font-size: 1em;
}
/* 在文章中,应该还原 ul 和 ol 的样式 */
-.typo ul {
+.typo ul, .typo-ul {
margin-left: 1.3em;
list-style: disc;
}
-.typo ol {
+.typo ol, .typo-ol {
list-style: decimal;
margin-left: 1.9em;
}
-.typo li ul, .typo li ol {
+.typo li ul, .typo li ol, .typo-ul ul, .typo-ul ol, .typo-ol ul, .typo-ol ol {
margin-top: 0;
margin-bottom: 0;
margin-left: 2em;
}
-.typo li ul {
+.typo li ul, .typo-ul ul, .typo-ol ul {
list-style: circle;
}
/* 同 ul/ol,在文章中应用 table 基本格式 */
-.typo table th, .typo table td {
+.typo table th, .typo table td, .typo-table th, .typo-table td {
border: 1px solid #ddd;
padding: 5px 10px;
}
-.typo table th {
+.typo table th, .typo-table th {
background: #fbfbfb;
}
-.typo table thead th {
+.typo table thead th, .typo-table thead th {
background: #f1f1f1;
}
/* TODO: 供着重号使用 */
-.typo-em {
+.typo-em, .typo em {
font-weight: 700;
}
From 4ee5580321f55a9394e3ba8bf2a9363902c485d1 Mon Sep 17 00:00:00 2001
From: sofish
Date: Tue, 10 Apr 2012 18:03:40 +0800
Subject: [PATCH 007/116] make headline more elegant in IE
---
typo.css | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/typo.css b/typo.css
index ccaadc3..49dc758 100644
--- a/typo.css
+++ b/typo.css
@@ -196,8 +196,9 @@ small {
/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
.typo h1, .typo h2, .typo h3, .typo h4, .typo h5, .typo h6,
.typo-h1, .typo-h2, .typo-h3, .typo-h4, .typo-5, .typo-h6 {
- font: 100%/1 Verdana, "WenQuanYi Micro Hei", "Microsoft Yahei", sans-serif;
+ font: 100%/1 Verdana, "Microsoft Yahei", "WenQuanYi Micro Hei", sans-serif;
margin: 1.4em 0 0.8em;
+ font-weight: 700/9;
}
.typo h1, .typo-h1 {
font-size: 1.8em;
From 7bd6334b180ef7f42721bae8d793406f3e9e38ef Mon Sep 17 00:00:00 2001
From: sofish
Date: Sat, 28 Apr 2012 17:03:21 +0800
Subject: [PATCH 008/116] remove serif, fallback font to system
---
typo.css | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/typo.css b/typo.css
index 49dc758..9c1656d 100644
--- a/typo.css
+++ b/typo.css
@@ -28,7 +28,7 @@ audio, canvas, video {
/* 要注意表单元素并不继承父级 font 的问题 */
body, button, input, select, textarea {
- font: 100%/1.5 "Times New Roman", "Microsoft Yahei", serif;
+ font: 100%/1.5 Arial, "Microsoft Yahei";
}
input, select, textarea {
@@ -101,7 +101,7 @@ caption, th {
/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
h1, h2, h3, h4, h5, h6 {
- font: 100%/1 Verdana, sans-serif;
+ font: 100% Arial, 'Microsoft Yahei', sans-serif;
}
q:before, q:after {
@@ -196,7 +196,7 @@ small {
/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
.typo h1, .typo h2, .typo h3, .typo h4, .typo h5, .typo h6,
.typo-h1, .typo-h2, .typo-h3, .typo-h4, .typo-5, .typo-h6 {
- font: 100%/1 Verdana, "Microsoft Yahei", "WenQuanYi Micro Hei", sans-serif;
+ font: 100%/1 Arial, "Microsoft Yahei", sans-serif;
margin: 1.4em 0 0.8em;
font-weight: 700/9;
}
From b53f634254aeae7866fa4038215f7dfc3120cd8b Mon Sep 17 00:00:00 2001
From: sofish
Date: Sat, 28 Apr 2012 17:06:22 +0800
Subject: [PATCH 009/116] change default font-size to 14px
---
typo.css | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/typo.css b/typo.css
index 9c1656d..c9cae79 100644
--- a/typo.css
+++ b/typo.css
@@ -28,7 +28,7 @@ audio, canvas, video {
/* 要注意表单元素并不继承父级 font 的问题 */
body, button, input, select, textarea {
- font: 100%/1.5 Arial, "Microsoft Yahei";
+ font: 14px/1.5 Arial, "Microsoft Yahei";
}
input, select, textarea {
From a8e56684bfce334de69b50c37b0db3686eeac210 Mon Sep 17 00:00:00 2001
From: sofish
Date: Sat, 28 Apr 2012 17:11:31 +0800
Subject: [PATCH 010/116] change SMALL to 12px
---
typo.css | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/typo.css b/typo.css
index c9cae79..05a89ee 100644
--- a/typo.css
+++ b/typo.css
@@ -28,7 +28,7 @@ audio, canvas, video {
/* 要注意表单元素并不继承父级 font 的问题 */
body, button, input, select, textarea {
- font: 14px/1.5 Arial, "Microsoft Yahei";
+ font: 14px/1.5 Verdana, "Microsoft Yahei";
}
input, select, textarea {
@@ -101,7 +101,7 @@ caption, th {
/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
h1, h2, h3, h4, h5, h6 {
- font: 100% Arial, 'Microsoft Yahei', sans-serif;
+ font: 100% Verdana, 'Microsoft Yahei', sans-serif;
}
q:before, q:after {
@@ -160,7 +160,7 @@ pre {
/* 底部印刷体、版本等标记 */
small {
- font-size: 0.8em;
+ font-size: 12px;
color: #888;
}
@@ -196,7 +196,7 @@ small {
/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
.typo h1, .typo h2, .typo h3, .typo h4, .typo h5, .typo h6,
.typo-h1, .typo-h2, .typo-h3, .typo-h4, .typo-5, .typo-h6 {
- font: 100%/1 Arial, "Microsoft Yahei", sans-serif;
+ font: 100%/1 Verdana, "Microsoft Yahei", sans-serif;
margin: 1.4em 0 0.8em;
font-weight: 700/9;
}
From 0aa5eb81ddb4bcc176292b52484cdaf0e45c89ca Mon Sep 17 00:00:00 2001
From: sofish
Date: Sat, 28 Apr 2012 17:13:49 +0800
Subject: [PATCH 011/116] change line-height to 1.8 when element show in .typo
---
typo.css | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/typo.css b/typo.css
index 05a89ee..54377a8 100644
--- a/typo.css
+++ b/typo.css
@@ -187,7 +187,9 @@ small {
zoom: 1
}
-/* 现代排版:保证块/段落之间的空白隔行 */
+.typo{line-height:1.8;}
+
+/* 保证块/段落之间的空白隔行 */
.typo p, .typo pre, .typo ul, .typo ol, .typo dl, .typo form, .typo hr, .typo table,
.typo-p, .typo-pre, .typo-ul, .typo-ol, .typo-dl, .typo-form, .typo-hr, .typo-table {
margin: 0.6em 0 1em;
From 323a2cb01816811f493f58491c49e1c8f5d02d3e Mon Sep 17 00:00:00 2001
From: sofish
Date: Tue, 1 May 2012 18:11:14 +0800
Subject: [PATCH 012/116] change font
---
typo.css | 12 ++++--------
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/typo.css b/typo.css
index 54377a8..a8c4300 100644
--- a/typo.css
+++ b/typo.css
@@ -28,7 +28,7 @@ audio, canvas, video {
/* 要注意表单元素并不继承父级 font 的问题 */
body, button, input, select, textarea {
- font: 14px/1.5 Verdana, "Microsoft Yahei";
+ font: 14px/1.5 "Hiragino Sans GB", "Microsoft Yahei";
}
input, select, textarea {
@@ -99,11 +99,6 @@ caption, th {
text-align: left;
}
-/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
-h1, h2, h3, h4, h5, h6 {
- font: 100% Verdana, 'Microsoft Yahei', sans-serif;
-}
-
q:before, q:after {
content: '';
}
@@ -149,7 +144,7 @@ mark {
/* 代码片断 */
pre, code {
- font-family: 'Courier New', Courier, serif;
+ font-family: 'Courier New', Courier, "Hiragino Sans GB";
}
pre {
border: 1px solid #ddd;
@@ -187,6 +182,7 @@ small {
zoom: 1
}
+/* TODO: 英文排版不是很好看 */
.typo{line-height:1.8;}
/* 保证块/段落之间的空白隔行 */
@@ -198,7 +194,7 @@ small {
/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
.typo h1, .typo h2, .typo h3, .typo h4, .typo h5, .typo h6,
.typo-h1, .typo-h2, .typo-h3, .typo-h4, .typo-5, .typo-h6 {
- font: 100%/1 Verdana, "Microsoft Yahei", sans-serif;
+ font: 100%/1 "Hiragino Sans GB", "Microsoft Yahei";
margin: 1.4em 0 0.8em;
font-weight: 700/9;
}
From 87d9d0d8cdca25524e14e5d82d7091f3700882d2 Mon Sep 17 00:00:00 2001
From: sofish
Date: Thu, 10 May 2012 09:31:11 +0800
Subject: [PATCH 013/116] add generic font
---
typo.css | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/typo.css b/typo.css
index a8c4300..d34d079 100644
--- a/typo.css
+++ b/typo.css
@@ -28,7 +28,7 @@ audio, canvas, video {
/* 要注意表单元素并不继承父级 font 的问题 */
body, button, input, select, textarea {
- font: 14px/1.5 "Hiragino Sans GB", "Microsoft Yahei";
+ font: 14px/1.5 "Hiragino Sans GB", "Microsoft Yahei", sans-serif;
}
input, select, textarea {
@@ -144,7 +144,7 @@ mark {
/* 代码片断 */
pre, code {
- font-family: 'Courier New', Courier, "Hiragino Sans GB";
+ font-family: "Courier New", Courier, "Hiragino Sans GB", monospace;
}
pre {
border: 1px solid #ddd;
@@ -194,7 +194,6 @@ small {
/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
.typo h1, .typo h2, .typo h3, .typo h4, .typo h5, .typo h6,
.typo-h1, .typo-h2, .typo-h3, .typo-h4, .typo-5, .typo-h6 {
- font: 100%/1 "Hiragino Sans GB", "Microsoft Yahei";
margin: 1.4em 0 0.8em;
font-weight: 700/9;
}
@@ -252,4 +251,4 @@ small {
/* TODO: 供首字下沉使用 */
.typo-first{
-}
\ No newline at end of file
+}
From e8725ed04d5a09ba327880cedeb1de66c7e18b48 Mon Sep 17 00:00:00 2001
From: sofish
Date: Thu, 10 May 2012 09:46:42 +0800
Subject: [PATCH 014/116] delete all
---
README.md | 48 -------
TODO.md | 11 --
license.txt | 22 ----
typo.css | 254 ------------------------------------
typo.html | 369 ----------------------------------------------------
5 files changed, 704 deletions(-)
delete mode 100644 README.md
delete mode 100644 TODO.md
delete mode 100644 license.txt
delete mode 100644 typo.css
delete mode 100644 typo.html
diff --git a/README.md b/README.md
deleted file mode 100644
index 5f04775..0000000
--- a/README.md
+++ /dev/null
@@ -1,48 +0,0 @@
-## 中文网页重设与排版:
-
-目标:一致化浏览器排版效果,构建最适合中文阅读的网页排版。包括桌面和移动平台。
-
- Alpha 中,各路牛人都来支持一下,加入开发啊!
-
-预览:[typo.css](http://typo.sofish.de)
-
-### 一、目录结构
- .
- ├── README.md --- 使用帮助
- ├── TODO.md --- TODO-List
- ├── license.txt --- 许可证
- ├── typo.css --- 将应用于你的项目
- └── typo.html --- Demo/预览
-
-
-### 二、TYPO.CSS 的设计和使用
-
-建议看源代码,特别是注释,需要认真看。`typo.css` 主要包括:
-
-1、一般 reset.css 所需的内容
-
-目前的设计是这样的,尽量保持完整的 reset,比如让 ul/ol 无样式并且无多余的 `padding`/`margin`,这是必须的,因为一个网可能需要很多自定义的的内容,在实践中我们并不希望像 ul/ol 有样式,这样我们得用优先级去覆盖,这是非常麻烦的事。所以 typo.css 并不像 normalize.css,后者给每一个元素都预先定义了样式,这样在自定义的时候将是非常痛苦的。要大保持干净的所有元素一致化的 reset 才是最佳实践。
-
-为什么不是 [Han](http://i.minus.com/iQInhZPgOlHEj.png) 这个项目?
-
-2、`class="typo"` 阅读内容排版
-
-在文章/文档阅读的页面,需添加 `.typo` 这个 class,这样 table/ol/ul 等都会有预定的样式,让你的排版像 [http://typo.sofish.de]() 一样,让用户阅读起来更舒服。
-
-3、增加类:
-
-主要是一些需要中文日常排版需要的元素和语文对应样式的增强,目前包括:
-
-(1) 专名号:使用标签 `` 或者 `.typo-u`
-(2) 着重号:使用 class `.typo-em`
-(3) 首字下沉:使用 class `.typo-first`
-(4) 清理浮动:与一般 reset.css 保持一致 `.clearfix`
-
-
-### 三、开源许可
-
-[Sofish Lin](http://sofish.de): founder, creator of [Alice CSS](http://aliceui.com), a code writter, a semi-designer.
-[Hotoo](https://github.com/hotoo): developer, VIM guru, front-end web developer @ alipay.com
-
-基于 [MIT License](http://zh.wikipedia.org/wiki/MIT_License) 开源,使用代码只需说明来源,或者引用 [license.txt](https://github.com/sofish/typo.css/blob/master/license.txt) 即可。
-
diff --git a/TODO.md b/TODO.md
deleted file mode 100644
index 9cb1d7e..0000000
--- a/TODO.md
+++ /dev/null
@@ -1,11 +0,0 @@
-- typo-em:着重号实现
-- typo-first: 首字下沉实现
-- 全局与 `typo` 的完整 demo 示例
-- 根据 `附录一` 做兼容性测试
-- IE 的 `sup` 和 `sub` 显示问题
-- radio / checkbox 居中测试
-- input 多余空白增强类
-- 示例三
-- getting start 文档
-- 参与开发文档
-- moblie 平台的测试
\ No newline at end of file
diff --git a/license.txt b/license.txt
deleted file mode 100644
index ed98731..0000000
--- a/license.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-TYPO.CSS - a better way to manage the typography of your Chinese-lang-base site.
-
-Copyright (C) 2012 Sofish Lin http://sofish.de
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of
-this software and associated documentation files (the "Software"), to deal in
-the Software without restriction, including without limitation the rights to
-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
-of the Software, and to permit persons to whom the Software is furnished to do
-so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
-
diff --git a/typo.css b/typo.css
deleted file mode 100644
index d34d079..0000000
--- a/typo.css
+++ /dev/null
@@ -1,254 +0,0 @@
-@charset "utf-8";
-
-/* 防止用户自定义背景颜色对网页的影响,添加让用户可以自定义字体 */
-html {
- color: #333;
- background: #fff;
- -webkit-text-size-adjust: 100%;
- -ms-text-size-adjust: 100%;
-}
-
-/* 内外边距通常让各个浏览器样式的表现位置不同 */
-body, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td, hr, button, article, aside, details, figcaption, figure, footer, header, group, menu, nav, section {
- margin: 0;
- padding: 0;
-}
-
-/* 重设 HTML5 标签, IE 需要在 js 中 createElement(TAG) */
-article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
- display: block;
-}
-
-/* HTML5 媒体文件跟 img 保持一致 */
-audio, canvas, video {
- display: inline-block;
- *display: inline;
- *zoom: 1;
-}
-
-/* 要注意表单元素并不继承父级 font 的问题 */
-body, button, input, select, textarea {
- font: 14px/1.5 "Hiragino Sans GB", "Microsoft Yahei", sans-serif;
-}
-
-input, select, textarea {
- font-size: 1em;
-}
-
-/* 去掉各Table cell 的边距并让其边重合 */
-table {
- border-collapse: collapse;
- border-spacing: 0;
-}
-
-/* IE bug fixed: th 不继承 text-align*/
-th {
- text-align: inherit;
-}
-
-/* 去除默认边框 */
-fieldset, img {
- border: 0;
-}
-
-/* ie6 7 8(q) bug 显示为行内表现 */
-iframe {
- display: block;
-}
-
-/* 块/段落引用 */
-blockquote {
- margin: 1em 4em 1em 2em;
- padding: 0.6em 1em;
- background: #f1f1f1;
-}
-blockquote blockquote {
- padding: 0 0 0 1em;
- margin-left: 2em;
- border-left: 0.4em solid #ddd;
-}
-
-/* Firefox 以外,元素没有下划线,需添加 */
-acronym, abbr {
- border-bottom: 1px dotted;
- font-variant: normal;
-}
-
-/* 添加鼠标问号,进一步确保应用的语义是正确的(要知道,交互他们也有洁癖,如果你不去掉,那得多花点口舌) */
-abbr {
- cursor: help;
-}
-
-/* 一致的 del 样式 */
-del {
- text-decoration: line-through;
-}
-
-address, caption, cite, code, den, em, th, var {
- font-style: normal;
- font-weight: 500;
-}
-
-/* 去掉列表前的标识, li 会继承,大部分网站通常用列表来很多内容,所以应该当去 */
-ul, ol {
- list-style: none;
-}
-
-/* 对齐是排版最重要的因素, 别让什么都居中 */
-caption, th {
- text-align: left;
-}
-
-q:before, q:after {
- content: '';
-}
-
-/* 统一上标和下标 */
-sub, sup {
- font-size: 75%;
- line-height: 0;
- position: relative;
- vertical-align: baseline;
-}
-sup {
- top: -0.5em;
-}
-sub {
- bottom: -0.25em;
-}
-
-/* 让链接在 hover 状态下显示下划线 */
-a:hover {
- text-decoration: underline;
-}
-
-/* 默认不显示下划线,保持页面简洁 */
-ins, a {
- text-decoration: none;
-}
-
-/* 专名号:虽然 u 已经重回 html5 Draft,但在所有浏览器中都是可以使用的,
- * 要做到更好,向后兼容的话,添加 class="typo-u" 来显示专名号
- * 关于 标签:http://www.whatwg.org/specs/web-apps/current-work/multipage/text-level-semantics.html#the-u-element
- * 被放弃的是 4,之前一直搞错 http://www.w3.org/TR/html401/appendix/changes.html#idx-deprecated
- * 一篇关于 标签的很好文章:http://html5doctor.com/u-element/
- */
-u, .typo-u {
- text-decoration: underline;
-}
-
-/* 标记,类似于手写的荧光笔的作用 */
-mark {
- background: #fffdd1;
-}
-
-/* 代码片断 */
-pre, code {
- font-family: "Courier New", Courier, "Hiragino Sans GB", monospace;
-}
-pre {
- border: 1px solid #ddd;
- border-left-width: 0.4em;
- background: #fbfbfb;
- padding: 10px;
-}
-
-/* 底部印刷体、版本等标记 */
-small {
- font-size: 12px;
- color: #888;
-}
-
-/* 清理浮动 */
-.clear {
- clear: both;
- display: block;
- overflow: hidden;
- visibility: hidden;
- width: 0;
- height: 0;
-}
-
-.clearfix:before, .clearfix:after {
- content: "";
- display: table;
-}
-
-.clearfix:after {
- clear: both
-}
-
-.clearfix {
- zoom: 1
-}
-
-/* TODO: 英文排版不是很好看 */
-.typo{line-height:1.8;}
-
-/* 保证块/段落之间的空白隔行 */
-.typo p, .typo pre, .typo ul, .typo ol, .typo dl, .typo form, .typo hr, .typo table,
-.typo-p, .typo-pre, .typo-ul, .typo-ol, .typo-dl, .typo-form, .typo-hr, .typo-table {
- margin: 0.6em 0 1em;
-}
-
-/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
-.typo h1, .typo h2, .typo h3, .typo h4, .typo h5, .typo h6,
-.typo-h1, .typo-h2, .typo-h3, .typo-h4, .typo-5, .typo-h6 {
- margin: 1.4em 0 0.8em;
- font-weight: 700/9;
-}
-.typo h1, .typo-h1 {
- font-size: 1.8em;
-}
-.typo h2, .typo-h2 {
- font-size: 1.6em;
-}
-.typo h3, .typo-h3 {
- font-size: 1.4em;
-}
-.typo h4, .typo-h4 {
- font-size: 1.2em;
-}
-.typo h5, .typo h6, .typo-h5, .typo-h6 {
- font-size: 1em;
-}
-
-/* 在文章中,应该还原 ul 和 ol 的样式 */
-.typo ul, .typo-ul {
- margin-left: 1.3em;
- list-style: disc;
-}
-.typo ol, .typo-ol {
- list-style: decimal;
- margin-left: 1.9em;
-}
-.typo li ul, .typo li ol, .typo-ul ul, .typo-ul ol, .typo-ol ul, .typo-ol ol {
- margin-top: 0;
- margin-bottom: 0;
- margin-left: 2em;
-}
-.typo li ul, .typo-ul ul, .typo-ol ul {
- list-style: circle;
-}
-
-/* 同 ul/ol,在文章中应用 table 基本格式 */
-.typo table th, .typo table td, .typo-table th, .typo-table td {
- border: 1px solid #ddd;
- padding: 5px 10px;
-}
-.typo table th, .typo-table th {
- background: #fbfbfb;
-}
-.typo table thead th, .typo-table thead th {
- background: #f1f1f1;
-}
-
-/* TODO: 供着重号使用 */
-.typo-em, .typo em {
- font-weight: 700;
-}
-
-/* TODO: 供首字下沉使用 */
-.typo-first{
-
-}
diff --git a/typo.html b/typo.html
deleted file mode 100644
index ae46020..0000000
--- a/typo.html
+++ /dev/null
@@ -1,369 +0,0 @@
-
-
-
-
-
-
- TYPO.CSS - 中文网页重设与排版
-
-
-
-
-
-
-
中文网页重设与排版:TYPO.CSS
-
一致化浏览器排版效果,构建最适合中文阅读的网页排版
-
-
- 关于 TYPO.CSS
- 排版实例
-
-
- 附录
-
- TYPO.CSS 排版偏重点
- 开源许可
-
-
-
-
-
一、关于 TYPO.CSS
-
TYPO.CSS 的目的是,在一致化浏览器排版效果的同时,构建最适合中文阅读的网页排版。
-
现状和如何去做:
-
排版是一个麻烦的问题,需要精心设计,而这个设计却是常被视觉设计师所忽略的。前端工程师更常看到这样的问题,但不便变更。因为在多个 OS 中的不同浏览器渲染不同,改动需要多的时间做回归测试,所以改变变得更困难。而像我们一般使用的 Yahoo、Eric Meyer 和 Alice base.css 中采用的 Reset 都没有很好地考虑中文排版。TYPO.CSS 要做的就是解决中文排版的问题。
-
TYPO.CSS 测试于如下平台:
-
-
-
- OS/浏览器
- Firefox
- Chrome
- Safari
- Opera
- IE9
- IE8
- IE7
- IE6
-
-
-
-
- Mac OS X
- √
- √
- √
- √
- -
- -
- -
- -
-
-
- Windows 7
- √
- √
- √
- √
- √
- √
- √
- -
-
-
- Windows XP
- √
- √
- √
- √
- -
- √
- √
- √
-
-
- Ubuntu Linux
- √
- √
- -
- √
- -
- -
- -
- -
-
-
-
-
-
中文排版的重点和难点
-
在中文排版中,HTML4 的很多标准在语义在都有照顾到。但从视觉效果上,却很难利用单独的 CSS 来实现,像着重号 。在 HTML4 中,着重号标签(<u>)已经被放弃,而 HTML5 被重新提起 。TYPO.CSS 也根据实际情况提供相应的方案。我们重要要注意的两点是:
-
- 语义:语义对应的用法和样式是否与中文排版一致
- 表现:在各浏览器中的字体、大小和缩放是否如排版预期
-
-
对于这些,TYPO.CSS 排版项目的中文偏重注意点,都添加在附录中,详见:
-
- 附录一 :TYPO.CSS 排版偏重点
-
-
-
目前仍处于 alpha 开发阶段,测试平台的覆盖,特别是在移动端 上还没有覆盖完主流平台,希望有能力的同学能加入测试行列,或者加入到 TYPO.CSS 的开发。加入方法:参与 TYPO.CSS 开发 。如有批评、建议和意见,也随时欢迎给在 Github 直接提 issues ,或给我 发邮件 。
-
-
-
二、排版实例:
-
提供2个排版实例,第一个中文实例来自于来自于张燕婴 的《论语》,由于古文排版涉及到的元素比较多,所以采用《论语》中《学而》的第一篇作为排版实例介绍;第2个来自到经典的 Lorem Ipsum,并加入了一些代码和列表等比较具有代表性的排版元素。
-
-
例1:论语学而篇第一
-
作者: 孔子 (前551年9月28日-前479年4月11日 )
-
-
本篇引语
-
《学而》是《论语》第一篇的篇名。《论语》中各篇一般都是以第一章的前二三个字作为该篇的篇名。《学而》一篇包括16章,内容涉及诸多方面。其中重点是“吾日三省吾身”;“节用而爱人,使民以时”;“礼之用,和为贵”以及仁、孝、信等道德范畴。
-
-
原文
-
子曰[1] :“学[2] 而时习[3] 之,不亦说[4] 乎?有朋[5] 自远方来,不亦乐[6] 乎?人不知[7] ,而不愠[8] ,不亦君子[9] 乎?”
-
-
注释
-
-
-[1] 子:中国古代对于有地位、有学问的男子的尊称,有时也泛称男子。《论语》书中“子曰”的子,都是指孔子而言。
-[2] 学:孔子在这里所讲的“学”,主要是指学习西周的礼、乐、诗、书等传统文化典籍。
-[3] 时习:在周秦时代,“时”字用作副词,意为“在一定的时候”或者“在适当的时候”。但朱熹在《论语集注》一书中把“时”解释为“时常”。“习”,指演习礼、乐;复习诗、书。也含有温习、实习、练习的意思。
-[4] 说:音yuè,同悦,愉快、高兴的意思。
-[5] 有朋:一本作“友朋”。旧注说,“同门曰朋”,即同在一位老师门下学习的叫朋,也就是志同道合的人。
-[6] 乐:与说有所区别。旧注说,悦在内心,乐则见于外。
-[7] 人不知:此句不完整,没有说出人不知道什么。缺少宾语。一般而言,知,是了解的意思。人不知,是说别人不了解自己。
-[8] 愠:音yùn,恼怒,怨恨。
-[9] 君子:《论语》书中的君子,有时指有德者,有时指有位者。此处指孔子理想中具有高尚人格的人。
-
-
-
-
译文
-
孔子说:“学了又时常温习和练习,不是很愉快吗?有志同道合的人从远方来,不是很令人高兴的吗?人家不了解我,我也不怨恨、恼怒,不也是一个有德的君子吗?”
-
-
评析
-
宋代著名学者朱熹 对此章评价极高,说它是“入道之门,积德之基”。本章这三句话是人们非常熟悉的。历来的解释都是:学了以后,又时常温习和练习,不也高兴吗等等。三句话,一句一个意思,前后句子也没有什么连贯性。但也有人认为这样解释不符合原义,指出这里的“学”不是指学习,而是指学说或主张;“时”不能解为时常,而是时代或社会的意思,“习”不是温习,而是使用,引申为采用。而且,这三句话不是孤立的,而是前后相互连贯的。这三句的意思是:自己的学说,要是被社会采用了,那就太高兴了;退一步说,要是没有被社会所采用,可是很多朋友赞同我 的学说,纷纷到我这里来讨论问题,我也感到快乐;再退一步说,即使社会不采用,人们也不理解我,我也不怨恨,这样做,不也就是君子吗?(见《齐鲁学刊》1986年第6期文)这种解释可以自圆其说,而且也有一定的道理,供读者在理解本章内容时参考。
-此外,在对“人不知,而不愠”一句的解释中,也有人认为,“人不知”的后面没有宾语,人家不知道什么呢?当时因为孔子有说话的特定环境,他不需要说出知道什么,别人就可以理解了,却给后人留下一个谜。有人说,这一句是接上一句说的,从远方来的朋友向我求教,我告诉他,他还不懂,我却不怨恨。这样,“人不知”就是“人家不知道我所讲述的”了。这样的解释似乎有些牵强。
-总之,本章提出以学习为乐事,做到人不知而不愠,反映出孔子学而不厌、诲人不倦、注重修养、严格要求自己的主张。这些思想主张在《论语》书中多处可见,有助于对第一章内容的深入了解。
-
-
-
例2:英文排版
-
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.
-
-"Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit…"
- "There is no one who loves pain itself, who seeks after it and wants to have it, simply because it is pain…"
- "There is no one who loves pain itself, who seeks after it and wants to have it, simply because it is pain…"
- "There is no one who loves pain itself, who seeks after it and wants to have it, simply because it is pain…"
-
-
-
-
The standard Lorem Ipsum passage, used since the 1500s
-
"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
-
-
Section 1.10.32 of "de Finibus Bonorum et Malorum", written by Cicero in 45 BC
-
"Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?"
-
-
List style in action
-
-
-
You may want to create a perfect <hr /> line, despite the fact that there will never have one
-
-
La Racheforcauld said: "Few things are impossible in themselves; and it is often for want of will ,rather than of means, that man fails to succeed". You just need to follow the browser's behavior, and set a right margin to it。it will works nice as the demo you're watching now. The following code is the best way to render typo in Chinese:
-
-/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
-h1,h2,h3,h4,h5,h6 {
- line-height:1;font-family:Arial,sans-serif;margin:1.4em 0 0.8em;
-}
-h1{font-size:1.8em;}
-h2{font-size:1.6em;}
-h3{font-size:1.4em;}
-h4{font-size:1.2em;}
-h5,h6{font-size:1em;}
-
-/* 现代排版:保证块/段落之间的空白隔行 */
-.typo p, .typo pre, .typo ul, .typo ol, .typo dl, .typo form, .typo hr{
- margin:1em 0 0.6em;
-}
-
-
-
三、附录
-
-
1、TYPO.CSS 排版偏重点
-
-
-
- 类型
- 语义
- 标签
- 注意点
-
-
-
-
- 基础标签
- 标题
- h1 ~ h6
- 全局不强制大小,.typo 中标题与其对应的内容应紧贴,并且有相应的大小设置
-
-
- 上、下标
- sup/sub
- 保持与 MicroSoft Office Word 等程序的日常排版一致
-
-
- 引用
- blockquote
- 显示/嵌套样式
-
-
- 缩写
- abbr
- 是否都有下划线,鼠标 hover 是否为帮助手势
-
-
- 分割线
- hr
- 显示的 padding 和 margin正确
-
-
- 列表
- ul/ol/dl
- 在全局没有 list-style,在 .typo 中对齐正确
-
-
- 定义列表
- dl
- 全局 padding 和 margin为0, .typo 中对齐正确
-
-
- 选项
- input[type=radio[, checkbox]]
- 与其他 form 元素排版时是否居中
-
-
- 斜体
- i
- 只设置一种斜体,让 em 和 cite 显示为正体
-
-
- 强调
- em
- 在全局显示正体,在 .typo 中显示与 b 和 strong 的样式一致,为粗休
-
-
- 加强
- strong/b
- 显示为粗体
-
-
- 标记
- mark
- 类似荧光笔
-
-
- 印刷
- small
- 保持为正确字体的 80% 大小,颜色设置为浅灰色
-
-
- 表格
- table
- 全局不显示线条,在 table 中显示表格外框,并且表头有浅灰背景
-
-
- 代码
- pre/code
- 字体使用 courier 系字体,保持与 serif 有比较一致的显示效果
-
-
- 特殊符号
- 着重号
- 在文字下加点(•)
- 在支持 :after 和 :before 的浏览器可以做渐进增强实现
-
-
- 专名号
- 林建锋
- 专名号,有下划线,使用 u 或都 .typo-u 类
-
-
- 破折号
- ——
- 保持一划,而非两划
-
-
- 人民币
- ¥
- 使用两平等线的符号,或者 HTML 实体符号 ¥
-
-
- 删除符
- 已删除(deleted)
- 一致化各浏览器显示,中英混排正确
-
-
- 加强类
- 专名号
- .typo-u
- 由于 u 被 HTML4 放弃,在向后兼容上推荐使用
-
-
- 着重符
- .typo-em
- 利用 :after 和 :before 实现着重符
-
-
- 首字下沉
- .typo-first
- 特殊排版
-
-
- 清除浮动
- .clearfix
- 与一般 CSS Reset 保持一对致 API
-
-
- 注意点
- (1)中英文混排行高/行距
-
-
- (2)上下标在 IE 中显示效果
-
-
- (3)块/段落分割空白是否符合设计原则
-
-
- (4)input 多余空间问题
-
-
- (5)默认字体色彩,目前采用 #333 在各种浏览显示比较好
-
-
-
-
-
2、开源许可
-
TYPO.CSS 基于 MIT License 开源,使用代码只需说明来源,或者引用 license.txt 即可。
-
-
-
-
-
-
-
From 38605e6ce1be74477f3c6eb9f4d7c1fe59a45578 Mon Sep 17 00:00:00 2001
From: sofish
Date: Thu, 10 May 2012 09:47:15 +0800
Subject: [PATCH 015/116] find back
---
.DS_Store | Bin 0 -> 6148 bytes
README.md | 48 +++++++
TODO.md | 11 ++
license.txt | 22 ++++
typo.css | 254 ++++++++++++++++++++++++++++++++++++
typo.html | 369 ++++++++++++++++++++++++++++++++++++++++++++++++++++
6 files changed, 704 insertions(+)
create mode 100644 .DS_Store
create mode 100644 README.md
create mode 100644 TODO.md
create mode 100644 license.txt
create mode 100644 typo.css
create mode 100644 typo.html
diff --git a/.DS_Store b/.DS_Store
new file mode 100644
index 0000000000000000000000000000000000000000..aa4a868792219ef1245b7fd13a1b4c727dd85091
GIT binary patch
literal 6148
zcmeHK!Ab)$5PhQ+xAfAZ$DBPB{DZY@4<4kTo<+J96t=F=3VPeG@RR&3>zgD>md2}y
z&cNhNk~i7xgH3h-$n0*nC^bVbo1V>+Cj+Kc1^qWCo)u*NMW*x)&{&~F^ly^qk~
z9yNEK?tgREwDqEC7i3T#IVN7yWxHhy3~_-OPEp~UIKc|bOvYQ1afmC-$)A76mPx`c
zsNxGA(UM(L*Y)n|@|y663IC4q3QZ>CJ;`8bW(t@BrhqB%4;A2@tyYWzT5AfJ0;a&1
z0(w3;x?&lz3+RsyHogQP4mj+MvDOlr<06(3yMUabNk}DzREZ^qgmjL($SWgu0Yf?@
z79SFy{8_w+e>&H9o(?GkT5AfJ0(}McLwBtA|BRnZw#e_NSkDwN1^$=-ADPJny
ztvj!$cdet}(AAXJX+UG#`w3u2&ygcP8RnhF` 或者 `.typo-u`
+(2) 着重号:使用 class `.typo-em`
+(3) 首字下沉:使用 class `.typo-first`
+(4) 清理浮动:与一般 reset.css 保持一致 `.clearfix`
+
+
+### 三、开源许可
+
+[Sofish Lin](http://sofish.de): founder, creator of [Alice CSS](http://aliceui.com), a code writter, a semi-designer.
+[Hotoo](https://github.com/hotoo): developer, VIM guru, front-end web developer @ alipay.com
+
+基于 [MIT License](http://zh.wikipedia.org/wiki/MIT_License) 开源,使用代码只需说明来源,或者引用 [license.txt](https://github.com/sofish/typo.css/blob/master/license.txt) 即可。
+
diff --git a/TODO.md b/TODO.md
new file mode 100644
index 0000000..9cb1d7e
--- /dev/null
+++ b/TODO.md
@@ -0,0 +1,11 @@
+- typo-em:着重号实现
+- typo-first: 首字下沉实现
+- 全局与 `typo` 的完整 demo 示例
+- 根据 `附录一` 做兼容性测试
+- IE 的 `sup` 和 `sub` 显示问题
+- radio / checkbox 居中测试
+- input 多余空白增强类
+- 示例三
+- getting start 文档
+- 参与开发文档
+- moblie 平台的测试
\ No newline at end of file
diff --git a/license.txt b/license.txt
new file mode 100644
index 0000000..ed98731
--- /dev/null
+++ b/license.txt
@@ -0,0 +1,22 @@
+TYPO.CSS - a better way to manage the typography of your Chinese-lang-base site.
+
+Copyright (C) 2012 Sofish Lin http://sofish.de
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
diff --git a/typo.css b/typo.css
new file mode 100644
index 0000000..d34d079
--- /dev/null
+++ b/typo.css
@@ -0,0 +1,254 @@
+@charset "utf-8";
+
+/* 防止用户自定义背景颜色对网页的影响,添加让用户可以自定义字体 */
+html {
+ color: #333;
+ background: #fff;
+ -webkit-text-size-adjust: 100%;
+ -ms-text-size-adjust: 100%;
+}
+
+/* 内外边距通常让各个浏览器样式的表现位置不同 */
+body, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td, hr, button, article, aside, details, figcaption, figure, footer, header, group, menu, nav, section {
+ margin: 0;
+ padding: 0;
+}
+
+/* 重设 HTML5 标签, IE 需要在 js 中 createElement(TAG) */
+article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
+ display: block;
+}
+
+/* HTML5 媒体文件跟 img 保持一致 */
+audio, canvas, video {
+ display: inline-block;
+ *display: inline;
+ *zoom: 1;
+}
+
+/* 要注意表单元素并不继承父级 font 的问题 */
+body, button, input, select, textarea {
+ font: 14px/1.5 "Hiragino Sans GB", "Microsoft Yahei", sans-serif;
+}
+
+input, select, textarea {
+ font-size: 1em;
+}
+
+/* 去掉各Table cell 的边距并让其边重合 */
+table {
+ border-collapse: collapse;
+ border-spacing: 0;
+}
+
+/* IE bug fixed: th 不继承 text-align*/
+th {
+ text-align: inherit;
+}
+
+/* 去除默认边框 */
+fieldset, img {
+ border: 0;
+}
+
+/* ie6 7 8(q) bug 显示为行内表现 */
+iframe {
+ display: block;
+}
+
+/* 块/段落引用 */
+blockquote {
+ margin: 1em 4em 1em 2em;
+ padding: 0.6em 1em;
+ background: #f1f1f1;
+}
+blockquote blockquote {
+ padding: 0 0 0 1em;
+ margin-left: 2em;
+ border-left: 0.4em solid #ddd;
+}
+
+/* Firefox 以外,元素没有下划线,需添加 */
+acronym, abbr {
+ border-bottom: 1px dotted;
+ font-variant: normal;
+}
+
+/* 添加鼠标问号,进一步确保应用的语义是正确的(要知道,交互他们也有洁癖,如果你不去掉,那得多花点口舌) */
+abbr {
+ cursor: help;
+}
+
+/* 一致的 del 样式 */
+del {
+ text-decoration: line-through;
+}
+
+address, caption, cite, code, den, em, th, var {
+ font-style: normal;
+ font-weight: 500;
+}
+
+/* 去掉列表前的标识, li 会继承,大部分网站通常用列表来很多内容,所以应该当去 */
+ul, ol {
+ list-style: none;
+}
+
+/* 对齐是排版最重要的因素, 别让什么都居中 */
+caption, th {
+ text-align: left;
+}
+
+q:before, q:after {
+ content: '';
+}
+
+/* 统一上标和下标 */
+sub, sup {
+ font-size: 75%;
+ line-height: 0;
+ position: relative;
+ vertical-align: baseline;
+}
+sup {
+ top: -0.5em;
+}
+sub {
+ bottom: -0.25em;
+}
+
+/* 让链接在 hover 状态下显示下划线 */
+a:hover {
+ text-decoration: underline;
+}
+
+/* 默认不显示下划线,保持页面简洁 */
+ins, a {
+ text-decoration: none;
+}
+
+/* 专名号:虽然 u 已经重回 html5 Draft,但在所有浏览器中都是可以使用的,
+ * 要做到更好,向后兼容的话,添加 class="typo-u" 来显示专名号
+ * 关于 标签:http://www.whatwg.org/specs/web-apps/current-work/multipage/text-level-semantics.html#the-u-element
+ * 被放弃的是 4,之前一直搞错 http://www.w3.org/TR/html401/appendix/changes.html#idx-deprecated
+ * 一篇关于 标签的很好文章:http://html5doctor.com/u-element/
+ */
+u, .typo-u {
+ text-decoration: underline;
+}
+
+/* 标记,类似于手写的荧光笔的作用 */
+mark {
+ background: #fffdd1;
+}
+
+/* 代码片断 */
+pre, code {
+ font-family: "Courier New", Courier, "Hiragino Sans GB", monospace;
+}
+pre {
+ border: 1px solid #ddd;
+ border-left-width: 0.4em;
+ background: #fbfbfb;
+ padding: 10px;
+}
+
+/* 底部印刷体、版本等标记 */
+small {
+ font-size: 12px;
+ color: #888;
+}
+
+/* 清理浮动 */
+.clear {
+ clear: both;
+ display: block;
+ overflow: hidden;
+ visibility: hidden;
+ width: 0;
+ height: 0;
+}
+
+.clearfix:before, .clearfix:after {
+ content: "";
+ display: table;
+}
+
+.clearfix:after {
+ clear: both
+}
+
+.clearfix {
+ zoom: 1
+}
+
+/* TODO: 英文排版不是很好看 */
+.typo{line-height:1.8;}
+
+/* 保证块/段落之间的空白隔行 */
+.typo p, .typo pre, .typo ul, .typo ol, .typo dl, .typo form, .typo hr, .typo table,
+.typo-p, .typo-pre, .typo-ul, .typo-ol, .typo-dl, .typo-form, .typo-hr, .typo-table {
+ margin: 0.6em 0 1em;
+}
+
+/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
+.typo h1, .typo h2, .typo h3, .typo h4, .typo h5, .typo h6,
+.typo-h1, .typo-h2, .typo-h3, .typo-h4, .typo-5, .typo-h6 {
+ margin: 1.4em 0 0.8em;
+ font-weight: 700/9;
+}
+.typo h1, .typo-h1 {
+ font-size: 1.8em;
+}
+.typo h2, .typo-h2 {
+ font-size: 1.6em;
+}
+.typo h3, .typo-h3 {
+ font-size: 1.4em;
+}
+.typo h4, .typo-h4 {
+ font-size: 1.2em;
+}
+.typo h5, .typo h6, .typo-h5, .typo-h6 {
+ font-size: 1em;
+}
+
+/* 在文章中,应该还原 ul 和 ol 的样式 */
+.typo ul, .typo-ul {
+ margin-left: 1.3em;
+ list-style: disc;
+}
+.typo ol, .typo-ol {
+ list-style: decimal;
+ margin-left: 1.9em;
+}
+.typo li ul, .typo li ol, .typo-ul ul, .typo-ul ol, .typo-ol ul, .typo-ol ol {
+ margin-top: 0;
+ margin-bottom: 0;
+ margin-left: 2em;
+}
+.typo li ul, .typo-ul ul, .typo-ol ul {
+ list-style: circle;
+}
+
+/* 同 ul/ol,在文章中应用 table 基本格式 */
+.typo table th, .typo table td, .typo-table th, .typo-table td {
+ border: 1px solid #ddd;
+ padding: 5px 10px;
+}
+.typo table th, .typo-table th {
+ background: #fbfbfb;
+}
+.typo table thead th, .typo-table thead th {
+ background: #f1f1f1;
+}
+
+/* TODO: 供着重号使用 */
+.typo-em, .typo em {
+ font-weight: 700;
+}
+
+/* TODO: 供首字下沉使用 */
+.typo-first{
+
+}
diff --git a/typo.html b/typo.html
new file mode 100644
index 0000000..ae46020
--- /dev/null
+++ b/typo.html
@@ -0,0 +1,369 @@
+
+
+
+
+
+
+ TYPO.CSS - 中文网页重设与排版
+
+
+
+
+
+
+
中文网页重设与排版:TYPO.CSS
+
一致化浏览器排版效果,构建最适合中文阅读的网页排版
+
+
+ 关于 TYPO.CSS
+ 排版实例
+
+
+ 附录
+
+ TYPO.CSS 排版偏重点
+ 开源许可
+
+
+
+
+
一、关于 TYPO.CSS
+
TYPO.CSS 的目的是,在一致化浏览器排版效果的同时,构建最适合中文阅读的网页排版。
+
现状和如何去做:
+
排版是一个麻烦的问题,需要精心设计,而这个设计却是常被视觉设计师所忽略的。前端工程师更常看到这样的问题,但不便变更。因为在多个 OS 中的不同浏览器渲染不同,改动需要多的时间做回归测试,所以改变变得更困难。而像我们一般使用的 Yahoo、Eric Meyer 和 Alice base.css 中采用的 Reset 都没有很好地考虑中文排版。TYPO.CSS 要做的就是解决中文排版的问题。
+
TYPO.CSS 测试于如下平台:
+
+
+
+ OS/浏览器
+ Firefox
+ Chrome
+ Safari
+ Opera
+ IE9
+ IE8
+ IE7
+ IE6
+
+
+
+
+ Mac OS X
+ √
+ √
+ √
+ √
+ -
+ -
+ -
+ -
+
+
+ Windows 7
+ √
+ √
+ √
+ √
+ √
+ √
+ √
+ -
+
+
+ Windows XP
+ √
+ √
+ √
+ √
+ -
+ √
+ √
+ √
+
+
+ Ubuntu Linux
+ √
+ √
+ -
+ √
+ -
+ -
+ -
+ -
+
+
+
+
+
中文排版的重点和难点
+
在中文排版中,HTML4 的很多标准在语义在都有照顾到。但从视觉效果上,却很难利用单独的 CSS 来实现,像着重号 。在 HTML4 中,着重号标签(<u>)已经被放弃,而 HTML5 被重新提起 。TYPO.CSS 也根据实际情况提供相应的方案。我们重要要注意的两点是:
+
+ 语义:语义对应的用法和样式是否与中文排版一致
+ 表现:在各浏览器中的字体、大小和缩放是否如排版预期
+
+
对于这些,TYPO.CSS 排版项目的中文偏重注意点,都添加在附录中,详见:
+
+ 附录一 :TYPO.CSS 排版偏重点
+
+
+
目前仍处于 alpha 开发阶段,测试平台的覆盖,特别是在移动端 上还没有覆盖完主流平台,希望有能力的同学能加入测试行列,或者加入到 TYPO.CSS 的开发。加入方法:参与 TYPO.CSS 开发 。如有批评、建议和意见,也随时欢迎给在 Github 直接提 issues ,或给我 发邮件 。
+
+
+
二、排版实例:
+
提供2个排版实例,第一个中文实例来自于来自于张燕婴 的《论语》,由于古文排版涉及到的元素比较多,所以采用《论语》中《学而》的第一篇作为排版实例介绍;第2个来自到经典的 Lorem Ipsum,并加入了一些代码和列表等比较具有代表性的排版元素。
+
+
例1:论语学而篇第一
+
作者: 孔子 (前551年9月28日-前479年4月11日 )
+
+
本篇引语
+
《学而》是《论语》第一篇的篇名。《论语》中各篇一般都是以第一章的前二三个字作为该篇的篇名。《学而》一篇包括16章,内容涉及诸多方面。其中重点是“吾日三省吾身”;“节用而爱人,使民以时”;“礼之用,和为贵”以及仁、孝、信等道德范畴。
+
+
原文
+
子曰[1] :“学[2] 而时习[3] 之,不亦说[4] 乎?有朋[5] 自远方来,不亦乐[6] 乎?人不知[7] ,而不愠[8] ,不亦君子[9] 乎?”
+
+
注释
+
+
+[1] 子:中国古代对于有地位、有学问的男子的尊称,有时也泛称男子。《论语》书中“子曰”的子,都是指孔子而言。
+[2] 学:孔子在这里所讲的“学”,主要是指学习西周的礼、乐、诗、书等传统文化典籍。
+[3] 时习:在周秦时代,“时”字用作副词,意为“在一定的时候”或者“在适当的时候”。但朱熹在《论语集注》一书中把“时”解释为“时常”。“习”,指演习礼、乐;复习诗、书。也含有温习、实习、练习的意思。
+[4] 说:音yuè,同悦,愉快、高兴的意思。
+[5] 有朋:一本作“友朋”。旧注说,“同门曰朋”,即同在一位老师门下学习的叫朋,也就是志同道合的人。
+[6] 乐:与说有所区别。旧注说,悦在内心,乐则见于外。
+[7] 人不知:此句不完整,没有说出人不知道什么。缺少宾语。一般而言,知,是了解的意思。人不知,是说别人不了解自己。
+[8] 愠:音yùn,恼怒,怨恨。
+[9] 君子:《论语》书中的君子,有时指有德者,有时指有位者。此处指孔子理想中具有高尚人格的人。
+
+
+
+
译文
+
孔子说:“学了又时常温习和练习,不是很愉快吗?有志同道合的人从远方来,不是很令人高兴的吗?人家不了解我,我也不怨恨、恼怒,不也是一个有德的君子吗?”
+
+
评析
+
宋代著名学者朱熹 对此章评价极高,说它是“入道之门,积德之基”。本章这三句话是人们非常熟悉的。历来的解释都是:学了以后,又时常温习和练习,不也高兴吗等等。三句话,一句一个意思,前后句子也没有什么连贯性。但也有人认为这样解释不符合原义,指出这里的“学”不是指学习,而是指学说或主张;“时”不能解为时常,而是时代或社会的意思,“习”不是温习,而是使用,引申为采用。而且,这三句话不是孤立的,而是前后相互连贯的。这三句的意思是:自己的学说,要是被社会采用了,那就太高兴了;退一步说,要是没有被社会所采用,可是很多朋友赞同我 的学说,纷纷到我这里来讨论问题,我也感到快乐;再退一步说,即使社会不采用,人们也不理解我,我也不怨恨,这样做,不也就是君子吗?(见《齐鲁学刊》1986年第6期文)这种解释可以自圆其说,而且也有一定的道理,供读者在理解本章内容时参考。
+此外,在对“人不知,而不愠”一句的解释中,也有人认为,“人不知”的后面没有宾语,人家不知道什么呢?当时因为孔子有说话的特定环境,他不需要说出知道什么,别人就可以理解了,却给后人留下一个谜。有人说,这一句是接上一句说的,从远方来的朋友向我求教,我告诉他,他还不懂,我却不怨恨。这样,“人不知”就是“人家不知道我所讲述的”了。这样的解释似乎有些牵强。
+总之,本章提出以学习为乐事,做到人不知而不愠,反映出孔子学而不厌、诲人不倦、注重修养、严格要求自己的主张。这些思想主张在《论语》书中多处可见,有助于对第一章内容的深入了解。
+
+
+
例2:英文排版
+
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.
+
+"Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit…"
+ "There is no one who loves pain itself, who seeks after it and wants to have it, simply because it is pain…"
+ "There is no one who loves pain itself, who seeks after it and wants to have it, simply because it is pain…"
+ "There is no one who loves pain itself, who seeks after it and wants to have it, simply because it is pain…"
+
+
+
+
The standard Lorem Ipsum passage, used since the 1500s
+
"Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
+
+
Section 1.10.32 of "de Finibus Bonorum et Malorum", written by Cicero in 45 BC
+
"Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam nihil molestiae consequatur, vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?"
+
+
List style in action
+
+
+
You may want to create a perfect <hr /> line, despite the fact that there will never have one
+
+
La Racheforcauld said: "Few things are impossible in themselves; and it is often for want of will ,rather than of means, that man fails to succeed". You just need to follow the browser's behavior, and set a right margin to it。it will works nice as the demo you're watching now. The following code is the best way to render typo in Chinese:
+
+/* 标题应该更贴紧内容,并与其他块区分,margin 值要相应做优化 */
+h1,h2,h3,h4,h5,h6 {
+ line-height:1;font-family:Arial,sans-serif;margin:1.4em 0 0.8em;
+}
+h1{font-size:1.8em;}
+h2{font-size:1.6em;}
+h3{font-size:1.4em;}
+h4{font-size:1.2em;}
+h5,h6{font-size:1em;}
+
+/* 现代排版:保证块/段落之间的空白隔行 */
+.typo p, .typo pre, .typo ul, .typo ol, .typo dl, .typo form, .typo hr{
+ margin:1em 0 0.6em;
+}
+
+
+
三、附录
+
+
1、TYPO.CSS 排版偏重点
+
+
+
+ 类型
+ 语义
+ 标签
+ 注意点
+
+
+
+
+ 基础标签
+ 标题
+ h1 ~ h6
+ 全局不强制大小,.typo 中标题与其对应的内容应紧贴,并且有相应的大小设置
+
+
+ 上、下标
+ sup/sub
+ 保持与 MicroSoft Office Word 等程序的日常排版一致
+
+
+ 引用
+ blockquote
+ 显示/嵌套样式
+
+
+ 缩写
+ abbr
+ 是否都有下划线,鼠标 hover 是否为帮助手势
+
+
+ 分割线
+ hr
+ 显示的 padding 和 margin正确
+
+
+ 列表
+ ul/ol/dl
+ 在全局没有 list-style,在 .typo 中对齐正确
+
+
+ 定义列表
+ dl
+ 全局 padding 和 margin为0, .typo 中对齐正确
+
+
+ 选项
+ input[type=radio[, checkbox]]
+ 与其他 form 元素排版时是否居中
+
+
+ 斜体
+ i
+ 只设置一种斜体,让 em 和 cite 显示为正体
+
+
+ 强调
+ em
+ 在全局显示正体,在 .typo 中显示与 b 和 strong 的样式一致,为粗休
+
+
+ 加强
+ strong/b
+ 显示为粗体
+
+
+ 标记
+ mark
+ 类似荧光笔
+
+
+ 印刷
+ small
+ 保持为正确字体的 80% 大小,颜色设置为浅灰色
+
+
+ 表格
+ table
+ 全局不显示线条,在 table 中显示表格外框,并且表头有浅灰背景
+
+
+ 代码
+ pre/code
+ 字体使用 courier 系字体,保持与 serif 有比较一致的显示效果
+
+
+ 特殊符号
+ 着重号
+ 在文字下加点(•)
+ 在支持 :after 和 :before 的浏览器可以做渐进增强实现
+
+
+ 专名号
+ 林建锋
+ 专名号,有下划线,使用 u 或都 .typo-u 类
+
+
+ 破折号
+ ——
+ 保持一划,而非两划
+
+
+ 人民币
+ ¥
+ 使用两平等线的符号,或者 HTML 实体符号 ¥
+
+
+ 删除符
+ 已删除(deleted)
+ 一致化各浏览器显示,中英混排正确
+
+
+ 加强类
+ 专名号
+ .typo-u
+ 由于 u 被 HTML4 放弃,在向后兼容上推荐使用
+
+
+ 着重符
+ .typo-em
+ 利用 :after 和 :before 实现着重符
+
+
+ 首字下沉
+ .typo-first
+ 特殊排版
+
+
+ 清除浮动
+ .clearfix
+ 与一般 CSS Reset 保持一对致 API
+
+
+ 注意点
+ (1)中英文混排行高/行距
+
+
+ (2)上下标在 IE 中显示效果
+
+
+ (3)块/段落分割空白是否符合设计原则
+
+
+ (4)input 多余空间问题
+
+
+ (5)默认字体色彩,目前采用 #333 在各种浏览显示比较好
+
+
+
+
+
2、开源许可
+
TYPO.CSS 基于 MIT License 开源,使用代码只需说明来源,或者引用 license.txt 即可。
+
+
+
+
+
+
+
From b64a6a37e1292928afa53ab7aa1484f10b1145ab Mon Sep 17 00:00:00 2001
From: sofish
Date: Wed, 9 May 2012 18:52:30 -0700
Subject: [PATCH 016/116] Created gh-pages branch via GitHub
---
images/bg_hr.png | Bin 0 -> 943 bytes
images/blacktocat.png | Bin 0 -> 1428 bytes
images/icon_download.png | Bin 0 -> 1162 bytes
images/sprite_download.png | Bin 0 -> 16799 bytes
index.html | 74 ++++++
javascripts/main.js | 1 +
params.json | 1 +
stylesheets/pygment_trac.css | 70 ++++++
stylesheets/stylesheet.css | 431 +++++++++++++++++++++++++++++++++++
9 files changed, 577 insertions(+)
create mode 100644 images/bg_hr.png
create mode 100644 images/blacktocat.png
create mode 100644 images/icon_download.png
create mode 100644 images/sprite_download.png
create mode 100644 index.html
create mode 100644 javascripts/main.js
create mode 100644 params.json
create mode 100644 stylesheets/pygment_trac.css
create mode 100644 stylesheets/stylesheet.css
diff --git a/images/bg_hr.png b/images/bg_hr.png
new file mode 100644
index 0000000000000000000000000000000000000000..7973bd69888c7e10ccad1111d555ceabb7cd99b6
GIT binary patch
literal 943
zcmaJ=O^ee&7!FiK7FWCot{@Ck@nrMW&tx0B-6VAbrk1u~FTzffX&bu9#AIsIdef8t
z!QZfdz=K}>3m(LO;6X3qN}Y6@>cJYA%)G<%Jn!ec>9im1@7>wsIBwrMF}iHO!q%;8
zSJ@xEd~(FL18NRvkBsOXMVM>4WQc*~qcQGc17IjxRnj!O_^B1gan0x#EWT48PK->5B2>mI;LIx
zC*FSw$Nfc!g)WZCEOJ=mM)}lLsOk|$ltg_(&ax_YCWMlBLPDVT%D_gB7o_$YZ`-OB
z#1sV%whRq21>W;qwN$N?OUGtQQe;JvOsQrna;+v+j8dth=*?orHHb6waX>S!yXCgT
zo!oR3{E&GzaOAzfZYv@_Sf{LdyJInS>TS60&R9%yCs$y>2x(*gYIJtRrYAja$Ceq}
z!N&oc_K1!3-Ft`U>`CM;quEbB4KG%!MovB*9_3!QzFhqHwrbwK|Doo-y>auDJNSP6
T=d)j*_4El@X4^PFK7I8YBT*xD
literal 0
HcmV?d00001
diff --git a/images/blacktocat.png b/images/blacktocat.png
new file mode 100644
index 0000000000000000000000000000000000000000..6e264fe57a2e35a2855405ac7d4102c3f6ddcdae
GIT binary patch
literal 1428
zcmeAS@N?(olHy`uVBq!ia0vp^av;pX1|+Qw)-3{3k|nMYCBgY=CFO}lsSJ)O`AMk?
zp1FzXsX?iUDV2pMQ*9U+n3Xa^B1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+*
zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn
zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%s|1+P|wiV
z#N6CmN5ROz&_Lh7NZ-&%*U;R`*vQJjKmiJrfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj
z%k|2Q_413-^$jg8EkR}&8R-I5=oVMzl_XZ^<`pZ$OmImpPAEg{v+u2}(t{7puX=A(aKG
z`a!A1`K3k4z=%sz23b{L-^Aq1JP;qO
z-q+X4Gq1QLF)umQ)5TT^Xo6m5W{Q=eg`=5?o13Glvx}*rp{t>#shg3DvyriZv5}jZ
ztD`wguSMv>2~2MaLa!4}y`ZF!TL84#CABECEH%ZgC_h&L>}9J=EN(GzcCm0X
zaRr%YgxxI=y(w7S0@dq`Q?EYIG5Vm0MT%&c5HR(CnDAr^T6f1avxRvmvnsN+?-j}Z~1)Zr#rqzrt`edmo44*B<0=C4>mrxHF6$p
zVws~UocMfeI`gB8pYMLYT<5W_Sc2L3k=!bUB#~ZJ({Z!h(
z5cQ^m-ML}np}?nF1qJ%QZ%&+4qx_-u5%b!7*Mwh!%GW0DVVfR1^AmT&2Zx^5+9#_y
zVl?bOyxwefi2JC5G4th=kQ;{6OD@}K%_vt2<#@BBJ27y#@Q%c)SuYG()&<;F38thq0oZ=U&WuIgkD`^dLEH(#C<*XLIlWZ+j~E
zz+=Y;?pdE$&$m3i@NdO#%>zA87`NOI2w2B*JM5L`^AkN4AFQu&S+6ULTPjv;vzl4&
z-eaK_F|D4~l3hzBSF~icNT@MID=v+_X`vpuvf=8+S(|^vlRdHe0<)v-^wiVR3w=TQ)uFA9F
z>vmqc-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn
zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%s|1+P|wiV
z#N6CmN5ROz&_Lh7NZ-&%*U;R`*vQJjKmiJrfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj
z%k|2Q_413-^$jg8EkR}&8R-I5=oVMzl_XZ^<`pZ$OmImpPAEg{v+u2}(t{7puX=A(aKG
z`a!A1`K3k4z=%sz23b{L-^Aq1JP;qO
z-q+X4Gq1QLF)umQ)5TT^Xo6m5W{Q=$skw`#i#v$3O_v5UEZv#YC%
zp@9obuSMv>2~2MaLa!N4y`ZF!TL84#CABECEH%ZgC_h&L>}9J=+-@<(X&zK>
z3U0TU;MA)Rbc{YIVv!;mCIn19ASOK70y*%6pPC0u?M1+3t#h8?05D7Z^K@|xskoK&
z=l_5E!ww8;ZH!Ed#V+%1n6Rkg{=V8A2QTsNE8^>
zvHmCezoM^A29GnE>#ih4F*YzTGbm`!
V-6~#faTQcLc)I$ztaD0e0svx<*uT
literal 0
HcmV?d00001
diff --git a/images/sprite_download.png b/images/sprite_download.png
new file mode 100644
index 0000000000000000000000000000000000000000..f2babd575dc1cbd6e9342cc58ca795377d35afdb
GIT binary patch
literal 16799
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
literal 0
HcmV?d00001
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..05c1a1e
--- /dev/null
+++ b/index.html
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+
+
+
+ Typo.css
+
+
+
+
+
+
+
+
+
+
+ Welcome to GitHub Pages.
+
+This automatic page generator is the easiest way to create beautiful pages for all of your projects. Author your page content here using GitHub Flavored Markdown, select a template crafted by a designer, and publish. After your page is generated, you can check out the new branch:
+
+$ cd your_repo_root/repo_name
+$ git fetch origin
+$ git checkout gh-pages
+
+
+If you're using the GitHub for Mac, simply sync your repository and you'll see the new branch.
+
+Designer Templates
+
+We've crafted some handsome templates for you to use. Go ahead and continue to layouts to browse through them. You can easily go back to edit your page before publishing. After publishing your page, you can revisit the page generator and switch to another theme. Your Page content will be preserved if it remained markdown format.
+
+Rather Drive Stick?
+
+If you prefer to not use the automatic generator, push a branch named gh-pages to your repository to create a page manually. In addition to supporting regular HTML content, GitHub Pages support Jekyll, a simple, blog aware static site generator written by our own Tom Preston-Werner. Jekyll makes it easy to create site-wide headers and footers without having to copy them across every page. It also offers intelligent blog support and other advanced templating features.
+
+Authors and Contributors
+
+You can @mention a GitHub username to generate a link to their profile. The resulting <a> element will link to the contributor's GitHub Profile. For example: In 2007, Chris Wanstrath (@defunkt ), PJ Hyett (@pjhyett ), and Tom Preston-Werner (@mojombo ) founded GitHub.
+
+Support or Contact
+
+Having trouble with Pages? Check out the documentation at http://help.github.com/pages or contact support@github.com and we’ll help you sort it out.
+
+
+
+
+
+
+
+
+
+
diff --git a/javascripts/main.js b/javascripts/main.js
new file mode 100644
index 0000000..d8135d3
--- /dev/null
+++ b/javascripts/main.js
@@ -0,0 +1 @@
+console.log('This would be the main JS file.');
diff --git a/params.json b/params.json
new file mode 100644
index 0000000..4e95afd
--- /dev/null
+++ b/params.json
@@ -0,0 +1 @@
+{"name":"Typo.css","body":"### Welcome to GitHub Pages.\r\nThis automatic page generator is the easiest way to create beautiful pages for all of your projects. Author your page content here using GitHub Flavored Markdown, select a template crafted by a designer, and publish. After your page is generated, you can check out the new branch:\r\n\r\n```\r\n$ cd your_repo_root/repo_name\r\n$ git fetch origin\r\n$ git checkout gh-pages\r\n```\r\n\r\nIf you're using the GitHub for Mac, simply sync your repository and you'll see the new branch.\r\n\r\n### Designer Templates\r\nWe've crafted some handsome templates for you to use. Go ahead and continue to layouts to browse through them. You can easily go back to edit your page before publishing. After publishing your page, you can revisit the page generator and switch to another theme. Your Page content will be preserved if it remained markdown format.\r\n\r\n### Rather Drive Stick?\r\nIf you prefer to not use the automatic generator, push a branch named `gh-pages` to your repository to create a page manually. In addition to supporting regular HTML content, GitHub Pages support Jekyll, a simple, blog aware static site generator written by our own Tom Preston-Werner. Jekyll makes it easy to create site-wide headers and footers without having to copy them across every page. It also offers intelligent blog support and other advanced templating features.\r\n\r\n### Authors and Contributors\r\nYou can @mention a GitHub username to generate a link to their profile. The resulting `` element will link to the contributor's GitHub Profile. For example: In 2007, Chris Wanstrath (@defunkt), PJ Hyett (@pjhyett), and Tom Preston-Werner (@mojombo) founded GitHub.\r\n\r\n### Support or Contact\r\nHaving trouble with Pages? Check out the documentation at http://help.github.com/pages or contact support@github.com and we’ll help you sort it out.","tagline":"中文网页重设与排版:一致化浏览器排版效果,构建最适合中文阅读的网页排版","google":"","note":"Don't delete this file! It's used internally to help with page regeneration."}
\ No newline at end of file
diff --git a/stylesheets/pygment_trac.css b/stylesheets/pygment_trac.css
new file mode 100644
index 0000000..e65cedf
--- /dev/null
+++ b/stylesheets/pygment_trac.css
@@ -0,0 +1,70 @@
+.highlight .hll { background-color: #ffffcc }
+.highlight { background: #f0f3f3; }
+.highlight .c { color: #0099FF; font-style: italic } /* Comment */
+.highlight .err { color: #AA0000; background-color: #FFAAAA } /* Error */
+.highlight .k { color: #006699; font-weight: bold } /* Keyword */
+.highlight .o { color: #555555 } /* Operator */
+.highlight .cm { color: #0099FF; font-style: italic } /* Comment.Multiline */
+.highlight .cp { color: #009999 } /* Comment.Preproc */
+.highlight .c1 { color: #0099FF; font-style: italic } /* Comment.Single */
+.highlight .cs { color: #0099FF; font-weight: bold; font-style: italic } /* Comment.Special */
+.highlight .gd { background-color: #FFCCCC; border: 1px solid #CC0000 } /* Generic.Deleted */
+.highlight .ge { font-style: italic } /* Generic.Emph */
+.highlight .gr { color: #FF0000 } /* Generic.Error */
+.highlight .gh { color: #003300; font-weight: bold } /* Generic.Heading */
+.highlight .gi { background-color: #CCFFCC; border: 1px solid #00CC00 } /* Generic.Inserted */
+.highlight .go { color: #AAAAAA } /* Generic.Output */
+.highlight .gp { color: #000099; font-weight: bold } /* Generic.Prompt */
+.highlight .gs { font-weight: bold } /* Generic.Strong */
+.highlight .gu { color: #003300; font-weight: bold } /* Generic.Subheading */
+.highlight .gt { color: #99CC66 } /* Generic.Traceback */
+.highlight .kc { color: #006699; font-weight: bold } /* Keyword.Constant */
+.highlight .kd { color: #006699; font-weight: bold } /* Keyword.Declaration */
+.highlight .kn { color: #006699; font-weight: bold } /* Keyword.Namespace */
+.highlight .kp { color: #006699 } /* Keyword.Pseudo */
+.highlight .kr { color: #006699; font-weight: bold } /* Keyword.Reserved */
+.highlight .kt { color: #007788; font-weight: bold } /* Keyword.Type */
+.highlight .m { color: #FF6600 } /* Literal.Number */
+.highlight .s { color: #CC3300 } /* Literal.String */
+.highlight .na { color: #330099 } /* Name.Attribute */
+.highlight .nb { color: #336666 } /* Name.Builtin */
+.highlight .nc { color: #00AA88; font-weight: bold } /* Name.Class */
+.highlight .no { color: #336600 } /* Name.Constant */
+.highlight .nd { color: #9999FF } /* Name.Decorator */
+.highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */
+.highlight .ne { color: #CC0000; font-weight: bold } /* Name.Exception */
+.highlight .nf { color: #CC00FF } /* Name.Function */
+.highlight .nl { color: #9999FF } /* Name.Label */
+.highlight .nn { color: #00CCFF; font-weight: bold } /* Name.Namespace */
+.highlight .nt { color: #330099; font-weight: bold } /* Name.Tag */
+.highlight .nv { color: #003333 } /* Name.Variable */
+.highlight .ow { color: #000000; font-weight: bold } /* Operator.Word */
+.highlight .w { color: #bbbbbb } /* Text.Whitespace */
+.highlight .mf { color: #FF6600 } /* Literal.Number.Float */
+.highlight .mh { color: #FF6600 } /* Literal.Number.Hex */
+.highlight .mi { color: #FF6600 } /* Literal.Number.Integer */
+.highlight .mo { color: #FF6600 } /* Literal.Number.Oct */
+.highlight .sb { color: #CC3300 } /* Literal.String.Backtick */
+.highlight .sc { color: #CC3300 } /* Literal.String.Char */
+.highlight .sd { color: #CC3300; font-style: italic } /* Literal.String.Doc */
+.highlight .s2 { color: #CC3300 } /* Literal.String.Double */
+.highlight .se { color: #CC3300; font-weight: bold } /* Literal.String.Escape */
+.highlight .sh { color: #CC3300 } /* Literal.String.Heredoc */
+.highlight .si { color: #AA0000 } /* Literal.String.Interpol */
+.highlight .sx { color: #CC3300 } /* Literal.String.Other */
+.highlight .sr { color: #33AAAA } /* Literal.String.Regex */
+.highlight .s1 { color: #CC3300 } /* Literal.String.Single */
+.highlight .ss { color: #FFCC33 } /* Literal.String.Symbol */
+.highlight .bp { color: #336666 } /* Name.Builtin.Pseudo */
+.highlight .vc { color: #003333 } /* Name.Variable.Class */
+.highlight .vg { color: #003333 } /* Name.Variable.Global */
+.highlight .vi { color: #003333 } /* Name.Variable.Instance */
+.highlight .il { color: #FF6600 } /* Literal.Number.Integer.Long */
+
+.type-csharp .highlight .k { color: #0000FF }
+.type-csharp .highlight .kt { color: #0000FF }
+.type-csharp .highlight .nf { color: #000000; font-weight: normal }
+.type-csharp .highlight .nc { color: #2B91AF }
+.type-csharp .highlight .nn { color: #000000 }
+.type-csharp .highlight .s { color: #A31515 }
+.type-csharp .highlight .sc { color: #A31515 }
diff --git a/stylesheets/stylesheet.css b/stylesheets/stylesheet.css
new file mode 100644
index 0000000..4189751
--- /dev/null
+++ b/stylesheets/stylesheet.css
@@ -0,0 +1,431 @@
+/*******************************************************************************
+Slate Theme for Github Pages
+by Jason Costello, @jsncostello
+*******************************************************************************/
+
+@import url(pygment_trac.css);
+
+/*******************************************************************************
+MeyerWeb Reset
+*******************************************************************************/
+
+html, body, div, span, applet, object, iframe,
+h1, h2, h3, h4, h5, h6, p, blockquote, pre,
+a, abbr, acronym, address, big, cite, code,
+del, dfn, em, img, ins, kbd, q, s, samp,
+small, strike, strong, sub, sup, tt, var,
+b, u, i, center,
+dl, dt, dd, ol, ul, li,
+fieldset, form, label, legend,
+table, caption, tbody, tfoot, thead, tr, th, td,
+article, aside, canvas, details, embed,
+figure, figcaption, footer, header, hgroup,
+menu, nav, output, ruby, section, summary,
+time, mark, audio, video {
+ margin: 0;
+ padding: 0;
+ border: 0;
+ font: inherit;
+ vertical-align: baseline;
+}
+
+/* HTML5 display-role reset for older browsers */
+article, aside, details, figcaption, figure,
+footer, header, hgroup, menu, nav, section {
+ display: block;
+}
+
+ol, ul {
+ list-style: none;
+}
+
+blockquote, q {
+}
+
+table {
+ border-collapse: collapse;
+ border-spacing: 0;
+}
+
+a:focus {
+ outline: none;
+}
+
+/*******************************************************************************
+Theme Styles
+*******************************************************************************/
+
+body {
+ box-sizing: border-box;
+ color:#373737;
+ background: #212121;
+ font-size: 16px;
+ font-family: 'Myriad Pro', Calibri, Helvetica, Arial, sans-serif;
+ line-height: 1.5;
+ -webkit-font-smoothing: antialiased;
+}
+
+h1, h2, h3, h4, h5, h6 {
+ margin: 10px 0;
+ font-weight: 700;
+ color:#222222;
+ font-family: 'Lucida Grande', 'Calibri', Helvetica, Arial, sans-serif;
+ letter-spacing: -1px;
+}
+
+h1 {
+ font-size: 36px;
+ font-weight: 700;
+}
+
+h2 {
+ padding-bottom: 10px;
+ font-size: 32px;
+ background: url('../images/bg_hr.png') repeat-x bottom;
+}
+
+h3 {
+ font-size: 24px;
+}
+
+h4 {
+ font-size: 21px;
+}
+
+h5 {
+ font-size: 18px;
+}
+
+h6 {
+ font-size: 16px;
+}
+
+p {
+ margin: 10px 0 15px 0;
+}
+
+footer p {
+ color: #f2f2f2;
+}
+
+a {
+ text-decoration: none;
+ color: #007edf;
+ text-shadow: none;
+
+ transition: color 0.5s ease;
+ transition: text-shadow 0.5s ease;
+ -webkit-transition: color 0.5s ease;
+ -webkit-transition: text-shadow 0.5s ease;
+ -moz-transition: color 0.5s ease;
+ -moz-transition: text-shadow 0.5s ease;
+ -o-transition: color 0.5s ease;
+ -o-transition: text-shadow 0.5s ease;
+ -ms-transition: color 0.5s ease;
+ -ms-transition: text-shadow 0.5s ease;
+}
+
+#main_content a:hover {
+ color: #0069ba;
+ text-shadow: #0090ff 0px 0px 2px;
+}
+
+footer a:hover {
+ color: #43adff;
+ text-shadow: #0090ff 0px 0px 2px;
+}
+
+em {
+ font-style: italic;
+}
+
+strong {
+ font-weight: bold;
+}
+
+img {
+ position: relative;
+ margin: 0 auto;
+ max-width: 739px;
+ padding: 5px;
+ margin: 10px 0 10px 0;
+ border: 1px solid #ebebeb;
+
+ box-shadow: 0 0 5px #ebebeb;
+ -webkit-box-shadow: 0 0 5px #ebebeb;
+ -moz-box-shadow: 0 0 5px #ebebeb;
+ -o-box-shadow: 0 0 5px #ebebeb;
+ -ms-box-shadow: 0 0 5px #ebebeb;
+}
+
+pre, code {
+ width: 100%;
+ color: #222;
+ background-color: #fff;
+
+ font-family: Monaco, "Bitstream Vera Sans Mono", "Lucida Console", Terminal, monospace;
+ font-size: 14px;
+
+ border-radius: 2px;
+ -moz-border-radius: 2px;
+ -webkit-border-radius: 2px;
+
+
+
+}
+
+pre {
+ width: 100%;
+ padding: 10px;
+ box-shadow: 0 0 10px rgba(0,0,0,.1);
+ overflow: auto;
+}
+
+code {
+ padding: 3px;
+ margin: 0 3px;
+ box-shadow: 0 0 10px rgba(0,0,0,.1);
+}
+
+pre code {
+ display: block;
+ box-shadow: none;
+}
+
+blockquote {
+ color: #666;
+ margin-bottom: 20px;
+ padding: 0 0 0 20px;
+ border-left: 3px solid #bbb;
+}
+
+ul, ol, dl {
+ margin-bottom: 15px
+}
+
+ul li {
+ list-style: inside;
+ padding-left: 20px;
+}
+
+ol li {
+ list-style: decimal inside;
+ padding-left: 20px;
+}
+
+dl dt {
+ font-weight: bold;
+}
+
+dl dd {
+ padding-left: 20px;
+ font-style: italic;
+}
+
+dl p {
+ padding-left: 20px;
+ font-style: italic;
+}
+
+hr {
+ height: 1px;
+ margin-bottom: 5px;
+ border: none;
+ background: url('../images/bg_hr.png') repeat-x center;
+}
+
+table {
+ border: 1px solid #373737;
+ margin-bottom: 20px;
+ text-align: left;
+ }
+
+th {
+ font-family: 'Lucida Grande', 'Helvetica Neue', Helvetica, Arial, sans-serif;
+ padding: 10px;
+ background: #373737;
+ color: #fff;
+ }
+
+td {
+ padding: 10px;
+ border: 1px solid #373737;
+ }
+
+form {
+ background: #f2f2f2;
+ padding: 20px;
+}
+
+img {
+ width: 100%;
+ max-width: 100%;
+}
+
+/*******************************************************************************
+Full-Width Styles
+*******************************************************************************/
+
+.outer {
+ width: 100%;
+}
+
+.inner {
+ position: relative;
+ max-width: 640px;
+ padding: 20px 10px;
+ margin: 0 auto;
+}
+
+#forkme_banner {
+ display: block;
+ position: absolute;
+ top:0;
+ right: 10px;
+ z-index: 10;
+ padding: 10px 50px 10px 10px;
+ color: #fff;
+ background: url('../images/blacktocat.png') #0090ff no-repeat 95% 50%;
+ font-weight: 700;
+ box-shadow: 0 0 10px rgba(0,0,0,.5);
+ border-bottom-left-radius: 2px;
+ border-bottom-right-radius: 2px;
+}
+
+#header_wrap {
+ background: #212121;
+ background: -moz-linear-gradient(top, #373737, #212121);
+ background: -webkit-linear-gradient(top, #373737, #212121);
+ background: -ms-linear-gradient(top, #373737, #212121);
+ background: -o-linear-gradient(top, #373737, #212121);
+ background: linear-gradient(top, #373737, #212121);
+}
+
+#header_wrap .inner {
+ padding: 50px 10px 30px 10px;
+}
+
+#project_title {
+ margin: 0;
+ color: #fff;
+ font-size: 42px;
+ font-weight: 700;
+ text-shadow: #111 0px 0px 10px;
+}
+
+#project_tagline {
+ color: #fff;
+ font-size: 24px;
+ font-weight: 300;
+ background: none;
+ text-shadow: #111 0px 0px 10px;
+}
+
+#downloads {
+ position: absolute;
+ width: 210px;
+ z-index: 10;
+ bottom: -40px;
+ right: 0;
+ height: 70px;
+ background: url('../images/icon_download.png') no-repeat 0% 90%;
+}
+
+.zip_download_link {
+ display: block;
+ float: right;
+ width: 90px;
+ height:70px;
+ text-indent: -5000px;
+ overflow: hidden;
+ background: url(../images/sprite_download.png) no-repeat bottom left;
+}
+
+.tar_download_link {
+ display: block;
+ float: right;
+ width: 90px;
+ height:70px;
+ text-indent: -5000px;
+ overflow: hidden;
+ background: url(../images/sprite_download.png) no-repeat bottom right;
+ margin-left: 10px;
+}
+
+.zip_download_link:hover {
+ background: url(../images/sprite_download.png) no-repeat top left;
+}
+
+.tar_download_link:hover {
+ background: url(../images/sprite_download.png) no-repeat top right;
+}
+
+#main_content_wrap {
+ background: #f2f2f2;
+ border-top: 1px solid #111;
+ border-bottom: 1px solid #111;
+}
+
+#main_content {
+ padding-top: 40px;
+}
+
+#footer_wrap {
+ background: #212121;
+}
+
+
+
+/*******************************************************************************
+Small Device Styles
+*******************************************************************************/
+
+@media screen and (max-width: 480px) {
+ body {
+ font-size:14px;
+ }
+
+ #downloads {
+ display: none;
+ }
+
+ .inner {
+ min-width: 320px;
+ max-width: 480px;
+ }
+
+ #project_title {
+ font-size: 32px;
+ }
+
+ h1 {
+ font-size: 28px;
+ }
+
+ h2 {
+ font-size: 24px;
+ }
+
+ h3 {
+ font-size: 21px;
+ }
+
+ h4 {
+ font-size: 18px;
+ }
+
+ h5 {
+ font-size: 14px;
+ }
+
+ h6 {
+ font-size: 12px;
+ }
+
+ code, pre {
+ min-width: 320px;
+ max-width: 480px;
+ font-size: 11px;
+ }
+
+}
From ef21a7d0357c3ae1302ee99b95f18c8e1670311f Mon Sep 17 00:00:00 2001
From: sofish
Date: Thu, 10 May 2012 09:56:12 +0800
Subject: [PATCH 017/116] rm .DS_store
---
.DS_Store | Bin 6148 -> 0 bytes
1 file changed, 0 insertions(+), 0 deletions(-)
delete mode 100644 .DS_Store
diff --git a/.DS_Store b/.DS_Store
deleted file mode 100644
index aa4a868792219ef1245b7fd13a1b4c727dd85091..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 6148
zcmeHK!Ab)$5PhQ+xAfAZ$DBPB{DZY@4<4kTo<+J96t=F=3VPeG@RR&3>zgD>md2}y
z&cNhNk~i7xgH3h-$n0*nC^bVbo1V>+Cj+Kc1^qWCo)u*NMW*x)&{&~F^ly^qk~
z9yNEK?tgREwDqEC7i3T#IVN7yWxHhy3~_-OPEp~UIKc|bOvYQ1afmC-$)A76mPx`c
zsNxGA(UM(L*Y)n|@|y663IC4q3QZ>CJ;`8bW(t@BrhqB%4;A2@tyYWzT5AfJ0;a&1
z0(w3;x?&lz3+RsyHogQP4mj+MvDOlr<06(3yMUabNk}DzREZ^qgmjL($SWgu0Yf?@
z79SFy{8_w+e>&H9o(?GkT5AfJ0(}McLwBtA|BRnZw#e_NSkDwN1^$=-ADPJny
ztvj!$cdet}(AAXJX+UG#`w3u2&ygcP8RnhF
Date: Thu, 10 May 2012 09:56:42 +0800
Subject: [PATCH 018/116] shit
---
images/bg_hr.png | Bin 943 -> 0 bytes
images/blacktocat.png | Bin 1428 -> 0 bytes
images/icon_download.png | Bin 1162 -> 0 bytes
images/sprite_download.png | Bin 16799 -> 0 bytes
index.html | 74 ------
javascripts/main.js | 1 -
params.json | 1 -
stylesheets/pygment_trac.css | 70 ------
stylesheets/stylesheet.css | 431 -----------------------------------
9 files changed, 577 deletions(-)
delete mode 100644 images/bg_hr.png
delete mode 100644 images/blacktocat.png
delete mode 100644 images/icon_download.png
delete mode 100644 images/sprite_download.png
delete mode 100644 index.html
delete mode 100644 javascripts/main.js
delete mode 100644 params.json
delete mode 100644 stylesheets/pygment_trac.css
delete mode 100644 stylesheets/stylesheet.css
diff --git a/images/bg_hr.png b/images/bg_hr.png
deleted file mode 100644
index 7973bd69888c7e10ccad1111d555ceabb7cd99b6..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 943
zcmaJ=O^ee&7!FiK7FWCot{@Ck@nrMW&tx0B-6VAbrk1u~FTzffX&bu9#AIsIdef8t
z!QZfdz=K}>3m(LO;6X3qN}Y6@>cJYA%)G<%Jn!ec>9im1@7>wsIBwrMF}iHO!q%;8
zSJ@xEd~(FL18NRvkBsOXMVM>4WQc*~qcQGc17IjxRnj!O_^B1gan0x#EWT48PK->5B2>mI;LIx
zC*FSw$Nfc!g)WZCEOJ=mM)}lLsOk|$ltg_(&ax_YCWMlBLPDVT%D_gB7o_$YZ`-OB
z#1sV%whRq21>W;qwN$N?OUGtQQe;JvOsQrna;+v+j8dth=*?orHHb6waX>S!yXCgT
zo!oR3{E&GzaOAzfZYv@_Sf{LdyJInS>TS60&R9%yCs$y>2x(*gYIJtRrYAja$Ceq}
z!N&oc_K1!3-Ft`U>`CM;quEbB4KG%!MovB*9_3!QzFhqHwrbwK|Doo-y>auDJNSP6
T=d)j*_4El@X4^PFK7I8YBT*xD
diff --git a/images/blacktocat.png b/images/blacktocat.png
deleted file mode 100644
index 6e264fe57a2e35a2855405ac7d4102c3f6ddcdae..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 1428
zcmeAS@N?(olHy`uVBq!ia0vp^av;pX1|+Qw)-3{3k|nMYCBgY=CFO}lsSJ)O`AMk?
zp1FzXsX?iUDV2pMQ*9U+n3Xa^B1$5BeXNr6bM+EIYV;~{3xK*A7;Nk-3KEmEQ%e+*
zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn
zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%s|1+P|wiV
z#N6CmN5ROz&_Lh7NZ-&%*U;R`*vQJjKmiJrfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj
z%k|2Q_413-^$jg8EkR}&8R-I5=oVMzl_XZ^<`pZ$OmImpPAEg{v+u2}(t{7puX=A(aKG
z`a!A1`K3k4z=%sz23b{L-^Aq1JP;qO
z-q+X4Gq1QLF)umQ)5TT^Xo6m5W{Q=eg`=5?o13Glvx}*rp{t>#shg3DvyriZv5}jZ
ztD`wguSMv>2~2MaLa!4}y`ZF!TL84#CABECEH%ZgC_h&L>}9J=EN(GzcCm0X
zaRr%YgxxI=y(w7S0@dq`Q?EYIG5Vm0MT%&c5HR(CnDAr^T6f1avxRvmvnsN+?-j}Z~1)Zr#rqzrt`edmo44*B<0=C4>mrxHF6$p
zVws~UocMfeI`gB8pYMLYT<5W_Sc2L3k=!bUB#~ZJ({Z!h(
z5cQ^m-ML}np}?nF1qJ%QZ%&+4qx_-u5%b!7*Mwh!%GW0DVVfR1^AmT&2Zx^5+9#_y
zVl?bOyxwefi2JC5G4th=kQ;{6OD@}K%_vt2<#@BBJ27y#@Q%c)SuYG()&<;F38thq0oZ=U&WuIgkD`^dLEH(#C<*XLIlWZ+j~E
zz+=Y;?pdE$&$m3i@NdO#%>zA87`NOI2w2B*JM5L`^AkN4AFQu&S+6ULTPjv;vzl4&
z-eaK_F|D4~l3hzBSF~icNT@MID=v+_X`vpuvf=8+S(|^vlRdHe0<)v-^wiVR3w=TQ)uFA9F
z>vmqc-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn
zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxKsVXI%s|1+P|wiV
z#N6CmN5ROz&_Lh7NZ-&%*U;R`*vQJjKmiJrfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj
z%k|2Q_413-^$jg8EkR}&8R-I5=oVMzl_XZ^<`pZ$OmImpPAEg{v+u2}(t{7puX=A(aKG
z`a!A1`K3k4z=%sz23b{L-^Aq1JP;qO
z-q+X4Gq1QLF)umQ)5TT^Xo6m5W{Q=$skw`#i#v$3O_v5UEZv#YC%
zp@9obuSMv>2~2MaLa!N4y`ZF!TL84#CABECEH%ZgC_h&L>}9J=+-@<(X&zK>
z3U0TU;MA)Rbc{YIVv!;mCIn19ASOK70y*%6pPC0u?M1+3t#h8?05D7Z^K@|xskoK&
z=l_5E!ww8;ZH!Ed#V+%1n6Rkg{=V8A2QTsNE8^>
zvHmCezoM^A29GnE>#ih4F*YzTGbm`!
V-6~#faTQcLc)I$ztaD0e0svx<*uT
diff --git a/images/sprite_download.png b/images/sprite_download.png
deleted file mode 100644
index f2babd575dc1cbd6e9342cc58ca795377d35afdb..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 16799
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