提交 73634f6b 编写于 作者: J jessyan

Set theme jekyll-theme-cayman and migrate Page Generator content

上级 b1854d11
title: Mvparms
description: a common Architecture for Android Applications developing based on MVP,integrates many Open Source Projects ,to make your developing quicker and easier. ( 一个整合了大量主流开源项目的Android Mvp快速搭建框架)
google_analytics:
show_downloads: true
theme: jekyll-theme-cayman
gems:
- jekyll-mentions
<!DOCTYPE html>
<html lang="en-us">
<head>
<meta charset="UTF-8">
<title>Mvparms by JessYanCoding</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="stylesheets/normalize.css" media="screen">
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,700' rel='stylesheet' type='text/css'>
<link rel="stylesheet" type="text/css" href="stylesheets/stylesheet.css" media="screen">
<link rel="stylesheet" type="text/css" href="stylesheets/github-light.css" media="screen">
</head>
<body>
<section class="page-header">
<h1 class="project-name">Mvparms</h1>
<h2 class="project-tagline">a common Architecture for Android Applications developing based on MVP,integrates many Open Source Projects ,to make your developing quicker and easier. ( 一个整合了大量主流开源项目的Android Mvp快速搭建框架)</h2>
<a href="https://github.com/JessYanCoding/MVPArms" class="btn">View on GitHub</a>
<a href="https://github.com/JessYanCoding/MVPArms/zipball/master" class="btn">Download .zip</a>
<a href="https://github.com/JessYanCoding/MVPArms/tarball/master" class="btn">Download .tar.gz</a>
</section>
<section class="main-content">
<h1>
<a id="mvparms-beta" class="anchor" href="#mvparms-beta" aria-hidden="true"><span aria-hidden="true" class="octicon octicon-link"></span></a>MVPArms [beta]</h1>
<h2>
<a id="a-common-architecture-for-android-applications-developing-based-on-mvpintegrates-many-open-source-projects-to-make-your-developing-quicker-and-easier" class="anchor" href="#a-common-architecture-for-android-applications-developing-based-on-mvpintegrates-many-open-source-projects-to-make-your-developing-quicker-and-easier" aria-hidden="true"><span aria-hidden="true" class="octicon octicon-link"></span></a>a common Architecture for Android Applications developing based on MVP,integrates many Open Source Projects ,to make your developing quicker and easier.</h2>
<p>一个整合了大量主流开源项目的Android Mvp快速搭建框架</p>
<h2>
<a id="sample-in-progress" class="anchor" href="#sample-in-progress" aria-hidden="true"><span aria-hidden="true" class="octicon octicon-link"></span></a>Sample [In Progress]</h2>
<p><a href="https://github.com/JessYanCoding/WideEyes">source from eyepetizer(仿照开眼视频的项目,开发中...)</a> </p>
<h2>
<a id="notice" class="anchor" href="#notice" aria-hidden="true"><span aria-hidden="true" class="octicon octicon-link"></span></a>Notice</h2>
<ul>
<li><p>使用框架必须有Dagger2,Rxjava的基础.</p></li>
<li><p>使用框架必需继承<code>BaseApplication</code><code>BaseActivity</code><code>BaseFragment</code><code>MVP基类</code>,还提供有一些 <code>Adapter</code><code>ViewHodler</code>等的基类.</p></li>
<li><p>测试相关框架正在研发中.</p></li>
<li>使用此框架自带自动适配功能,请参考 <a href="https://github.com/hongyangAndroid/AndroidAutoLayout">AutoLayout使用方法</a>.</li>
<li><p>本框架不提供与Ui有关的任何第三方库.</p></li>
<li><p><strong>网络请求层</strong>: 默认使用Retrofit,如今主流的网络请求框架有<code>Volley</code>,<code>Okhttp</code>,<code>Retrofit</code>(<code>Android-async-http</code>停止维护了),因为这个是库基于Rxjava, Retrofit支持Rxjava,默认使用Okhttp请求(Okhttp使用Okio,Okio基于IO和NIO所以性能优于Volley,Volley内部封装有Imageloader,支持扩展Okhttp,封装和扩展比Okhttp好,但是比较适合频繁,数据量小得网络请求),所以此库默认直接通过Dagger注入Retrofit实例给开发者.</p></li>
<li><p><strong>图片加载</strong>:因为图片加载框架各有优缺点,<code>Fresco</code>,<code>Picasso</code>,<code>Glide</code>这些都是现在比较主流得图片加载框架,所以为了扩展性本库不默认封装,提供一个统一得管理类Imageloader,使用策略者模式,使用者只用实现接口,就可以动态替换图片框架,外部提供统一接口加载图片,替换图片加载框架毫无痛点.</p></li>
<li><p><strong>Model层数据库</strong> 同样优秀的数据库太多,<code>GreenDao</code>,<code>Realm</code>,<code>SqlBrite</code>(Square公司出品,对SQLiteOpenHelper封装,提供响应式api访问数据库),<code>SqlDelight</code>,<code>Storio</code>,<code>DBFlow</code>,每个框架的使用方法都不一样,本框架只提供一个管理类DataManager里面默认封装了Realm,,有其他需求的可以自己替换,通过Dagger2向Model层提供ServiceManager(网络请求,Retrofit Api)和DataManager(数据持久层),来提供给开发者,这样的好处的是上层(activity/fragment/presenter)不需要知道数据源的细节(来自于网络、数据库,亦或是内存等等),底层可以根据需求修改(缓存的实现细节)上下两层分离互不影响.</p></li>
</ul>
<h2>
<a id="functionality--libraries" class="anchor" href="#functionality--libraries" aria-hidden="true"><span aria-hidden="true" class="octicon octicon-link"></span></a>Functionality &amp; Libraries</h2>
<ol>
<li><a href="https://github.com/googlesamples/android-architecture/tree/todo-mvp-dagger/"><code>Mvp</code>Google官方出品的<code>Mvp</code>架构项目,含有多个不同的架构分支(此为Dagger分支).</a></li>
<li><a href="https://github.com/google/dagger"><code>Dagger2</code>Google根据Square的Dagger1出品的依赖注入框架,通过apt动态生成代码,性能优于用反射技术依赖注入的框架.</a></li>
<li><a href="https://github.com/ReactiveX/RxJava"><code>Rxjava</code>提供优雅的响应式Api解决异步请求.</a></li>
<li><a href="https://github.com/ReactiveX/RxAndroid"><code>RxAndroid</code>为Android提供响应式Api.</a></li>
<li><a href="https://github.com/trello/RxLifecycle"><code>Rxlifecycle</code>在Android上使用rxjava都知道的一个坑,就是生命周期的解除订阅,这个框架通过绑定activity和fragment的生命周期完美解决.</a></li>
<li><a href="https://github.com/JakeWharton/RxBinding"><code>Rxbinding</code>JakeWharton大神的View绑定框架,优雅的处理View的响应事件.</a></li>
<li><a href="https://github.com/square/retrofit"><code>Retrofit</code>Square出品的网络请求库,极大的减少了http请求的代码和步骤.</a></li>
<li><a href="https://github.com/square/okhttp"><code>Okhttp</code>同样Square出品,不多介绍,做Android都应该知道.</a></li>
<li><a href="https://github.com/hongyangAndroid/AndroidAutoLayout"><code>Autolayout</code>鸿洋大神的Android全尺寸适配框架.</a></li>
<li><a href="https://github.com/google/gson"><code>Gson</code>Google官方的Json Convert框架.</a></li>
<li><a href="https://github.com/JakeWharton/butterknife"><code>Butterknife</code>JakeWharton大神出品的view注入框架.</a></li>
<li><a href="https://github.com/hehonghui/AndroidEventBus"><code>Androideventbus</code>一个轻量级使用注解的Eventbus.</a></li>
<li><a href="https://github.com/JakeWharton/timber"><code>Timber</code>JakeWharton大神出品Log框架,内部代码极少,但是思想非常不错.</a></li>
<li><a href="https://github.com/bumptech/glide"><code>Glide</code>此库为本框架默认封装图片加载库,可参照着列子更改为其他的库,Api和<code>Picasso</code>差不多,缓存机制比<code>Picasso</code>复杂,速度快,适合处理大型图片流,支持gfit,<code>Fresco</code>太大了!,在5.0一下优势很大,5.0以上系统默认使用的内存管理和<code>Fresco</code>类似.</a></li>
<li><a href="https://realm.io/docs/java/latest/#getting-started"><code>Realm</code>速度和跨平台性使它成为如今最火的数据库,美中不足的就是so库太大</a></li>
</ol>
<h2>
<a id="about-me" class="anchor" href="#about-me" aria-hidden="true"><span aria-hidden="true" class="octicon octicon-link"></span></a>About Me</h2>
<ul>
<li>
<strong>Email</strong>: <a href="mailto:jess.yan.effort@gmail.com">jess.yan.effort@gmail.com</a>
</li>
</ul>
<h2>
<a id="license" class="anchor" href="#license" aria-hidden="true"><span aria-hidden="true" class="octicon octicon-link"></span></a>License</h2>
<pre><code> Copyright 2016, jessyan
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
</code></pre>
<footer class="site-footer">
<span class="site-footer-owner"><a href="https://github.com/JessYanCoding/MVPArms">Mvparms</a> is maintained by <a href="https://github.com/JessYanCoding">JessYanCoding</a>.</span>
<span class="site-footer-credits">This page was generated by <a href="https://pages.github.com">GitHub Pages</a> using the <a href="https://github.com/jasonlong/cayman-theme">Cayman theme</a> by <a href="https://twitter.com/jasonlong">Jason Long</a>.</span>
</footer>
</section>
</body>
</html>
# MVPArms [beta]
##a common Architecture for Android Applications developing based on MVP,integrates many Open Source Projects ,to make your developing quicker and easier.
一个整合了大量主流开源项目的Android Mvp快速搭建框架
##Sample [In Progress]
[source from eyepetizer(仿照开眼视频的项目,开发中...)](https://github.com/JessYanCoding/WideEyes)
##Notice
* 使用框架必须有Dagger2,Rxjava的基础.
* 使用框架必需继承`BaseApplication``BaseActivity``BaseFragment``MVP基类`,还提供有一些 `Adapter``ViewHodler`等的基类.
* 测试相关框架正在研发中.
* 使用此框架自带自动适配功能,请参考 [AutoLayout使用方法](https://github.com/hongyangAndroid/AndroidAutoLayout).
* 本框架不提供与Ui有关的任何第三方库.
* **网络请求层**: 默认使用Retrofit,如今主流的网络请求框架有`Volley`,`Okhttp`,`Retrofit`(`Android-async-http`停止维护了),因为这个是库基于Rxjava, Retrofit支持Rxjava,默认使用Okhttp请求(Okhttp使用Okio,Okio基于IO和NIO所以性能优于Volley,Volley内部封装有Imageloader,支持扩展Okhttp,封装和扩展比Okhttp好,但是比较适合频繁,数据量小得网络请求),所以此库默认直接通过Dagger注入Retrofit实例给开发者.
* **图片加载**:因为图片加载框架各有优缺点,`Fresco`,`Picasso`,`Glide`这些都是现在比较主流得图片加载框架,所以为了扩展性本库不默认封装,提供一个统一得管理类Imageloader,使用策略者模式,使用者只用实现接口,就可以动态替换图片框架,外部提供统一接口加载图片,替换图片加载框架毫无痛点.
* **Model层数据库** 同样优秀的数据库太多,`GreenDao`,`Realm`,`SqlBrite`(Square公司出品,对SQLiteOpenHelper封装,提供响应式api访问数据库),`SqlDelight`,`Storio`,`DBFlow`,每个框架的使用方法都不一样,本框架只提供一个管理类DataManager里面默认封装了Realm,,有其他需求的可以自己替换,通过Dagger2向Model层提供ServiceManager(网络请求,Retrofit Api)和DataManager(数据持久层),来提供给开发者,这样的好处的是上层(activity/fragment/presenter)不需要知道数据源的细节(来自于网络、数据库,亦或是内存等等),底层可以根据需求修改(缓存的实现细节)上下两层分离互不影响.
##Functionality & Libraries
1. [`Mvp`Google官方出品的`Mvp`架构项目,含有多个不同的架构分支(此为Dagger分支).](https://github.com/googlesamples/android-architecture/tree/todo-mvp-dagger/)
2. [`Dagger2`Google根据Square的Dagger1出品的依赖注入框架,通过apt动态生成代码,性能优于用反射技术依赖注入的框架.](https://github.com/google/dagger)
3. [`Rxjava`提供优雅的响应式Api解决异步请求.](https://github.com/ReactiveX/RxJava)
4. [`RxAndroid`为Android提供响应式Api.](https://github.com/ReactiveX/RxAndroid)
5. [`Rxlifecycle`在Android上使用rxjava都知道的一个坑,就是生命周期的解除订阅,这个框架通过绑定activity和fragment的生命周期完美解决.](https://github.com/trello/RxLifecycle)
6. [`Rxbinding`JakeWharton大神的View绑定框架,优雅的处理View的响应事件.](https://github.com/JakeWharton/RxBinding)
7. [`Retrofit`Square出品的网络请求库,极大的减少了http请求的代码和步骤.](https://github.com/square/retrofit)
8. [`Okhttp`同样Square出品,不多介绍,做Android都应该知道.](https://github.com/square/okhttp)
9. [`Autolayout`鸿洋大神的Android全尺寸适配框架.](https://github.com/hongyangAndroid/AndroidAutoLayout)
10. [`Gson`Google官方的Json Convert框架.](https://github.com/google/gson)
11. [`Butterknife`JakeWharton大神出品的view注入框架.](https://github.com/JakeWharton/butterknife)
12. [`Androideventbus`一个轻量级使用注解的Eventbus.](https://github.com/hehonghui/AndroidEventBus)
13. [`Timber`JakeWharton大神出品Log框架,内部代码极少,但是思想非常不错.](https://github.com/JakeWharton/timber)
14. [`Glide`此库为本框架默认封装图片加载库,可参照着列子更改为其他的库,Api和`Picasso`差不多,缓存机制比`Picasso`复杂,速度快,适合处理大型图片流,支持gfit,`Fresco`太大了!,在5.0一下优势很大,5.0以上系统默认使用的内存管理和`Fresco`类似.](https://github.com/bumptech/glide)
15. [`Realm`速度和跨平台性使它成为如今最火的数据库,美中不足的就是so库太大](https://realm.io/docs/java/latest/#getting-started)
##About Me
* **Email**: jess.yan.effort@gmail.com
##License
```
Copyright 2016, jessyan
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
```
{
"name": "Mvparms",
"tagline": "a common Architecture for Android Applications developing based on MVP,integrates many Open Source Projects ,to make your developing quicker and easier. ( 一个整合了大量主流开源项目的Android Mvp快速搭建框架)",
"body": "# MVPArms [beta]\r\n##a common Architecture for Android Applications developing based on MVP,integrates many Open Source Projects ,to make your developing quicker and easier. \r\n一个整合了大量主流开源项目的Android Mvp快速搭建框架\r\n\r\n##Sample [In Progress]\r\n[source from eyepetizer(仿照开眼视频的项目,开发中...)](https://github.com/JessYanCoding/WideEyes) \r\n\r\n##Notice\r\n* 使用框架必须有Dagger2,Rxjava的基础.\r\n\r\n* 使用框架必需继承`BaseApplication``BaseActivity``BaseFragment``MVP基类`,还提供有一些 `Adapter``ViewHodler`等的基类.\r\n\r\n* 测试相关框架正在研发中.\r\n* 使用此框架自带自动适配功能,请参考 [AutoLayout使用方法](https://github.com/hongyangAndroid/AndroidAutoLayout).\r\n* 本框架不提供与Ui有关的任何第三方库.\r\n\r\n* **网络请求层**: 默认使用Retrofit,如今主流的网络请求框架有`Volley`,`Okhttp`,`Retrofit`(`Android-async-http`停止维护了),因为这个是库基于Rxjava, Retrofit支持Rxjava,默认使用Okhttp请求(Okhttp使用Okio,Okio基于IO和NIO所以性能优于Volley,Volley内部封装有Imageloader,支持扩展Okhttp,封装和扩展比Okhttp好,但是比较适合频繁,数据量小得网络请求),所以此库默认直接通过Dagger注入Retrofit实例给开发者.\r\n\r\n* **图片加载**:因为图片加载框架各有优缺点,`Fresco`,`Picasso`,`Glide`这些都是现在比较主流得图片加载框架,所以为了扩展性本库不默认封装,提供一个统一得管理类Imageloader,使用策略者模式,使用者只用实现接口,就可以动态替换图片框架,外部提供统一接口加载图片,替换图片加载框架毫无痛点.\r\n\r\n* **Model层数据库** 同样优秀的数据库太多,`GreenDao`,`Realm`,`SqlBrite`(Square公司出品,对SQLiteOpenHelper封装,提供响应式api访问数据库),`SqlDelight`,`Storio`,`DBFlow`,每个框架的使用方法都不一样,本框架只提供一个管理类DataManager里面默认封装了Realm,,有其他需求的可以自己替换,通过Dagger2向Model层提供ServiceManager(网络请求,Retrofit Api)和DataManager(数据持久层),来提供给开发者,这样的好处的是上层(activity/fragment/presenter)不需要知道数据源的细节(来自于网络、数据库,亦或是内存等等),底层可以根据需求修改(缓存的实现细节)上下两层分离互不影响.\r\n\r\n##Functionality & Libraries\r\n1. [`Mvp`Google官方出品的`Mvp`架构项目,含有多个不同的架构分支(此为Dagger分支).](https://github.com/googlesamples/android-architecture/tree/todo-mvp-dagger/)\r\n2. [`Dagger2`Google根据Square的Dagger1出品的依赖注入框架,通过apt动态生成代码,性能优于用反射技术依赖注入的框架.](https://github.com/google/dagger)\r\n3. [`Rxjava`提供优雅的响应式Api解决异步请求.](https://github.com/ReactiveX/RxJava)\r\n4. [`RxAndroid`为Android提供响应式Api.](https://github.com/ReactiveX/RxAndroid)\r\n5. [`Rxlifecycle`在Android上使用rxjava都知道的一个坑,就是生命周期的解除订阅,这个框架通过绑定activity和fragment的生命周期完美解决.](https://github.com/trello/RxLifecycle)\r\n6. [`Rxbinding`JakeWharton大神的View绑定框架,优雅的处理View的响应事件.](https://github.com/JakeWharton/RxBinding)\r\n7. [`Retrofit`Square出品的网络请求库,极大的减少了http请求的代码和步骤.](https://github.com/square/retrofit)\r\n8. [`Okhttp`同样Square出品,不多介绍,做Android都应该知道.](https://github.com/square/okhttp)\r\n9. [`Autolayout`鸿洋大神的Android全尺寸适配框架.](https://github.com/hongyangAndroid/AndroidAutoLayout)\r\n10. [`Gson`Google官方的Json Convert框架.](https://github.com/google/gson)\r\n11. [`Butterknife`JakeWharton大神出品的view注入框架.](https://github.com/JakeWharton/butterknife)\r\n12. [`Androideventbus`一个轻量级使用注解的Eventbus.](https://github.com/hehonghui/AndroidEventBus)\r\n13. [`Timber`JakeWharton大神出品Log框架,内部代码极少,但是思想非常不错.](https://github.com/JakeWharton/timber)\r\n14. [`Glide`此库为本框架默认封装图片加载库,可参照着列子更改为其他的库,Api和`Picasso`差不多,缓存机制比`Picasso`复杂,速度快,适合处理大型图片流,支持gfit,`Fresco`太大了!,在5.0一下优势很大,5.0以上系统默认使用的内存管理和`Fresco`类似.](https://github.com/bumptech/glide)\r\n15. [`Realm`速度和跨平台性使它成为如今最火的数据库,美中不足的就是so库太大](https://realm.io/docs/java/latest/#getting-started)\r\n \r\n\r\n##About Me\r\n* **Email**: jess.yan.effort@gmail.com\r\n\r\n##License\r\n```\r\n Copyright 2016, jessyan\r\n\r\n Licensed under the Apache License, Version 2.0 (the \"License\");\r\n you may not use this file except in compliance with the License.\r\n You may obtain a copy of the License at\r\n\r\n http://www.apache.org/licenses/LICENSE-2.0\r\n\r\n Unless required by applicable law or agreed to in writing, software\r\n distributed under the License is distributed on an \"AS IS\" BASIS,\r\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\n See the License for the specific language governing permissions and\r\n limitations under the License.\r\n```\r\n",
"note": "Don't delete this file! It's used internally to help with page regeneration."
}
\ No newline at end of file
/*
The MIT License (MIT)
Copyright (c) 2016 GitHub, Inc.
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.
*/
.pl-c /* comment */ {
color: #969896;
}
.pl-c1 /* constant, variable.other.constant, support, meta.property-name, support.constant, support.variable, meta.module-reference, markup.raw, meta.diff.header */,
.pl-s .pl-v /* string variable */ {
color: #0086b3;
}
.pl-e /* entity */,
.pl-en /* entity.name */ {
color: #795da3;
}
.pl-smi /* variable.parameter.function, storage.modifier.package, storage.modifier.import, storage.type.java, variable.other */,
.pl-s .pl-s1 /* string source */ {
color: #333;
}
.pl-ent /* entity.name.tag */ {
color: #63a35c;
}
.pl-k /* keyword, storage, storage.type */ {
color: #a71d5d;
}
.pl-s /* string */,
.pl-pds /* punctuation.definition.string, string.regexp.character-class */,
.pl-s .pl-pse .pl-s1 /* string punctuation.section.embedded source */,
.pl-sr /* string.regexp */,
.pl-sr .pl-cce /* string.regexp constant.character.escape */,
.pl-sr .pl-sre /* string.regexp source.ruby.embedded */,
.pl-sr .pl-sra /* string.regexp string.regexp.arbitrary-repitition */ {
color: #183691;
}
.pl-v /* variable */ {
color: #ed6a43;
}
.pl-id /* invalid.deprecated */ {
color: #b52a1d;
}
.pl-ii /* invalid.illegal */ {
color: #f8f8f8;
background-color: #b52a1d;
}
.pl-sr .pl-cce /* string.regexp constant.character.escape */ {
font-weight: bold;
color: #63a35c;
}
.pl-ml /* markup.list */ {
color: #693a17;
}
.pl-mh /* markup.heading */,
.pl-mh .pl-en /* markup.heading entity.name */,
.pl-ms /* meta.separator */ {
font-weight: bold;
color: #1d3e81;
}
.pl-mq /* markup.quote */ {
color: #008080;
}
.pl-mi /* markup.italic */ {
font-style: italic;
color: #333;
}
.pl-mb /* markup.bold */ {
font-weight: bold;
color: #333;
}
.pl-md /* markup.deleted, meta.diff.header.from-file */ {
color: #bd2c00;
background-color: #ffecec;
}
.pl-mi1 /* markup.inserted, meta.diff.header.to-file */ {
color: #55a532;
background-color: #eaffea;
}
.pl-mdr /* meta.diff.range */ {
font-weight: bold;
color: #795da3;
}
.pl-mo /* meta.output */ {
color: #1d3e81;
}
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
* 1. Set default font family to sans-serif.
* 2. Prevent iOS text size adjust after orientation change, without disabling
* user zoom.
*/
html {
font-family: sans-serif; /* 1 */
-ms-text-size-adjust: 100%; /* 2 */
-webkit-text-size-adjust: 100%; /* 2 */
}
/**
* Remove default margin.
*/
body {
margin: 0;
}
/* HTML5 display definitions
========================================================================== */
/**
* Correct `block` display not defined for any HTML5 element in IE 8/9.
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox.
* Correct `block` display not defined for `main` in IE 11.
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
display: block;
}
/**
* 1. Correct `inline-block` display not defined in IE 8/9.
* 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
*/
audio,
canvas,
progress,
video {
display: inline-block; /* 1 */
vertical-align: baseline; /* 2 */
}
/**
* Prevent modern browsers from displaying `audio` without controls.
* Remove excess height in iOS 5 devices.
*/
audio:not([controls]) {
display: none;
height: 0;
}
/**
* Address `[hidden]` styling not present in IE 8/9/10.
* Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
*/
[hidden],
template {
display: none;
}
/* Links
========================================================================== */
/**
* Remove the gray background color from active links in IE 10.
*/
a {
background-color: transparent;
}
/**
* Improve readability when focused and also mouse hovered in all browsers.
*/
a:active,
a:hover {
outline: 0;
}
/* Text-level semantics
========================================================================== */
/**
* Address styling not present in IE 8/9/10/11, Safari, and Chrome.
*/
abbr[title] {
border-bottom: 1px dotted;
}
/**
* Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
*/
b,
strong {
font-weight: bold;
}
/**
* Address styling not present in Safari and Chrome.
*/
dfn {
font-style: italic;
}
/**
* Address variable `h1` font-size and margin within `section` and `article`
* contexts in Firefox 4+, Safari, and Chrome.
*/
h1 {
font-size: 2em;
margin: 0.67em 0;
}
/**
* Address styling not present in IE 8/9.
*/
mark {
background: #ff0;
color: #000;
}
/**
* Address inconsistent and variable font size in all browsers.
*/
small {
font-size: 80%;
}
/**
* Prevent `sub` and `sup` affecting `line-height` in all browsers.
*/
sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sup {
top: -0.5em;
}
sub {
bottom: -0.25em;
}
/* Embedded content
========================================================================== */
/**
* Remove border when inside `a` element in IE 8/9/10.
*/
img {
border: 0;
}
/**
* Correct overflow not hidden in IE 9/10/11.
*/
svg:not(:root) {
overflow: hidden;
}
/* Grouping content
========================================================================== */
/**
* Address margin not present in IE 8/9 and Safari.
*/
figure {
margin: 1em 40px;
}
/**
* Address differences between Firefox and other browsers.
*/
hr {
box-sizing: content-box;
height: 0;
}
/**
* Contain overflow in all browsers.
*/
pre {
overflow: auto;
}
/**
* Address odd `em`-unit font size rendering in all browsers.
*/
code,
kbd,
pre,
samp {
font-family: monospace, monospace;
font-size: 1em;
}
/* Forms
========================================================================== */
/**
* Known limitation: by default, Chrome and Safari on OS X allow very limited
* styling of `select`, unless a `border` property is set.
*/
/**
* 1. Correct color not being inherited.
* Known issue: affects color of disabled elements.
* 2. Correct font properties not being inherited.
* 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
*/
button,
input,
optgroup,
select,
textarea {
color: inherit; /* 1 */
font: inherit; /* 2 */
margin: 0; /* 3 */
}
/**
* Address `overflow` set to `hidden` in IE 8/9/10/11.
*/
button {
overflow: visible;
}
/**
* Address inconsistent `text-transform` inheritance for `button` and `select`.
* All other form control elements do not inherit `text-transform` values.
* Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
* Correct `select` style inheritance in Firefox.
*/
button,
select {
text-transform: none;
}
/**
* 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
* and `video` controls.
* 2. Correct inability to style clickable `input` types in iOS.
* 3. Improve usability and consistency of cursor style between image-type
* `input` and others.
*/
button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
-webkit-appearance: button; /* 2 */
cursor: pointer; /* 3 */
}
/**
* Re-set default cursor for disabled elements.
*/
button[disabled],
html input[disabled] {
cursor: default;
}
/**
* Remove inner padding and border in Firefox 4+.
*/
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0;
}
/**
* Address Firefox 4+ setting `line-height` on `input` using `!important` in
* the UA stylesheet.
*/
input {
line-height: normal;
}
/**
* It's recommended that you don't attempt to style these elements.
* Firefox's implementation doesn't respect box-sizing, padding, or width.
*
* 1. Address box sizing set to `content-box` in IE 8/9/10.
* 2. Remove excess padding in IE 8/9/10.
*/
input[type="checkbox"],
input[type="radio"] {
box-sizing: border-box; /* 1 */
padding: 0; /* 2 */
}
/**
* Fix the cursor style for Chrome's increment/decrement buttons. For certain
* `font-size` values of the `input`, it causes the cursor style of the
* decrement button to change from `default` to `text`.
*/
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
height: auto;
}
/**
* 1. Address `appearance` set to `searchfield` in Safari and Chrome.
* 2. Address `box-sizing` set to `border-box` in Safari and Chrome
* (include `-moz` to future-proof).
*/
input[type="search"] {
-webkit-appearance: textfield; /* 1 */ /* 2 */
box-sizing: content-box;
}
/**
* Remove inner padding and search cancel button in Safari and Chrome on OS X.
* Safari (but not Chrome) clips the cancel button when the search input has
* padding (and `textfield` appearance).
*/
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
/**
* Define consistent border, margin, and padding.
*/
fieldset {
border: 1px solid #c0c0c0;
margin: 0 2px;
padding: 0.35em 0.625em 0.75em;
}
/**
* 1. Correct `color` not being inherited in IE 8/9/10/11.
* 2. Remove padding so people aren't caught out if they zero out fieldsets.
*/
legend {
border: 0; /* 1 */
padding: 0; /* 2 */
}
/**
* Remove default vertical scrollbar in IE 8/9/10/11.
*/
textarea {
overflow: auto;
}
/**
* Don't inherit the `font-weight` (applied by a rule above).
* NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
*/
optgroup {
font-weight: bold;
}
/* Tables
========================================================================== */
/**
* Remove most spacing between table cells.
*/
table {
border-collapse: collapse;
border-spacing: 0;
}
td,
th {
padding: 0;
}
* {
box-sizing: border-box; }
body {
padding: 0;
margin: 0;
font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: 16px;
line-height: 1.5;
color: #606c71; }
a {
color: #1e6bb8;
text-decoration: none; }
a:hover {
text-decoration: underline; }
.btn {
display: inline-block;
margin-bottom: 1rem;
color: rgba(255, 255, 255, 0.7);
background-color: rgba(255, 255, 255, 0.08);
border-color: rgba(255, 255, 255, 0.2);
border-style: solid;
border-width: 1px;
border-radius: 0.3rem;
transition: color 0.2s, background-color 0.2s, border-color 0.2s; }
.btn + .btn {
margin-left: 1rem; }
.btn:hover {
color: rgba(255, 255, 255, 0.8);
text-decoration: none;
background-color: rgba(255, 255, 255, 0.2);
border-color: rgba(255, 255, 255, 0.3); }
@media screen and (min-width: 64em) {
.btn {
padding: 0.75rem 1rem; } }
@media screen and (min-width: 42em) and (max-width: 64em) {
.btn {
padding: 0.6rem 0.9rem;
font-size: 0.9rem; } }
@media screen and (max-width: 42em) {
.btn {
display: block;
width: 100%;
padding: 0.75rem;
font-size: 0.9rem; }
.btn + .btn {
margin-top: 1rem;
margin-left: 0; } }
.page-header {
color: #fff;
text-align: center;
background-color: #159957;
background-image: linear-gradient(120deg, #155799, #159957); }
@media screen and (min-width: 64em) {
.page-header {
padding: 5rem 6rem; } }
@media screen and (min-width: 42em) and (max-width: 64em) {
.page-header {
padding: 3rem 4rem; } }
@media screen and (max-width: 42em) {
.page-header {
padding: 2rem 1rem; } }
.project-name {
margin-top: 0;
margin-bottom: 0.1rem; }
@media screen and (min-width: 64em) {
.project-name {
font-size: 3.25rem; } }
@media screen and (min-width: 42em) and (max-width: 64em) {
.project-name {
font-size: 2.25rem; } }
@media screen and (max-width: 42em) {
.project-name {
font-size: 1.75rem; } }
.project-tagline {
margin-bottom: 2rem;
font-weight: normal;
opacity: 0.7; }
@media screen and (min-width: 64em) {
.project-tagline {
font-size: 1.25rem; } }
@media screen and (min-width: 42em) and (max-width: 64em) {
.project-tagline {
font-size: 1.15rem; } }
@media screen and (max-width: 42em) {
.project-tagline {
font-size: 1rem; } }
.main-content :first-child {
margin-top: 0; }
.main-content img {
max-width: 100%; }
.main-content h1, .main-content h2, .main-content h3, .main-content h4, .main-content h5, .main-content h6 {
margin-top: 2rem;
margin-bottom: 1rem;
font-weight: normal;
color: #159957; }
.main-content p {
margin-bottom: 1em; }
.main-content code {
padding: 2px 4px;
font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace;
font-size: 0.9rem;
color: #383e41;
background-color: #f3f6fa;
border-radius: 0.3rem; }
.main-content pre {
padding: 0.8rem;
margin-top: 0;
margin-bottom: 1rem;
font: 1rem Consolas, "Liberation Mono", Menlo, Courier, monospace;
color: #567482;
word-wrap: normal;
background-color: #f3f6fa;
border: solid 1px #dce6f0;
border-radius: 0.3rem; }
.main-content pre > code {
padding: 0;
margin: 0;
font-size: 0.9rem;
color: #567482;
word-break: normal;
white-space: pre;
background: transparent;
border: 0; }
.main-content .highlight {
margin-bottom: 1rem; }
.main-content .highlight pre {
margin-bottom: 0;
word-break: normal; }
.main-content .highlight pre, .main-content pre {
padding: 0.8rem;
overflow: auto;
font-size: 0.9rem;
line-height: 1.45;
border-radius: 0.3rem; }
.main-content pre code, .main-content pre tt {
display: inline;
max-width: initial;
padding: 0;
margin: 0;
overflow: initial;
line-height: inherit;
word-wrap: normal;
background-color: transparent;
border: 0; }
.main-content pre code:before, .main-content pre code:after, .main-content pre tt:before, .main-content pre tt:after {
content: normal; }
.main-content ul, .main-content ol {
margin-top: 0; }
.main-content blockquote {
padding: 0 1rem;
margin-left: 0;
color: #819198;
border-left: 0.3rem solid #dce6f0; }
.main-content blockquote > :first-child {
margin-top: 0; }
.main-content blockquote > :last-child {
margin-bottom: 0; }
.main-content table {
display: block;
width: 100%;
overflow: auto;
word-break: normal;
word-break: keep-all; }
.main-content table th {
font-weight: bold; }
.main-content table th, .main-content table td {
padding: 0.5rem 1rem;
border: 1px solid #e9ebec; }
.main-content dl {
padding: 0; }
.main-content dl dt {
padding: 0;
margin-top: 1rem;
font-size: 1rem;
font-weight: bold; }
.main-content dl dd {
padding: 0;
margin-bottom: 1rem; }
.main-content hr {
height: 2px;
padding: 0;
margin: 1rem 0;
background-color: #eff0f1;
border: 0; }
@media screen and (min-width: 64em) {
.main-content {
max-width: 64rem;
padding: 2rem 6rem;
margin: 0 auto;
font-size: 1.1rem; } }
@media screen and (min-width: 42em) and (max-width: 64em) {
.main-content {
padding: 2rem 4rem;
font-size: 1.1rem; } }
@media screen and (max-width: 42em) {
.main-content {
padding: 2rem 1rem;
font-size: 1rem; } }
.site-footer {
padding-top: 2rem;
margin-top: 2rem;
border-top: solid 1px #eff0f1; }
.site-footer-owner {
display: block;
font-weight: bold; }
.site-footer-credits {
color: #819198; }
@media screen and (min-width: 64em) {
.site-footer {
font-size: 1rem; } }
@media screen and (min-width: 42em) and (max-width: 64em) {
.site-footer {
font-size: 1rem; } }
@media screen and (max-width: 42em) {
.site-footer {
font-size: 0.9rem; } }
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册