From 091f899c3d029846b039b7c9b79b1639ab7e2bc5 Mon Sep 17 00:00:00 2001 From: waileung Date: Thu, 31 Dec 2015 14:37:11 +0800 Subject: [PATCH 1/3] db.json --- db.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/db.json b/db.json index 9e06d0f..7a2291a 100644 --- a/db.json +++ b/db.json @@ -1 +1 @@ -{"meta":{"version":1,"warehouse":"1.0.3"},"models":{"Asset":[{"_id":"source/robots.txt","path":"robots.txt","modified":0},{"_id":"themes/navy/source/js/toc.js","path":"js/toc.js","modified":0},{"_id":"themes/navy/source/js/plugins.js","path":"js/plugins.js","modified":0},{"_id":"themes/navy/source/js/mobile_nav.js","path":"js/mobile_nav.js","modified":0},{"_id":"themes/navy/source/js/lunr.js","path":"js/lunr.js","modified":0},{"_id":"themes/navy/source/js/lang_select.js","path":"js/lang_select.js","modified":0},{"_id":"themes/navy/source/js/jquery.js","path":"js/jquery.js","modified":0},{"_id":"themes/navy/source/js/hammer.js","path":"js/hammer.js","modified":0},{"_id":"themes/navy/source/img/yandex-browser-manifest.json","path":"img/yandex-browser-manifest.json","modified":0},{"_id":"themes/navy/source/img/yandex-browser-50x50.png","path":"img/yandex-browser-50x50.png","modified":0},{"_id":"themes/navy/source/img/twitter.png","path":"img/twitter.png","modified":0},{"_id":"themes/navy/source/img/open-graph.png","path":"img/open-graph.png","modified":0},{"_id":"themes/navy/source/img/mstile-70x70.png","path":"img/mstile-70x70.png","modified":0},{"_id":"themes/navy/source/img/mstile-310x310.png","path":"img/mstile-310x310.png","modified":0},{"_id":"themes/navy/source/img/mstile-310x150.png","path":"img/mstile-310x150.png","modified":0},{"_id":"themes/navy/source/img/mstile-150x150.png","path":"img/mstile-150x150.png","modified":0},{"_id":"themes/navy/source/img/mstile-144x144.png","path":"img/mstile-144x144.png","modified":0},{"_id":"themes/navy/source/img/manifest.webapp","path":"img/manifest.webapp","modified":0},{"_id":"themes/navy/source/img/manifest.json","path":"img/manifest.json","modified":0},{"_id":"themes/navy/source/img/logo.png","path":"img/logo.png","modified":0},{"_id":"themes/navy/source/img/firefox_app_60x60.png","path":"img/firefox_app_60x60.png","modified":0},{"_id":"themes/navy/source/img/firefox_app_512x512.png","path":"img/firefox_app_512x512.png","modified":0},{"_id":"themes/navy/source/img/firefox_app_128x128.png","path":"img/firefox_app_128x128.png","modified":0},{"_id":"themes/navy/source/img/favicon.ico","path":"img/favicon.ico","modified":0},{"_id":"themes/navy/source/img/favicon-96x96.png","path":"img/favicon-96x96.png","modified":0},{"_id":"themes/navy/source/img/favicon-32x32.png","path":"img/favicon-32x32.png","modified":0},{"_id":"themes/navy/source/img/favicon-230x230.png","path":"img/favicon-230x230.png","modified":0},{"_id":"themes/navy/source/img/favicon-16x16.png","path":"img/favicon-16x16.png","modified":0},{"_id":"themes/navy/source/img/coast-228x228.png","path":"img/coast-228x228.png","modified":0},{"_id":"themes/navy/source/img/browserconfig.xml","path":"img/browserconfig.xml","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-768x1004.png","path":"img/apple-touch-startup-image-768x1004.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-750x1294.png","path":"img/apple-touch-startup-image-750x1294.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-748x1024.png","path":"img/apple-touch-startup-image-748x1024.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-640x920.png","path":"img/apple-touch-startup-image-640x920.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-640x1096.png","path":"img/apple-touch-startup-image-640x1096.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-320x460.png","path":"img/apple-touch-startup-image-320x460.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-1536x2008.png","path":"img/apple-touch-startup-image-1536x2008.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-1496x2048.png","path":"img/apple-touch-startup-image-1496x2048.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-1242x2148.png","path":"img/apple-touch-startup-image-1242x2148.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-1182x2208.png","path":"img/apple-touch-startup-image-1182x2208.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon.png","path":"img/apple-touch-icon.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-precomposed.png","path":"img/apple-touch-icon-precomposed.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-76x76.png","path":"img/apple-touch-icon-76x76.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-72x72.png","path":"img/apple-touch-icon-72x72.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-60x60.png","path":"img/apple-touch-icon-60x60.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-57x57.png","path":"img/apple-touch-icon-57x57.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-180x180.png","path":"img/apple-touch-icon-180x180.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-152x152.png","path":"img/apple-touch-icon-152x152.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-144x144.png","path":"img/apple-touch-icon-144x144.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-120x120.png","path":"img/apple-touch-icon-120x120.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-114x114.png","path":"img/apple-touch-icon-114x114.png","modified":0},{"_id":"themes/navy/source/img/android-chrome-96x96.png","path":"img/android-chrome-96x96.png","modified":0},{"_id":"themes/navy/source/img/android-chrome-72x72.png","path":"img/android-chrome-72x72.png","modified":0},{"_id":"themes/navy/source/img/android-chrome-48x48.png","path":"img/android-chrome-48x48.png","modified":0},{"_id":"themes/navy/source/img/android-chrome-36x36.png","path":"img/android-chrome-36x36.png","modified":0},{"_id":"themes/navy/source/img/android-chrome-192x192.png","path":"img/android-chrome-192x192.png","modified":0},{"_id":"themes/navy/source/img/android-chrome-144x144.png","path":"img/android-chrome-144x144.png","modified":0},{"_id":"themes/navy/source/fonts/lato/v11/rZPI2gHXi8zxUjnybc2ZQFKPGs1ZzpMvnHX-7fPOuAc.woff2","path":"fonts/lato/v11/rZPI2gHXi8zxUjnybc2ZQFKPGs1ZzpMvnHX-7fPOuAc.woff2","modified":0},{"_id":"themes/navy/source/fonts/lato/v11/MgNNr5y1C_tIEuLEmicLmwLUuEpTyoUstqEm5AMlJo4.woff2","path":"fonts/lato/v11/MgNNr5y1C_tIEuLEmicLmwLUuEpTyoUstqEm5AMlJo4.woff2","modified":0},{"_id":"themes/navy/source/fonts/lato/v11/MDadn8DQ_3oT6kvnUq_2r_esZW2xOQ-xsNqO47m55DA.woff2","path":"fonts/lato/v11/MDadn8DQ_3oT6kvnUq_2r_esZW2xOQ-xsNqO47m55DA.woff2","modified":0},{"_id":"themes/navy/source/fonts/lato/v11/IY9HZVvI1cMoAHxvl0w9LVKPGs1ZzpMvnHX-7fPOuAc.woff2","path":"fonts/lato/v11/IY9HZVvI1cMoAHxvl0w9LVKPGs1ZzpMvnHX-7fPOuAc.woff2","modified":0},{"_id":"themes/navy/source/fonts/lato/v11/8qcEw_nrk_5HEcCpYdJu8BTbgVql8nDJpwnrE27mub0.woff2","path":"fonts/lato/v11/8qcEw_nrk_5HEcCpYdJu8BTbgVql8nDJpwnrE27mub0.woff2","modified":0},{"_id":"themes/navy/source/fonts/lato/v11/22JRxvfANxSmnAhzbFH8PgLUuEpTyoUstqEm5AMlJo4.woff2","path":"fonts/lato/v11/22JRxvfANxSmnAhzbFH8PgLUuEpTyoUstqEm5AMlJo4.woff2","modified":0},{"_id":"themes/navy/source/fonts/fontawesome-webfont.woff2","path":"fonts/fontawesome-webfont.woff2","modified":0},{"_id":"themes/navy/source/fonts/fontawesome-webfont.woff","path":"fonts/fontawesome-webfont.woff","modified":0},{"_id":"themes/navy/source/fonts/fontawesome-webfont.ttf","path":"fonts/fontawesome-webfont.ttf","modified":0},{"_id":"themes/navy/source/fonts/fontawesome-webfont.svg","path":"fonts/fontawesome-webfont.svg","modified":0},{"_id":"themes/navy/source/fonts/fontawesome-webfont.eot","path":"fonts/fontawesome-webfont.eot","modified":0},{"_id":"themes/navy/source/fonts/FontAwesome.otf","path":"fonts/FontAwesome.otf","modified":0},{"_id":"themes/navy/source/css/navy.styl","path":"css/navy.styl","modified":0},{"_id":"themes/navy/source/assets/bootstrap/js/npm.js","path":"assets/bootstrap/js/npm.js","modified":0},{"_id":"themes/navy/source/assets/bootstrap/js/bootstrap.min.js","path":"assets/bootstrap/js/bootstrap.min.js","modified":0},{"_id":"themes/navy/source/assets/bootstrap/js/bootstrap.js","path":"assets/bootstrap/js/bootstrap.js","modified":0},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.woff2","path":"assets/bootstrap/fonts/glyphicons-halflings-regular.woff2","modified":0},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.woff","path":"assets/bootstrap/fonts/glyphicons-halflings-regular.woff","modified":0},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.ttf","path":"assets/bootstrap/fonts/glyphicons-halflings-regular.ttf","modified":0},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.svg","path":"assets/bootstrap/fonts/glyphicons-halflings-regular.svg","modified":0},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.eot","path":"assets/bootstrap/fonts/glyphicons-halflings-regular.eot","modified":0},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap.min.css","path":"assets/bootstrap/css/bootstrap.min.css","modified":0},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap.css.map","path":"assets/bootstrap/css/bootstrap.css.map","modified":0},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap.css","path":"assets/bootstrap/css/bootstrap.css","modified":0},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap-theme.min.css","path":"assets/bootstrap/css/bootstrap-theme.min.css","modified":0},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap-theme.css.map","path":"assets/bootstrap/css/bootstrap-theme.css.map","modified":0},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap-theme.css","path":"assets/bootstrap/css/bootstrap-theme.css","modified":0},{"_id":"source/favicon.ico","path":"favicon.ico","modified":0},{"_id":"source/browserconfig.xml","path":"browserconfig.xml","modified":0}],"Cache":[{"_id":"source/_data/languages.yml","shasum":"e7236479d958a4443f8becd7287c20bc815ef8b6","modified":1448209234000},{"_id":"source/_data/menu.yml","shasum":"7b7141b1bf34b75b168e7d0db3bec4f35be42135","modified":1448209234000},{"_id":"source/_data/plugins.yml","shasum":"ae9f4b2292c303ac0efd4719c16b1dccb11ae466","modified":1448209234000},{"_id":"source/_data/sidebar.yml","shasum":"70cc4d9b50560f3c9506a335e74ec95a2f0a4d41","modified":1450247576000},{"_id":"source/_posts/2015-11-13-first-released.md","shasum":"47e392c43c3580f1b9e903f1788795b57cb5acfa","modified":1448209234000},{"_id":"source/_data/themes.yml","shasum":"03e3807c4f6f38f686b9cfcfd5ea301b89de5fe5","modified":1448209234000},{"_id":"source/_posts/2015-11-15-beta-released.md","shasum":"3966a91622907adee43de1359450eb045d9eda38","modified":1448209234000},{"_id":"source/browserconfig.xml","shasum":"f54412705ab9eb69b544f438c9a1e15ae57f27c0","modified":1448209234000},{"_id":"source/docs/common/markdown.md","shasum":"c7eacb1258ac0759b0c67422e6fa42908f143d4a","modified":1448209234000},{"_id":"source/docs/common.md","shasum":"ad4e22abef23c7f82a2cb7647d2daf11ee54c3a0","modified":1449039740000},{"_id":"source/docs/contributing.md","shasum":"9ce63f664799d5084c39287be4fef74e9f87fb8a","modified":1448209234000},{"_id":"source/docs/css/code.md","shasum":"bfe67330609aa87fac923513adcdeece88bc4f07","modified":1449047624000},{"_id":"source/docs/css/jdc_fd_guide_css.md","shasum":"085d1e7abc1796a5e6f91c504b23ead6e87e0383","modified":1449040629000},{"_id":"source/docs/css/note.md","shasum":"f18b53f146dfdcb9ae3647189f6e0c45f7b59b7e","modified":1449047626000},{"_id":"source/docs/css/query.md","shasum":"4f23e4b8fb42f9b0703d60a3634142ba8ba7be33","modified":1449045367000},{"_id":"source/docs/css/reset.md","shasum":"b84aeb91fa2272f8b1f3c561d6aeacc9e7663df1","modified":1449045369000},{"_id":"source/docs/css/sass.md","shasum":"30c0c54e09e19b31c2dc15d5822ff51dc3b2d304","modified":1449490469000},{"_id":"source/docs/html/code.md","shasum":"90e3b52ff2bc4c010ce5ec63d9921d750be1f8e6","modified":1449113724000},{"_id":"source/docs/html/jdc_fd_web_final_2.md","shasum":"d22358bfa7ff34beb85b8110f56891c5bd40d5b1","modified":1445259633000},{"_id":"source/docs/html/note.md","shasum":"c0ae02042e196f92022672ecc9dd4420b68ba31a","modified":1449027444000},{"_id":"source/docs/html/template.md","shasum":"0bb957f97e52f1912204348ad30ff089fb95745d","modified":1450250204000},{"_id":"source/docs/html/webapp.md","shasum":"899f1c2a03f85e7162c7ab60788ea227423028a7","modified":1449124329000},{"_id":"source/docs/image/format.md","shasum":"a11bd0fbb49a3489e778116c8099b017f191915f","modified":1449125480000},{"_id":"source/docs/image/import.md","shasum":"627c59cb64fd3215f9045b8160fa5250eb3a162e","modified":1449048197000},{"_id":"source/docs/image/jdc_fd_guide_image.md","shasum":"313bf7e43599f07ff978735f8dcb45e3353f70e1","modified":1449039658000},{"_id":"source/docs/image/quality.md","shasum":"47d2094b5414d17ecb92b9d735e55a5c14deda17","modified":1449039503000},{"_id":"source/docs/image/size.md","shasum":"e467d93ef8579cf33a2f409d2f5eb9b7c6ad2ab3","modified":1449039663000},{"_id":"source/docs/index.md","shasum":"30e863725b1e66ec38b1a693001b06c65a59e1c4","modified":1450248633000},{"_id":"source/docs/issues.md","shasum":"a0a71958bb2955e2024aa756e7254cbcecf64b87","modified":1449039738000},{"_id":"source/docs/name/classname.md","shasum":"29d380629ffb0a8ba203c21bce80f760f1fd0d9d","modified":1449412501000},{"_id":"source/docs/name/dir.md","shasum":"1b05f84302aa9b4d523e354480db3f1b2785e19c","modified":1449412403000},{"_id":"source/docs/name/htmlcss.md","shasum":"67e093477248eb2e485e752a9306569a44f0fa7f","modified":1449412342000},{"_id":"source/docs/name/image.md","shasum":"c3afa8d3162a07f49f1a3ec6ffa62c71dafc7d59","modified":1449412222000},{"_id":"source/docs/name/jdc_fd_guide_name.md","shasum":"e6c0ac73a7f5d3b443b428ecd4e93f1e89ebd9e9","modified":1449222369000},{"_id":"source/favicon.ico","shasum":"6b4f249bbfe90f3ad41aa774e255d3a69f700b62","modified":1449130820000},{"_id":"source/index.jade","shasum":"9430f540afc58e743e6ef0c93b4764f8b24c0326","modified":1450249796000},{"_id":"source/plugins/index.md","shasum":"3559a5b18670ac4bbf333c74aa4ad3577eeec9f6","modified":1448209234000},{"_id":"source/robots.txt","shasum":"55107e568647402d4e0d108be00fce6bded104d8","modified":1448209234000},{"_id":"source/themes/index.md","shasum":"202fe8ff6c5b1b371407ab5ba723453e006a043b","modified":1448209234000},{"_id":"themes/navy/languages/en.yml","shasum":"2417319d04afbffb266c677d3754cc20ed58e9c7","modified":1448209234000},{"_id":"themes/navy/layout/archive.swig","shasum":"bcb5c940345095739fb79f87979c9046cf18b385","modified":1448209234000},{"_id":"themes/navy/languages/zh-cn.yml","shasum":"3fdd21f55c6631c642879bd430da708075134058","modified":1450247731000},{"_id":"themes/navy/layout/index.swig","shasum":"246a0f9848ea6d28e4526e5c78ffeb18e359397f","modified":1448209234000},{"_id":"themes/navy/layout/layout.swig","shasum":"556d73ee4f4d7d6b58b1b203c67d96602f672823","modified":1448973215000},{"_id":"themes/navy/layout/page.swig","shasum":"1c7de86d9a6580cd4bf6a445bcc37701e7dd9bdb","modified":1448209234000},{"_id":"themes/navy/layout/partial/after_footer.swig","shasum":"ffa7db07f68dc9fd219986ae28a52f61b39f4ee7","modified":1448209234000},{"_id":"themes/navy/layout/partial/baidu_analytics.swig","shasum":"e6a31df988a0e98c65f2c8b9f0343ac6360a5a5d","modified":1448209234000},{"_id":"themes/navy/layout/partial/comment.swig","shasum":"759a0d900a089e904501b8e6b27a0c74e671228a","modified":1448209234000},{"_id":"themes/navy/layout/partial/footer.swig","shasum":"92bc12738b2ab5831d65a466457bee66ba949fc3","modified":1448209234000},{"_id":"themes/navy/layout/partial/google_analytics.swig","shasum":"eb4791e9e0627be70b4bc9d086110f9313cd1d2c","modified":1448209234000},{"_id":"themes/navy/layout/partial/head.swig","shasum":"0f1489db0c6ed7f03e896d4606405029693daaac","modified":1448209234000},{"_id":"themes/navy/layout/partial/header.swig","shasum":"50c55caca5213b2b3f68f8a500e1415ab6134c89","modified":1449131095000},{"_id":"themes/navy/layout/partial/mobile_nav.swig","shasum":"b6815b0ef47d851964792cf97dbc0635d53e1cdd","modified":1448209234000},{"_id":"themes/navy/layout/partial/plugin.swig","shasum":"17b6c6945e4b1b41dbb10d851f85ca10100c28ea","modified":1448209234000},{"_id":"themes/navy/layout/partial/post.swig","shasum":"4772c721d4f046687629685239eed8badd6de546","modified":1448209234000},{"_id":"themes/navy/layout/partial/share.swig","shasum":"ec1f470eb105538753bfafa8bd050948f0cdb504","modified":1448209234000},{"_id":"themes/navy/layout/partial/sidebar.swig","shasum":"620854b84bbc4ec16c752a54892e139293b3408b","modified":1448209234000},{"_id":"themes/navy/layout/partial/theme.swig","shasum":"5810d9d2bb7858e51ba42a5db3d1dc756ae5161f","modified":1448209234000},{"_id":"themes/navy/layout/plugins.swig","shasum":"fc73b77c3802a3492777398500f5d39bd1f3cac0","modified":1448209234000},{"_id":"themes/navy/layout/post.swig","shasum":"a5552b9622acbacd04363b9125705874b10b8624","modified":1448209234000},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap-theme.css","shasum":"ecf2245dd39ea3b17ccb4bea42cda46356376078","modified":1448209234000},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap-theme.css.map","shasum":"abc2e3a1163de52378c71bb92d007c22abb0a393","modified":1448209234000},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap-theme.min.css","shasum":"4c936da026b2fb2e6b63d3d4ddbc3d9beb658d17","modified":1448209234000},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.eot","shasum":"86b6f62b7853e67d3e635f6512a5a5efc58ea3c3","modified":1448209234000},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.woff","shasum":"278e49a86e634da6f2a02f3b47dd9d2a8f26210f","modified":1448209234000},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.ttf","shasum":"44bc1850f570972267b169ae18f1cb06b611ffa2","modified":1448209234000},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.woff2","shasum":"ca35b697d99cae4d1b60f2d60fcd37771987eb07","modified":1448209234000},{"_id":"themes/navy/source/assets/bootstrap/js/npm.js","shasum":"e2b7590d6ec1fdac66b01fdf66ae0879f53b1262","modified":1448209234000},{"_id":"themes/navy/source/css/_partial/archive.styl","shasum":"f7ff7e9eb92f6786ccbf79bb4193a81ab8b49f8b","modified":1448209234000},{"_id":"themes/navy/source/css/_partial/base.styl","shasum":"0256b429200fe382d4c2720fa087008a66d9542e","modified":1448209234000},{"_id":"themes/navy/source/assets/bootstrap/js/bootstrap.min.js","shasum":"6c264e0e0026ab5ece49350c6a8812398e696cbb","modified":1448209234000},{"_id":"themes/navy/source/css/_partial/fonts.css","shasum":"361cefd7f47fc5d5e97369c436101d20dbbe4989","modified":1448209234000},{"_id":"themes/navy/source/css/_partial/font-awesome.css","shasum":"3b87c2560832748cd06f9bfd2fd6ea8edbdae8c7","modified":1448209234000},{"_id":"themes/navy/source/css/_partial/footer.styl","shasum":"cf03e141fb0db12785d6b6e61a24872568b20dac","modified":1448209234000},{"_id":"themes/navy/source/css/_partial/header.styl","shasum":"8af066ae099682fef020d42e85161960244dcca8","modified":1449131183000},{"_id":"themes/navy/source/css/_partial/highlight.styl","shasum":"91225de69acb1d1ebc7b59724a8ed4ae1203eeba","modified":1448209234000},{"_id":"themes/navy/source/css/_partial/index.styl","shasum":"ba92a0f1204cbf069fe25302eb34f3e9cb9cdc56","modified":1448209234000},{"_id":"themes/navy/source/css/_partial/mobile_nav.styl","shasum":"d521ff48a48b753e47029b59574b3994bcd6223b","modified":1449126766000},{"_id":"themes/navy/source/css/_partial/page.styl","shasum":"d0e24fd7b6d72407cc168aafa96a34de5a927dfe","modified":1448209234000},{"_id":"themes/navy/source/css/_partial/plugins.styl","shasum":"e69ad06200a86c856d7c361be9289b5931593ab8","modified":1448209234000},{"_id":"themes/navy/source/css/_partial/post.styl","shasum":"037864b22a7775df5086f8977c51d86dd7053625","modified":1448209234000},{"_id":"themes/navy/source/css/_partial/sidebar.styl","shasum":"39451aef60afca98aa757eb76690a9e3e32cffbb","modified":1448209234000},{"_id":"themes/navy/source/css/_partial/tables.styl","shasum":"df7692229897a9412efe26a807ff26e088781b67","modified":1448209234000},{"_id":"themes/navy/source/css/_variables.styl","shasum":"e8eb22747910dc5af13b5cfd04768554eb727d6f","modified":1448209234000},{"_id":"themes/navy/source/css/navy.styl","shasum":"55e86db7eae90d41bcc594426a4e988c0e67608d","modified":1448209234000},{"_id":"themes/navy/source/fonts/fontawesome-webfont.woff2","shasum":"574ea2698c03ae9477db2ea3baf460ee32f1a7ea","modified":1448209234000},{"_id":"themes/navy/source/fonts/lato/v11/22JRxvfANxSmnAhzbFH8PgLUuEpTyoUstqEm5AMlJo4.woff2","shasum":"d1073c4f095c7aa7553961d5efeec12064b6bb5d","modified":1448209234000},{"_id":"themes/navy/source/fonts/lato/v11/8qcEw_nrk_5HEcCpYdJu8BTbgVql8nDJpwnrE27mub0.woff2","shasum":"d044761c283e3d66872a0ef4c0e940b6e4adcbf7","modified":1448209234000},{"_id":"themes/navy/source/fonts/lato/v11/IY9HZVvI1cMoAHxvl0w9LVKPGs1ZzpMvnHX-7fPOuAc.woff2","shasum":"beeec1ecad44bf2cbc833c520ad7a8a936946bf9","modified":1448209234000},{"_id":"themes/navy/source/fonts/lato/v11/MDadn8DQ_3oT6kvnUq_2r_esZW2xOQ-xsNqO47m55DA.woff2","shasum":"a5cfa4cd1753af990a314ff01f9581f87bf23886","modified":1448209234000},{"_id":"themes/navy/source/fonts/lato/v11/rZPI2gHXi8zxUjnybc2ZQFKPGs1ZzpMvnHX-7fPOuAc.woff2","shasum":"c64a029d9c9bea55aaa52f4ba52c686c43c49132","modified":1448209234000},{"_id":"themes/navy/source/fonts/lato/v11/MgNNr5y1C_tIEuLEmicLmwLUuEpTyoUstqEm5AMlJo4.woff2","shasum":"2f20f3742a685029769490a2972ee962e094c951","modified":1448209234000},{"_id":"themes/navy/source/img/android-chrome-144x144.png","shasum":"c3ea6ed5b70c98e9b98233574785f47dff379865","modified":1449131599000},{"_id":"themes/navy/source/img/android-chrome-192x192.png","shasum":"eda6e2ba40e09f3d87dff04190264c1330069f56","modified":1449131599000},{"_id":"themes/navy/source/img/android-chrome-36x36.png","shasum":"eb6c47174c6da399ea63a10d1b473b36c5a9b465","modified":1449131599000},{"_id":"themes/navy/source/img/android-chrome-48x48.png","shasum":"5e68398c1b141225e636ab69ecc5340e4e7c9bf2","modified":1449131599000},{"_id":"themes/navy/source/img/android-chrome-72x72.png","shasum":"abd419afc89dd5a4964cfc916f58725b04e0246b","modified":1449131599000},{"_id":"themes/navy/source/img/android-chrome-96x96.png","shasum":"265b10f4650054bbc1afe1ba50b38684921ed298","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-icon-114x114.png","shasum":"6d0ca2b1532b29f34f62328cf3c1a0555815f29a","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-icon-120x120.png","shasum":"364df3b3a09df2132a012d1ec3785fedfad55715","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-icon-144x144.png","shasum":"c3ea6ed5b70c98e9b98233574785f47dff379865","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-icon-152x152.png","shasum":"2abd845199cf957e856100162de73ba21a7862b8","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-icon-180x180.png","shasum":"d0c936a215d195f8448baac0baf2b1be2dd5b9aa","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-icon-60x60.png","shasum":"eb1f745fe7ce4e4ab86ad2ed97dba316eeee0aaa","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-icon-57x57.png","shasum":"fa5e53dbb668c7f21fb9dc37561870eab177a3a0","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-icon-72x72.png","shasum":"abd419afc89dd5a4964cfc916f58725b04e0246b","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-icon-76x76.png","shasum":"97e002bcb357052bc0f3493cc4f621158a3b3a87","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-icon-precomposed.png","shasum":"d0c936a215d195f8448baac0baf2b1be2dd5b9aa","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-icon.png","shasum":"d0c936a215d195f8448baac0baf2b1be2dd5b9aa","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-startup-image-1182x2208.png","shasum":"f151d282e3381505dea5bfa271cbb46c9bd00ad1","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-startup-image-1242x2148.png","shasum":"9a3c6e77752c5ca0f3476c2e4a9a1f3c538d12f5","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-startup-image-320x460.png","shasum":"caffc2f6ec27770d3ec704e2e63fe767984391d2","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-startup-image-640x1096.png","shasum":"0bf4dbe095dc857bdebcc0df6f0d13922ec72aab","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-startup-image-640x920.png","shasum":"3973726c5af454e493b13e4156446a80968c78ee","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-startup-image-748x1024.png","shasum":"edd4c6387bb19e34de129f5ad1e5813785ed40e9","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-startup-image-750x1294.png","shasum":"1550a15db383f426c8bb9b46002ec5d15778c311","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-startup-image-768x1004.png","shasum":"e022daf682e4ce74b98930a8047c8347614f8ad9","modified":1449131599000},{"_id":"themes/navy/source/img/browserconfig.xml","shasum":"8f9e34d1c9b8391cf038c4ae55c7610d25436ebd","modified":1449131599000},{"_id":"themes/navy/source/img/coast-228x228.png","shasum":"50eeb073ec0a3943cc2b56676db02448b7f33327","modified":1449131599000},{"_id":"themes/navy/source/img/favicon-16x16.png","shasum":"94b8e867ec38d3d3bae01f83097d34b0d240f049","modified":1449131599000},{"_id":"themes/navy/source/img/favicon-230x230.png","shasum":"7daf64d008c0f8fd830ac84b9fc283fe0b4fc0cf","modified":1449131599000},{"_id":"themes/navy/source/img/favicon-96x96.png","shasum":"265b10f4650054bbc1afe1ba50b38684921ed298","modified":1449131599000},{"_id":"themes/navy/source/img/firefox_app_128x128.png","shasum":"52cf9b30a9d703be16b40477aaae705c53019a80","modified":1449131599000},{"_id":"themes/navy/source/img/favicon.ico","shasum":"94b8e867ec38d3d3bae01f83097d34b0d240f049","modified":1449131599000},{"_id":"themes/navy/source/img/favicon-32x32.png","shasum":"7eec6371d23dd9c9786aef033252c2a353f3f98f","modified":1449131599000},{"_id":"themes/navy/source/img/firefox_app_512x512.png","shasum":"00b248747c0ff3ff9c6fedefc58c032648c4d47d","modified":1449131599000},{"_id":"themes/navy/source/img/firefox_app_60x60.png","shasum":"eb1f745fe7ce4e4ab86ad2ed97dba316eeee0aaa","modified":1449131599000},{"_id":"themes/navy/source/img/logo.png","shasum":"6cf9be4e311e225bc3772cb41e618cb2882dabf0","modified":1449128164000},{"_id":"themes/navy/source/img/manifest.json","shasum":"0e478d6be6537161cf774842132ce68ba2f12ba4","modified":1449131599000},{"_id":"themes/navy/source/img/manifest.webapp","shasum":"f16117c69a0bf12ff35a23a68b0d0e344c59ca24","modified":1449131599000},{"_id":"themes/navy/source/img/mstile-144x144.png","shasum":"c3ea6ed5b70c98e9b98233574785f47dff379865","modified":1449131599000},{"_id":"themes/navy/source/img/mstile-150x150.png","shasum":"0ee14c21e429f76f1d5c870ef05a0c4e8d5f2670","modified":1449131599000},{"_id":"themes/navy/source/img/mstile-310x150.png","shasum":"586ce926ffa25143f0b819cf7d98932bc71bccaf","modified":1449131599000},{"_id":"themes/navy/source/img/mstile-310x310.png","shasum":"e0883419c338e922877185fe34865bedfd4b73df","modified":1449131599000},{"_id":"themes/navy/source/img/mstile-70x70.png","shasum":"52cf9b30a9d703be16b40477aaae705c53019a80","modified":1449131599000},{"_id":"themes/navy/source/img/twitter.png","shasum":"4c30f273260756d595c64a5273bb1e19e9f8476e","modified":1449131599000},{"_id":"themes/navy/source/img/yandex-browser-50x50.png","shasum":"ea1729043231f84dcdaeebe29d617f35cec7ff69","modified":1449131599000},{"_id":"themes/navy/source/img/yandex-browser-manifest.json","shasum":"25b8b79a92bf77a075db335e68940f6316e18393","modified":1449131599000},{"_id":"themes/navy/source/js/lang_select.js","shasum":"df65fbfea63def302361db0851800e7fc67b7872","modified":1448209234000},{"_id":"themes/navy/source/js/mobile_nav.js","shasum":"d84cd8f1bf7915c38633ac2c0059e6938c630b27","modified":1448209234000},{"_id":"themes/navy/source/js/plugins.js","shasum":"c1cf96b2d852b5803228a34d99014b005623bc06","modified":1448209234000},{"_id":"themes/navy/source/js/toc.js","shasum":"368b59f0dd64e9c67df5427b54af4ab700bca374","modified":1448209234000},{"_id":"themes/navy/source/js/lunr.js","shasum":"2fd1fa4c8730aca8cce285c8c37b14840622fc23","modified":1448209234000},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap.min.css","shasum":"08df9a96752852f2cbd310c30facd934e348c2c5","modified":1448209234000},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.svg","shasum":"de51a8494180a6db074af2dee2383f0a363c5b08","modified":1448209234000},{"_id":"themes/navy/source/assets/bootstrap/js/bootstrap.js","shasum":"bbf55e20f1ebb6368522799f29db39830a08ef93","modified":1448209234000},{"_id":"themes/navy/source/fonts/FontAwesome.otf","shasum":"0112e96f327d413938d37c1693806f468ffdbace","modified":1448209234000},{"_id":"themes/navy/source/fonts/fontawesome-webfont.eot","shasum":"b3c2f08e73320135b69c23a3908b87a12053a2f6","modified":1448209234000},{"_id":"themes/navy/source/fonts/fontawesome-webfont.woff","shasum":"507970402e328b2baeb05bde73bf9ded4e2c3a2d","modified":1448209234000},{"_id":"themes/navy/source/img/apple-touch-startup-image-1496x2048.png","shasum":"070a0d3ac0cbfec661fe0353fa32372ae94921ff","modified":1449131599000},{"_id":"themes/navy/source/img/apple-touch-startup-image-1536x2008.png","shasum":"470c11050971f41e03cb30148bfd9165bac1bf3f","modified":1449131599000},{"_id":"themes/navy/source/js/hammer.js","shasum":"836cd4bc35ccebf5091e4d277b16443145e359be","modified":1448209234000},{"_id":"themes/navy/source/img/open-graph.png","shasum":"04d6e0421b464a8288369e1125c8fad168dfb28c","modified":1449131599000},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap.css","shasum":"6987e3bdad7a3a5d143ddf2453e29782dbd99c29","modified":1448209234000},{"_id":"themes/navy/source/fonts/fontawesome-webfont.ttf","shasum":"27cf1f2ec59aece6938c7bb2feb0e287ea778ff9","modified":1448209234000},{"_id":"themes/navy/source/js/jquery.js","shasum":"0fed45ad7a48ace869bc725ca474ad86a1ef1562","modified":1448209234000},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap.css.map","shasum":"16506513c5f3d95982e73fb6820cf3c4c58d6897","modified":1448209234000},{"_id":"themes/navy/source/fonts/fontawesome-webfont.svg","shasum":"2b3c8ba7008cc014d8fb37abc6f9f49aeda83824","modified":1448209234000},{"_id":"public/robots.txt","modified":1449489554446,"shasum":"55107e568647402d4e0d108be00fce6bded104d8"},{"_id":"public/js/toc.js","modified":1449489554451,"shasum":"368b59f0dd64e9c67df5427b54af4ab700bca374"},{"_id":"public/js/plugins.js","modified":1449489554452,"shasum":"c1cf96b2d852b5803228a34d99014b005623bc06"},{"_id":"public/js/mobile_nav.js","modified":1449489554454,"shasum":"d84cd8f1bf7915c38633ac2c0059e6938c630b27"},{"_id":"public/js/lunr.js","modified":1449489554469,"shasum":"2fd1fa4c8730aca8cce285c8c37b14840622fc23"},{"_id":"public/js/lang_select.js","modified":1449489554473,"shasum":"df65fbfea63def302361db0851800e7fc67b7872"},{"_id":"public/js/jquery.js","modified":1449489554476,"shasum":"0fed45ad7a48ace869bc725ca474ad86a1ef1562"},{"_id":"public/js/hammer.js","modified":1449489554479,"shasum":"836cd4bc35ccebf5091e4d277b16443145e359be"},{"_id":"public/img/yandex-browser-manifest.json","modified":1449489554481,"shasum":"4000ea7e0b7c1b5a3c26137ae2e8ea3dfd102dbe"},{"_id":"public/img/yandex-browser-50x50.png","modified":1449489554486,"shasum":"ea1729043231f84dcdaeebe29d617f35cec7ff69"},{"_id":"public/img/twitter.png","modified":1449489554488,"shasum":"4c30f273260756d595c64a5273bb1e19e9f8476e"},{"_id":"public/img/open-graph.png","modified":1449489554490,"shasum":"04d6e0421b464a8288369e1125c8fad168dfb28c"},{"_id":"public/img/mstile-70x70.png","modified":1449489554492,"shasum":"52cf9b30a9d703be16b40477aaae705c53019a80"},{"_id":"public/img/mstile-310x310.png","modified":1449489554494,"shasum":"e0883419c338e922877185fe34865bedfd4b73df"},{"_id":"public/img/mstile-310x150.png","modified":1449489554497,"shasum":"586ce926ffa25143f0b819cf7d98932bc71bccaf"},{"_id":"public/img/mstile-150x150.png","modified":1449489554498,"shasum":"0ee14c21e429f76f1d5c870ef05a0c4e8d5f2670"},{"_id":"public/img/mstile-144x144.png","modified":1449489554500,"shasum":"c3ea6ed5b70c98e9b98233574785f47dff379865"},{"_id":"public/img/manifest.webapp","modified":1449489554503,"shasum":"f16117c69a0bf12ff35a23a68b0d0e344c59ca24"},{"_id":"public/img/manifest.json","modified":1449489554504,"shasum":"0bff43ff61a378d3dee99adae142ec564071c20a"},{"_id":"public/img/logo.png","modified":1449489554507,"shasum":"6cf9be4e311e225bc3772cb41e618cb2882dabf0"},{"_id":"public/img/firefox_app_60x60.png","modified":1449489554512,"shasum":"eb1f745fe7ce4e4ab86ad2ed97dba316eeee0aaa"},{"_id":"public/img/firefox_app_512x512.png","modified":1449489554516,"shasum":"00b248747c0ff3ff9c6fedefc58c032648c4d47d"},{"_id":"public/img/firefox_app_128x128.png","modified":1449489554519,"shasum":"52cf9b30a9d703be16b40477aaae705c53019a80"},{"_id":"public/img/favicon.ico","modified":1449489554520,"shasum":"94b8e867ec38d3d3bae01f83097d34b0d240f049"},{"_id":"public/img/favicon-96x96.png","modified":1449489554523,"shasum":"265b10f4650054bbc1afe1ba50b38684921ed298"},{"_id":"public/img/favicon-32x32.png","modified":1449489554526,"shasum":"7eec6371d23dd9c9786aef033252c2a353f3f98f"},{"_id":"public/img/favicon-230x230.png","modified":1449489554532,"shasum":"7daf64d008c0f8fd830ac84b9fc283fe0b4fc0cf"},{"_id":"public/img/favicon-16x16.png","modified":1449489554536,"shasum":"94b8e867ec38d3d3bae01f83097d34b0d240f049"},{"_id":"public/img/coast-228x228.png","modified":1449489554538,"shasum":"50eeb073ec0a3943cc2b56676db02448b7f33327"},{"_id":"public/img/browserconfig.xml","modified":1449489554541,"shasum":"8f9e34d1c9b8391cf038c4ae55c7610d25436ebd"},{"_id":"public/img/apple-touch-startup-image-768x1004.png","modified":1449489554548,"shasum":"e022daf682e4ce74b98930a8047c8347614f8ad9"},{"_id":"public/img/apple-touch-startup-image-750x1294.png","modified":1449489554554,"shasum":"1550a15db383f426c8bb9b46002ec5d15778c311"},{"_id":"public/img/apple-touch-startup-image-748x1024.png","modified":1449489554559,"shasum":"edd4c6387bb19e34de129f5ad1e5813785ed40e9"},{"_id":"public/img/apple-touch-startup-image-640x920.png","modified":1449489554563,"shasum":"3973726c5af454e493b13e4156446a80968c78ee"},{"_id":"public/img/apple-touch-startup-image-640x1096.png","modified":1449489554571,"shasum":"0bf4dbe095dc857bdebcc0df6f0d13922ec72aab"},{"_id":"public/img/apple-touch-startup-image-320x460.png","modified":1449489554577,"shasum":"caffc2f6ec27770d3ec704e2e63fe767984391d2"},{"_id":"public/img/apple-touch-startup-image-1536x2008.png","modified":1449489554580,"shasum":"470c11050971f41e03cb30148bfd9165bac1bf3f"},{"_id":"public/img/apple-touch-startup-image-1496x2048.png","modified":1449489554584,"shasum":"070a0d3ac0cbfec661fe0353fa32372ae94921ff"},{"_id":"public/img/apple-touch-startup-image-1242x2148.png","modified":1449489554586,"shasum":"9a3c6e77752c5ca0f3476c2e4a9a1f3c538d12f5"},{"_id":"public/img/apple-touch-startup-image-1182x2208.png","modified":1449489554588,"shasum":"f151d282e3381505dea5bfa271cbb46c9bd00ad1"},{"_id":"public/img/apple-touch-icon.png","modified":1449489554589,"shasum":"d0c936a215d195f8448baac0baf2b1be2dd5b9aa"},{"_id":"public/img/apple-touch-icon-precomposed.png","modified":1449489554595,"shasum":"d0c936a215d195f8448baac0baf2b1be2dd5b9aa"},{"_id":"public/img/apple-touch-icon-76x76.png","modified":1449489554598,"shasum":"97e002bcb357052bc0f3493cc4f621158a3b3a87"},{"_id":"public/img/apple-touch-icon-72x72.png","modified":1449489554602,"shasum":"abd419afc89dd5a4964cfc916f58725b04e0246b"},{"_id":"public/img/apple-touch-icon-60x60.png","modified":1449489554605,"shasum":"eb1f745fe7ce4e4ab86ad2ed97dba316eeee0aaa"},{"_id":"public/img/apple-touch-icon-57x57.png","modified":1449489554606,"shasum":"fa5e53dbb668c7f21fb9dc37561870eab177a3a0"},{"_id":"public/img/apple-touch-icon-180x180.png","modified":1449489554608,"shasum":"d0c936a215d195f8448baac0baf2b1be2dd5b9aa"},{"_id":"public/img/apple-touch-icon-152x152.png","modified":1449489554610,"shasum":"2abd845199cf957e856100162de73ba21a7862b8"},{"_id":"public/img/apple-touch-icon-144x144.png","modified":1449489554611,"shasum":"c3ea6ed5b70c98e9b98233574785f47dff379865"},{"_id":"public/img/apple-touch-icon-120x120.png","modified":1449489554613,"shasum":"364df3b3a09df2132a012d1ec3785fedfad55715"},{"_id":"public/img/apple-touch-icon-114x114.png","modified":1449489554616,"shasum":"6d0ca2b1532b29f34f62328cf3c1a0555815f29a"},{"_id":"public/img/android-chrome-96x96.png","modified":1449489554620,"shasum":"265b10f4650054bbc1afe1ba50b38684921ed298"},{"_id":"public/img/android-chrome-72x72.png","modified":1449489554622,"shasum":"abd419afc89dd5a4964cfc916f58725b04e0246b"},{"_id":"public/img/android-chrome-48x48.png","modified":1449489554623,"shasum":"5e68398c1b141225e636ab69ecc5340e4e7c9bf2"},{"_id":"public/img/android-chrome-36x36.png","modified":1449489554630,"shasum":"eb6c47174c6da399ea63a10d1b473b36c5a9b465"},{"_id":"public/img/android-chrome-192x192.png","modified":1449489554632,"shasum":"eda6e2ba40e09f3d87dff04190264c1330069f56"},{"_id":"public/img/android-chrome-144x144.png","modified":1449489554635,"shasum":"c3ea6ed5b70c98e9b98233574785f47dff379865"},{"_id":"public/fonts/lato/v11/rZPI2gHXi8zxUjnybc2ZQFKPGs1ZzpMvnHX-7fPOuAc.woff2","modified":1449489554638,"shasum":"c64a029d9c9bea55aaa52f4ba52c686c43c49132"},{"_id":"public/fonts/lato/v11/MgNNr5y1C_tIEuLEmicLmwLUuEpTyoUstqEm5AMlJo4.woff2","modified":1449489554640,"shasum":"2f20f3742a685029769490a2972ee962e094c951"},{"_id":"public/fonts/lato/v11/MDadn8DQ_3oT6kvnUq_2r_esZW2xOQ-xsNqO47m55DA.woff2","modified":1449489554642,"shasum":"a5cfa4cd1753af990a314ff01f9581f87bf23886"},{"_id":"public/fonts/lato/v11/IY9HZVvI1cMoAHxvl0w9LVKPGs1ZzpMvnHX-7fPOuAc.woff2","modified":1449489554645,"shasum":"beeec1ecad44bf2cbc833c520ad7a8a936946bf9"},{"_id":"public/fonts/lato/v11/8qcEw_nrk_5HEcCpYdJu8BTbgVql8nDJpwnrE27mub0.woff2","modified":1449489554648,"shasum":"d044761c283e3d66872a0ef4c0e940b6e4adcbf7"},{"_id":"public/fonts/lato/v11/22JRxvfANxSmnAhzbFH8PgLUuEpTyoUstqEm5AMlJo4.woff2","modified":1449489554650,"shasum":"d1073c4f095c7aa7553961d5efeec12064b6bb5d"},{"_id":"public/fonts/fontawesome-webfont.woff2","modified":1449489554653,"shasum":"574ea2698c03ae9477db2ea3baf460ee32f1a7ea"},{"_id":"public/fonts/fontawesome-webfont.woff","modified":1449489554655,"shasum":"507970402e328b2baeb05bde73bf9ded4e2c3a2d"},{"_id":"public/fonts/fontawesome-webfont.ttf","modified":1449489554658,"shasum":"27cf1f2ec59aece6938c7bb2feb0e287ea778ff9"},{"_id":"public/fonts/fontawesome-webfont.svg","modified":1449489554666,"shasum":"2b3c8ba7008cc014d8fb37abc6f9f49aeda83824"},{"_id":"public/fonts/fontawesome-webfont.eot","modified":1449489554671,"shasum":"b3c2f08e73320135b69c23a3908b87a12053a2f6"},{"_id":"public/fonts/FontAwesome.otf","modified":1449489554675,"shasum":"0112e96f327d413938d37c1693806f468ffdbace"},{"_id":"public/css/navy.css","modified":1449489555214,"shasum":"2ba6d2e23be749fe32b2a62e1594b801b82026a8"},{"_id":"public/assets/bootstrap/js/npm.js","modified":1449489555404,"shasum":"e2b7590d6ec1fdac66b01fdf66ae0879f53b1262"},{"_id":"public/assets/bootstrap/js/bootstrap.min.js","modified":1449489555406,"shasum":"6c264e0e0026ab5ece49350c6a8812398e696cbb"},{"_id":"public/assets/bootstrap/js/bootstrap.js","modified":1449489555407,"shasum":"bbf55e20f1ebb6368522799f29db39830a08ef93"},{"_id":"public/assets/bootstrap/fonts/glyphicons-halflings-regular.woff2","modified":1449489555409,"shasum":"ca35b697d99cae4d1b60f2d60fcd37771987eb07"},{"_id":"public/assets/bootstrap/fonts/glyphicons-halflings-regular.woff","modified":1449489555410,"shasum":"278e49a86e634da6f2a02f3b47dd9d2a8f26210f"},{"_id":"public/assets/bootstrap/fonts/glyphicons-halflings-regular.ttf","modified":1449489555412,"shasum":"44bc1850f570972267b169ae18f1cb06b611ffa2"},{"_id":"public/assets/bootstrap/fonts/glyphicons-halflings-regular.svg","modified":1449489555414,"shasum":"de51a8494180a6db074af2dee2383f0a363c5b08"},{"_id":"public/assets/bootstrap/fonts/glyphicons-halflings-regular.eot","modified":1449489555416,"shasum":"86b6f62b7853e67d3e635f6512a5a5efc58ea3c3"},{"_id":"public/assets/bootstrap/css/bootstrap.min.css","modified":1449489555419,"shasum":"08df9a96752852f2cbd310c30facd934e348c2c5"},{"_id":"public/assets/bootstrap/css/bootstrap.css.map","modified":1449489555423,"shasum":"16506513c5f3d95982e73fb6820cf3c4c58d6897"},{"_id":"public/assets/bootstrap/css/bootstrap.css","modified":1449489555431,"shasum":"6987e3bdad7a3a5d143ddf2453e29782dbd99c29"},{"_id":"public/assets/bootstrap/css/bootstrap-theme.min.css","modified":1449489555433,"shasum":"4c936da026b2fb2e6b63d3d4ddbc3d9beb658d17"},{"_id":"public/assets/bootstrap/css/bootstrap-theme.css.map","modified":1449489555434,"shasum":"abc2e3a1163de52378c71bb92d007c22abb0a393"},{"_id":"public/assets/bootstrap/css/bootstrap-theme.css","modified":1449489555436,"shasum":"ecf2245dd39ea3b17ccb4bea42cda46356376078"},{"_id":"public/favicon.ico","modified":1449489555440,"shasum":"6b4f249bbfe90f3ad41aa774e255d3a69f700b62"},{"_id":"public/browserconfig.xml","modified":1449489555442,"shasum":"f54412705ab9eb69b544f438c9a1e15ae57f27c0"},{"_id":"public/themes/index.html","modified":1449489555626,"shasum":"d5f5199332eec02e8594e02fb6052367e1a2261c"},{"_id":"public/plugins/index.html","modified":1449489555988,"shasum":"ed282fb1878e12d6a0f8da8718d0c631968712e3"},{"_id":"public/index.html","modified":1450249971591,"shasum":"2b48827663b9e875c9c1b2add81790ffd18b0bb4"},{"_id":"public/docs/name/jdc_fd_guide_name.html","modified":1450259702591,"shasum":"9e918f5b388d3f4d5fb2eab3f8703148bdd69c15"},{"_id":"public/docs/name/image.html","modified":1450259702624,"shasum":"85952bbe8c316b861d8707c9bbc71c61012775ac"},{"_id":"public/docs/name/htmlcss.html","modified":1450259702689,"shasum":"f12364e46279bece7583520290228a4a81c531b6"},{"_id":"public/docs/name/dir.html","modified":1450259702709,"shasum":"3cd86a9ffcbf9aa8db3bb686559e4cd642c9278c"},{"_id":"public/docs/name/classname.html","modified":1450259702761,"shasum":"727dd387b816c41c2fcd1977224ffc9296423f23"},{"_id":"public/docs/issues.html","modified":1450259702784,"shasum":"0b0977c0dc013de259dac79de8814f8c1d227aad"},{"_id":"public/docs/index.html","modified":1450259702815,"shasum":"dad9b38738c8da7f5a67462d6f6fc1755df63649"},{"_id":"public/docs/image/size.html","modified":1450259702891,"shasum":"bd5817d05c9a31e7e64ba44a12130e1b97051c14"},{"_id":"public/docs/image/quality.html","modified":1450259702914,"shasum":"41c883cf19a3839dc621c0e3326e9c82ac219eb4"},{"_id":"public/docs/image/jdc_fd_guide_image.html","modified":1450259702981,"shasum":"4c5d16dc62613d061f2ba23f7c292e120b426cc7"},{"_id":"public/docs/image/import.html","modified":1450259703005,"shasum":"5f045ea30b30e6aea94ef10526d2ba7f361b021d"},{"_id":"public/docs/image/format.html","modified":1450259703033,"shasum":"f0e7d5e53605bd6221243a7b485326919e16eac0"},{"_id":"public/docs/html/webapp.html","modified":1450259703069,"shasum":"825972aba50ec4621bd0fbd0888305c5433ceebd"},{"_id":"public/docs/html/template.html","modified":1450259703107,"shasum":"499c1ac9b19cdfdead2fbd21035e6b414143e5c7"},{"_id":"public/docs/html/note.html","modified":1450259703136,"shasum":"e2d255fd2936e96948464dd1a7a254da6d285dce"},{"_id":"public/docs/html/jdc_fd_web_final_2.html","modified":1450259703183,"shasum":"25a0ee80d8b2e50fc7c654f0aa05987812cf94d3"},{"_id":"public/docs/html/code.html","modified":1450259703238,"shasum":"2335b305cb0b670a7a9c86ea4d112cea239fb2fe"},{"_id":"public/docs/css/sass.html","modified":1450259703281,"shasum":"cd586cc9d8eaf15743b9ce9931771cdba13bef03"},{"_id":"public/docs/css/reset.html","modified":1450259703334,"shasum":"1b48d09389923c5e943cb21927cac3f664d47307"},{"_id":"public/docs/css/query.html","modified":1450259703395,"shasum":"bc4291766f62628deaf2eb076d3a385b69d63310"},{"_id":"public/docs/css/note.html","modified":1450259703451,"shasum":"6c3414cfc4372494d530b614f17d278cb0f7ba54"},{"_id":"public/docs/css/jdc_fd_guide_css.html","modified":1450259703516,"shasum":"e75db2f1499e2546e5b293afb8e2857fd2ba7333"},{"_id":"public/docs/css/code.html","modified":1450259703574,"shasum":"d6642bb1a7b567f6a42bd64d3c8b46ed8f233495"},{"_id":"public/docs/contributing.html","modified":1450259703609,"shasum":"f57bb77da9a65ecae4891db8f047968ca7010ef7"},{"_id":"public/docs/common.html","modified":1450259703634,"shasum":"92b48f4d40911093ef393f06dc5563170f36ca57"},{"_id":"public/docs/common/markdown.html","modified":1450259703704,"shasum":"384db43378945ea7d7bdec64d653946eac150128"},{"_id":"public/news/2015/11/15/beta-released/index.html","modified":1450259703731,"shasum":"39d7e3dc5888bbca96b39e6989e465c27586dd28"},{"_id":"public/news/2015/11/13/first-released/index.html","modified":1450259703806,"shasum":"f92f2f34fab30a2a11da4a4611e93b768997883a"},{"_id":"public/news/index.html","modified":1450259703855,"shasum":"24a509a0cabedaecf0cbfafa537eda5fabe867f1"},{"_id":"public/news/2015/index.html","modified":1450259703882,"shasum":"baaaecbcd0d1d5c0d22e9bc6ce04a787cbfcc60d"},{"_id":"public/news/2015/11/index.html","modified":1450259703917,"shasum":"04d6e25d61ec43341b998fcc07adfbf9bd45d95b"},{"_id":"public/atom.xml","modified":1450259703921,"shasum":"e1ab69f4b9500e26f2d99d3ba6e027363c1640b6"},{"_id":"public/sitemap.xml","modified":1450259703922,"shasum":"884e5181cafcc03366a3775491824054225f9a59"},{"_id":"public/docs/css/webkit.html","modified":1450248914950,"shasum":"78edca3ff3d127979339d62d014578354409ecae"},{"_id":"source/docs/css/webkit.md","shasum":"a74554ef05c21daf9e6945c62cd81ffedd5b41e1","modified":1450333606000}],"Category":[],"Data":[{"_id":"languages","data":{"zh-cn":{"name":"简体中文","disqus_lang":"zh"},"en":"English"}},{"_id":"themes","data":[{"name":"landscape","description":"A brand new default theme for Hexo.","link":"https://github.com/hexojs/hexo-theme-landscape","preview":"http://hexo.io/hexo-theme-landscape","tags":["official","responsive","widget","two_column","one_column"]},{"name":"phase","description":"Feel the flow of time with Phase.","link":"https://github.com/hexojs/hexo-theme-phase","preview":"http://hexo.io/hexo-theme-phase","tags":["official","one_column"]},{"name":"light","description":"Default theme for Hexo.","link":"https://github.com/hexojs/hexo-theme-light","preview":"http://hexo.io/hexo-theme-light","tags":["official","responsive","two_column"]},{"name":"NexT","description":"NexT is an elegant theme for Hexo.","link":"https://github.com/iissnan/hexo-theme-next","preview":"http://notes.iissnan.com/","tags":["responsive","one_column","clean","white"]},{"name":"Icarus","description":"The blog theme you may fall in love with, coming to Hexo.","link":"https://github.com/ppoffice/hexo-theme-icarus","preview":"https://ppoffice.github.io/hexo-theme-icarus","tags":["responsive","three_column","clean","flat","light"]},{"name":"Hueman","description":"A redesign of Alx's wordpress theme Hueman, ported to Hexo.","link":"https://github.com/ppoffice/hexo-theme-hueman","preview":"https://ppoffice.github.io/hexo-theme-hueman","tags":["responsive","two_column","wordpress","elegant","hueman"]},{"name":"carbon","description":"Carbon is a simple theme using pjax for elegant loading.","link":"https://github.com/icylogic/carbon","preview":"https://blog.icylogic.net","tags":["simple","white & black","pjax"]},{"name":"hexadillax","description":"XadillaX built this theme with love and an otaku heart.","link":"https://github.com/XadillaX/hexadillax","preview":"https://xcoder.in/","tags":["bootstrap","simple","otaku"]},{"name":"Jacman","description":"A fresh looking and responsive theme for Hexo.","link":"https://github.com/wuchong/jacman","preview":"http://wuchong.me/jacman","tags":["responsive","two_column","blue","elegant"]},{"name":"Wixo","description":"Turn your Hexo into a Wiki!","link":"https://github.com/wzpan/hexo-theme-wixo","preview":"http://wzpan.github.io/hexo-theme-wixo/","tags":["wiki","responsive","simple","tag_plugins","bootstrap","modal"]},{"name":"Freemind","description":"Fully taking advantages of Bootstrap.","link":"https://github.com/wzpan/hexo-theme-freemind","preview":"http://wzpan.github.io/hexo-theme-freemind/","tags":["two_column","responsive","elegant","tag_plugins","bootstrap"]},{"name":"Simplest","description":"Very simple, written with swig & scss.","link":"https://github.com/dnxbf321/hexo-theme-simplest","preview":"https://dnxbf321.github.io","tags":["responsive","swig","scss","one_column"]},{"name":"hexoThemeKacper","description":"Suitable for products blog","link":"https://github.com/jaywcjlove/hexoThemeKacper","preview":"http://JSlite.io","tags":["bootstrap","tag_plugins","elegant"]},{"name":"Tranquilpeak","description":"A gorgeous responsive theme for Hexo blog framework","link":"https://github.com/LouisBarranqueiro/tranquilpeak-hexo-theme","preview":"http://louisbarranqueiro.github.io/tranquilpeak-hexo-theme","tags":["responsive","gorgeous","sidebar","two_column","one_column","tag_plugins"]},{"name":"Minos","description":"A simple and retro styled Hexo theme, concentrated more on your ideas.","link":"https://github.com/ppoffice/hexo-theme-minos","preview":"http://ppoffice.github.io/hexo-theme-minos","tags":["responsive","one_column","simple","retro","white"]},{"name":"Foundation","description":"A theme based on the Zurb Foundation 5 theme.","link":"https://github.com/chrisjlee/hexo-theme-zurb-foundation","preview":"http://chrisjlee.github.io/hexo-theme-zurb-foundation","tags":["responsive","mobile_first","simple","white"]},{"name":"simpleblock","description":"A simple theme inspired by Twenty Twelve.","link":"https://github.com/jysperm/hexo-theme-simpleblock","preview":"https://jysperm.me","tags":["responsive","two_column","simple","light"]},{"name":"yinwang","description":"Simplest View For Your Article Best.","link":"https://github.com/mickeyouyou/yinwang","preview":"http://www.fzb.me","tags":["responsive","simple","chinese"]},{"name":"zzoman2015","description":"Simplest Theme by ZZOMAN","link":"https://github.com/reumia/hexo-theme-zzoman2015","preview":"http://dev.zzoman.com","tags":["simple","responsive","one_column","korean"]},{"name":"Maupassant","description":"A simple Hexo template with great performance on different devices.","link":"https://github.com/tufu9441/maupassant-hexo","preview":"https://www.haomwei.com","tags":["simple","responsive","two_column","white","jade","scss"]},{"name":"ttstyle","description":"A three column theme for hexo.Responsive And SEO best.","link":"https://github.com/tangkunyin/hexo-theme-ttstyle","preview":"http://shuoit.net","tags":["responsive","simple","seo","chinese","three_column"]},{"name":"Jekyll","description":"A hexo theme inspire by jekyllrb.com.","link":"https://github.com/pinggod/hexo-theme-jekyll","preview":"http://pinggod.com","tags":["中文","jekyll","dark"]},{"name":"Yelee","description":"Another simple and elegant Hexo theme by MOxFIVE","link":"https://github.com/MOxFIVE/hexo-theme-yelee","preview":"http://moxfive.xyz","tags":["responsive","two_column","toc","elegant","simple","background_image"]}]},{"_id":"sidebar","data":{"docs":{"getting_started":{"overview":"index.html"},"html":{"html_code":"html/code.html","html_note":"html/note.html","html_template":"html/template.html","html_webapp":"html/webapp.html"},"image":{"image_format":"image/format.html","image_size":"image/size.html","image_quality":"image/quality.html","image_import":"image/import.html"},"css":{"css_code":"css/code.html","css_note":"css/note.html","css_sass":"css/sass.html","css_reset":"css/reset.html","css_query":"css/query.html","css_webkit":"css/webkit.html"},"name":{"name_dir":"name/dir.html","name_image":"name/image.html","name_htmlcss":"name/htmlcss.html","name_class":"name/classname.html"}}}},{"_id":"plugins","data":[{"name":"hexo-wordcount","description":"Word Count Plugin for Hexo.","link":"https://github.com/willin/hexo-wordcount","tags":["wordcount","count","words"]},{"name":"hexo-imagemin","description":"Minify images with imagemin.","link":"https://github.com/vseventer/hexo-imagemin","tags":["assets","filter","imagemin","images"]},{"name":"hexo-more-css","description":"Compress CSS with more-css.","link":"https://github.com/vseventer/hexo-more-css","tags":["css","filter","minify","more-css"]},{"name":"hexo-uncss","description":"Remove unused styles from CSS with uncss.","link":"https://github.com/vseventer/hexo-uncss","tags":["css","filter","html","uncss"]},{"name":"hexo-ruby-character","description":"Ruby charater tag for Hexo, like 博客 (bó kè) .","link":"https://github.com/JamesPan/hexo-ruby-character","tags":["tag","ruby-character","pinyin"]},{"name":"hexo-server","description":"Server module for Hexo.","link":"https://github.com/hexojs/hexo-server","tags":["official","server","console"]},{"name":"hexo-cli","description":"Command line interface for Hexo.","link":"https://github.com/hexojs/hexo-cli","tags":["official","console","cli"]},{"name":"hexo-browsersync","description":"BrowserSync plugin for Hexo.","link":"https://github.com/hexojs/hexo-browsersync","tags":["official","browsersync","server"]},{"name":"hexo-renderer-less","description":"Less renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-less","tags":["official","renderer","less","style","css"]},{"name":"hexo-generator-archive","description":"Archive generator plugin for Hexo.","link":"https://github.com/hexojs/hexo-generator-archive","tags":["official","generator","archive"]},{"name":"hexo-generator-category","description":"Category generator plugin for Hexo.","link":"https://github.com/hexojs/hexo-generator-category","tags":["official","generator","category"]},{"name":"hexo-generator-tag","description":"Tag generator plugin for Hexo.","link":"https://github.com/hexojs/hexo-generator-tag","tags":["official","generator","tag"]},{"name":"hexo-generator-index","description":"Index generator plugin for Hexo.","link":"https://github.com/hexojs/hexo-generator-index","tags":["official","generator","index"]},{"name":"hexo-generator-search","description":"Search data generator for Hexo.","link":"https://github.com/PaicHyperionDev/hexo-generator-search","tags":["generator","search"]},{"name":"hexo-renderer-marked","description":"Markdown renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-marked","tags":["official","renderer","markdown","marked"]},{"name":"hexo-autoprefixer","description":"Autoprefixer plugin for Hexo.","link":"https://github.com/hexojs/hexo-autoprefixer","tags":["official","filter","css","autoprefixer"]},{"name":"hexo-clean-css","description":"Minify CSS files with clean-css.","link":"https://github.com/hexojs/hexo-clean-css","tags":["official","filter","css","cleancss","minify"]},{"name":"hexo-html-minifier","description":"Minify HTML files with HTMLMinifier.","link":"https://github.com/hexojs/hexo-html-minifier","tags":["official","filter","html","minify"]},{"name":"hexo-uglify","description":"Minify JavaScript files with UglifyJS.","link":"https://github.com/hexojs/hexo-uglify","tags":["official","filter","js","uglify","minify"]},{"name":"hexo-notify","description":"Notification plugins for Hexo.","link":"https://github.com/hexojs/hexo-notify","tags":["official","notify"]},{"name":"hexo-deployer-openshift","description":"OpenShift deployer for Hexo.","link":"https://github.com/hexojs/hexo-deployer-openshift","tags":["official","deployer","openshift"]},{"name":"hexo-deployer-heroku","description":"Heroku deployer for Hexo.","link":"https://github.com/hexojs/hexo-deployer-heroku","tags":["official","deployer","heroku"]},{"name":"hexo-deployer-git","description":"Git deployer plugin for Hexo.","link":"https://github.com/hexojs/hexo-deployer-git","tags":["official","deployer","git"]},{"name":"hexo-deployer-rsync","description":"Rsync deployer plugin for Hexo.","link":"https://github.com/hexojs/hexo-deployer-rsync","tags":["official","deployer","rsync"]},{"name":"hexo-deployer-s3","description":"Amazon S3 deployer plugin for Hexo.","link":"https://github.com/nt3rp/hexo-deployer-s3","tags":["deployer","s3"]},{"name":"hexo-generator-sitemap","description":"Sitemap generator for Hexo.","link":"https://github.com/hexojs/hexo-generator-sitemap","tags":["official","generator","sitemap"]},{"name":"hexo-generator-seo-friendly-sitemap","description":"SEO friendly sitemap generator for Hexo. Generate separated sitemap files for pages, posts, categories, tags and add a XSL stylesheet.","link":"https://github.com/ludoviclefevre/hexo-generator-seo-friendly-sitemap","tags":["generator","sitemap","SEO"]},{"name":"hexo-generator-feed","description":"Feed generator for Hexo.","link":"https://github.com/hexojs/hexo-generator-feed","tags":["official","generator","feed","rss"]},{"name":"hexo-renderer-stylus","description":"Stylus renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-stylus","tags":["official","renderer","css","stylus"]},{"name":"hexo-filter-auto-spacing","description":"Add spaces between CJK characters and western characters.","link":"https://github.com/hexojs/hexo-filter-auto-spacing","tags":["official","filter","spacing"]},{"name":"hexo-yuidoc","description":"Generate YUIDoc with Hexo.","link":"https://github.com/hexojs/hexo-yuidoc","tags":["official","generator","yuidoc"]},{"name":"hexo-migrator-wordpress","description":"WordPress migrator for Hexo.","link":"https://github.com/hexojs/hexo-migrator-wordpress","tags":["official","migrator","wordpress"]},{"name":"hexo-migrator-rss","description":"RSS migrator for Hexo.","link":"https://github.com/hexojs/hexo-migrator-rss","tags":["official","migrator","rss"]},{"name":"hexo-migrator-github-issue","description":"Github issue migrator for Hexo.","link":"https://github.com/Yikun/hexo-migrator-github-issue","tags":["migrator","github","issue"]},{"name":"hexo-renderer-ejs","description":"EJS renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-ejs","tags":["official","renderer","ejs"]},{"name":"hexo-renderer-jade","description":"Jade renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-jade","tags":["official","renderer","jade"]},{"name":"hexo-renderer-haml","description":"Haml renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-haml","tags":["official","renderer","haml"]},{"name":"hexo-renderer-dot","description":"doT renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-dot","tags":["official","renderer","dot"]},{"name":"hexo-renderer-coffeescript","description":"CoffeeScript renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-coffeescript","tags":["official","renderer","coffeescript","coffee"]},{"name":"hexo-livereload","description":"Livereload plugin for Hexo.","link":"https://github.com/hexojs/hexo-livereload","tags":["official","server","livereload"]},{"name":"hexo-generator-alias","description":"Generate alias pages for redirecting to post, pages or URL.","link":"https://github.com/hexojs/hexo-generator-alias","tags":["official","generator","alias","redirect"]},{"name":"hexo-deployer-ftpsync","description":"FTP deployer for Hexo.","link":"https://github.com/hexojs/hexo-deployer-ftpsync","tags":["official","deployer","ftp"]},{"name":"hexo-migrator-blogger","description":"Blogger(blogspot.com) migrator for Hexo.","link":"https://github.com/hr6r/hexo-migrator-blogger","tags":["migrator","blogger","blogspot"]},{"name":"hexo-renderer-markdown-it","description":"Very fast Markdown renderer with support for CommonMark, GFM and more.","link":"https://github.com/celsomiranda/hexo-renderer-markdown-it","tags":["renderer","markdown","markdown-it"]},{"name":"hexo-renderer-org","description":"Hexo renderer plugin for emacs org-mode.","link":"https://github.com/CodeFalling/hexo-renderer-org","tags":["renderer","orgmode"]},{"name":"hexo-renderer-bourbon","description":"An up-to-date node-sass wrapper for Hexo that includes Bourbon mixins.","link":"https://github.com/celsomiranda/hexo-renderer-bourbon","tags":["renderer","sass","libsass","bourbon"]},{"name":"hexo-migrator-joomla","description":"Joomla migrator for Hexo.","link":"https://github.com/welksonramos/hexo-migrator-joomla","tags":["official","joomla","migrator"]},{"name":"hexo-renderer-yasr","description":"A Stylus CSS renderer for Hexo that uses Nib, Axis, Rupture, Jeet and Autoprefixer with Sourcemaps.","link":"https://github.com/celsomiranda/hexo-renderer-yasr","tags":["renderer","css","stylus","nib","jeet","rupture","axis","sourcemaps"]},{"name":"hexo-renderer-pandoc","description":"A pandoc-flavored-markdown renderer for Hexo. Also supports rendering textile, reStructedText, etc.","link":"https://github.com/wzpan/hexo-renderer-pandoc","tags":["renderer","pandoc","markdown","textile","reStructedText"]},{"name":"hexo-renderer-restructuredtext","description":"Renderer for restructuredtext using Docutils","link":"https://gitlab.com/mcepl/hexo-renderer-restructuredtext.git","tags":["renderer","reStructedText","rst"]},{"name":"hexo-tag-bootstrap","description":"hexo-tag-bootstrap is a collections of Hexo tag plugins, which wraps most Twitter-Bootstrap 3.1.1 components in a uniformed way.","link":"https://github.com/wzpan/hexo-tag-bootstrap","tags":["tag_plugins","bootstrap"]},{"name":"hexo-tag-spotify","description":"Server module for Hexo.","link":"https://github.com/ivanovyordan/hexo-tag-spotify","tags":["tag","spotify","music","widget"]},{"name":"hexo-tag-plantuml","description":"hexo-tag-plantuml is a tag plugin of Hexo. It can work with plantuml to draw uml.","link":"https://github.com/oohcoder/hexo-tag-plantuml","tags":["tag_plugins","plantuml","uml"]},{"name":"hexo-toc","description":"Insert a markdown TOC(Table Of Content) before posts be rendered when and where a placeholer found.","link":"https://github.com/bubkoo/hexo-toc","tags":["toc","filter","markdown","placeholder"]},{"name":"hexo-filter-fenced-code","description":"Extend syntax for the native fenced code block. Use tag-plugins as fenced code block.","link":"https://github.com/bubkoo/hexo-filter-fenced-code","tags":["filter","code block","extend","syntax","markdown"]},{"name":"hexo-beautify","description":"Beautify Hexo generated HTML, CSS and JS files, using js-beautify.","link":"https://github.com/celsomiranda/hexo-beautify","tags":["filter","beautify","html","css","js"]},{"name":"hexo-qiniu-sync","description":"Sync static files to Qiniu CDN for you automatically","link":"https://github.com/gyk001/hexo-qiniu-sync","tags":["sync","qiniu","cdn","image","css","js"]},{"name":"hexo-front-matter-excerpt","description":"Write post excerpts using YAML front matter.","link":"https://github.com/lalunamel/hexo-front-matter-excerpt","tags":["excerpt","front-matter"]},{"name":"hexo-github","description":"Display a GitHub repositoy badge with timeline in your post to keep track of version difference.","link":"https://github.com/akfish/hexo-github","tags":["tag","timeline","badge","github","version control"]},{"name":"hexo-tag-googlemaps","description":"A hexo tag for google maps. Does much more than a simple embedded iFrame","link":"https://github.com/the-simian/hexo-tag-googlemaps","tags":["tag","googlemaps","map","latitude","longitude","markers"]},{"name":"hexo-tag-googlecharts","description":"A hexo tag for inserting google charts in your blog","link":"https://github.com/juampi92/hexo-tag-googlecharts","tags":["tag","googlecharts","chart"]},{"name":"hexo-tag-deezer","description":"Tag for showing Deezer track widget on page.","link":"https://github.com/OdinsHat/hexo-tag-deezer","tags":["tag","deezer","music","widget"]},{"name":"hexo-tag-flickr","description":"Allows you to embed Flickr photo on your blog posts.","link":"https://github.com/visioncan/hexo-tag-flickr","tags":["tag","flickr","photo","image"]},{"name":"hexo-tag-vine","description":"Embed your Vine videos in posts/pages.","link":"https://github.com/welksonramos/hexo-tag-vine","tags":["tag","vine","video","social"]},{"name":"hexo-tag-xvideos","description":"Embed xvideos player in your posts/pages.","link":"https://github.com/welksonramos/hexo-tag-xvideos","tags":["tag","xvideos","video"]},{"name":"hexo-hey","description":"An admin plugin for Hexo.","link":"https://github.com/nihgwu/hexo-hey","tags":["admin","dashboard","editor"]},{"name":"hexo-admin","description":"Edit your content in style with this integrating blogging environment.","link":"https://github.com/jaredly/hexo-admin","tags":["admin","interface","editor","IDE","preview","ghost","dashboard"]},{"name":"hexo-tag-bilibili","description":"Embed bilibili videos in Hexo posts/pages.","link":"https://github.com/Z4Tech/hexo-tag-bilibili","tags":["tag","bilibili","video"]},{"name":"hexo-generator-json-content","description":"Generate a JSON file for generic use or consumption with the contents of posts and pages. Useful for AJAX search or content API.","link":"https://github.com/alexbruno/hexo-generator-json-content","tags":["generator","content","json","data","search","api"]},{"name":"hexo-tag-niconico","description":"Embed NicoNico seiga/douga in Hexo posts/pages.","link":"https://github.com/kamiya555/hexo-tag-niconico","tags":["tag","niconico","video","image"]}]},{"_id":"menu","data":{"docs":"docs/","news":"news/"}}],"Page":[{"layout":"plugins","title":"Themes","data":"themes","partial":"theme","comments":0,"_content":"","source":"themes/index.md","raw":"layout: plugins\ntitle: Themes\ndata: themes\npartial: theme\ncomments: false\n---\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-11-22T16:20:34.000Z","path":"themes/index.html","_id":"cihvwnklw00001xfy2kw5fc3x"},{"layout":"plugins","title":"Plugins","data":"plugins","partial":"plugin","comments":0,"_content":"","source":"plugins/index.md","raw":"layout: plugins\ntitle: Plugins\ndata: plugins\npartial: plugin\ncomments: false\n---\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-11-22T16:20:34.000Z","path":"plugins/index.html","_id":"cihvwnkm100011xfypgmsaj2d"},{"layout":"index","subtitle":"Front-End Coding Guidelines","slogan":"前端代码规范","description":"Best Coding Guidelines or Front-End Developer.","comments":0,"_content":"ul#intro-feature-list.intro-feature-list\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-code\n h3.intro-feature-title HTML规范\n p.intro-feature-desc 基于W3C、苹果开发者等官方文档,并结合团队日常业务需求以及团队在日常开发过程中总结提炼出的经验而约定。\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-picture-o\n h3.intro-feature-title 图片规范\n p.intro-feature-desc 了解各种图片格式特性,根据特性制定图片规范,包括但不限于图片的质量约定、图片引入方式、图片合并处理等。\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-pencil\n h3.intro-feature-title CSS规范\n p.intro-feature-desc 统一团队 CSS 代码书写和 SASS 预编译语言的语法风格,提供常用媒体查询语句和浏览器私有属性引用,并从业务层面统一规范常用模块的引用。\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-star\n h3.intro-feature-title 命名规范\n p.intro-feature-desc 从 `目录命名`、`图片命名`、`ClassName` 命名等层面约定规范团队的命名习惯,增强团队代码的可读性。\n","source":"index.jade","raw":"layout: index\nsubtitle: \"Front-End Coding Guidelines\"\nslogan: 前端代码规范\ndescription: \"Best Coding Guidelines or Front-End Developer.\"\ncomments: false\n---\nul#intro-feature-list.intro-feature-list\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-code\n h3.intro-feature-title HTML规范\n p.intro-feature-desc 基于W3C、苹果开发者等官方文档,并结合团队日常业务需求以及团队在日常开发过程中总结提炼出的经验而约定。\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-picture-o\n h3.intro-feature-title 图片规范\n p.intro-feature-desc 了解各种图片格式特性,根据特性制定图片规范,包括但不限于图片的质量约定、图片引入方式、图片合并处理等。\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-pencil\n h3.intro-feature-title CSS规范\n p.intro-feature-desc 统一团队 CSS 代码书写和 SASS 预编译语言的语法风格,提供常用媒体查询语句和浏览器私有属性引用,并从业务层面统一规范常用模块的引用。\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-star\n h3.intro-feature-title 命名规范\n p.intro-feature-desc 从 `目录命名`、`图片命名`、`ClassName` 命名等层面约定规范团队的命名习惯,增强团队代码的可读性。\n","date":"2015-12-16T07:09:56.000Z","updated":"2015-12-16T07:09:56.000Z","path":"index.html","_id":"cihvwnkmj00021xfym87kdfch","title":""},{"_content":"## 命名规范\n\n由历史原因及个人习惯引起的 DOM 结构、命名不统一,导致不同成员在维护同一页面时,效率低下,迭代、维护成本极高。\n\n### 目录命名\n\n* 项目文件夹:your project name\n* 样式文件夹:css\n* 脚本文件夹:js\n* 样式类图片文件夹:images\n\n### HTML/CSS文件命名\n\n确保命名总是以字母开头而不是数字,且字母一律小写,以下划线连接\n\n\t\n\tjdc.html\n\tjdc_list.html\n\tjdc_detail.html\n\n\t\n\tjdc.scss\n\tjdc_list.scss\n\tjdc_detail.scss\n\t\n### 图片命名\n\n#### 命名顺序\n\n图片命名建议以以下顺序命名:\n\n**图片业务(可选) +(mod_) 图片功能类别(必选)+ 图片模块名称(可选) + 图片精度(可选)**\n\n* 图片业务:\n\t- pp_:拍拍\n\t- wx_:微信\n\t- sq_:手Q\n\t- jd_:京东商城\n\t- ...\n\n* 图片功能类别:\n\n\t- mod_:是否公共,可选\n\t- icon:模块类固化的图标\n\t- logo:LOGO类\n\t- spr:单页面各种元素合并集合\n\t- btn:按钮\n\t- bg:可平铺或者大背景\n\t- ...\n\t\n* 图片模块名称:\n\n\t- goodslist:商品列表 \n\t- goodsinfo:商品信息\n\t- userava\ttar:用户头像\n\t- ...\n\t\n* 图片精度:\n\n\t- 普清:@1x\n\t- Retina:@2x | @3x\n\t- ...\n\n\t\n如下面例子:\n\n\t公共模块:\n\twx_mod_btn_goodlist@2x.png\n\twx_mod_btn_goodlist.png\n\tmod_btn_goodlist.png \n\t\n\t非公共模块:\n\twx_btn_goodlist@2x.png\n\twx_btn_goodlist.png\n\tbtn_goodlist.png\n\n#### 交叉业务协作\n\n业务交叉协作的时候,为了避免图片命名冲突,建议图片名加上业务和模块前辍,如拍拍侧和手Q侧的业务交叉合作时,侧栏导航icon雪碧图命名:\n\n\t推荐:\n\tpp_icon_mod_sidenav.png\n\n\t不推荐:\n\ticon_mod_sidenav.png\n\n处理高清图片的时候,命名应该加上图片相应的精度说明\n\n\t推荐:\n\tjdc_logo@1x.png\n\tjdc_logo@2x.png\n\n\t不推荐:\n\tjdc_logo.png\n\tjdc_logo_retina.png\n\n\t\n### ClassName命名\n\nClassName的命名应该尽量精短、明确,必须以**字母开头命名**,且**全部字母为小写**,单词之间**统一使用下划线** “_” 连接\n\n#### 命名原则 \n\n基于姓氏命名法(继承 + 外来),如下图:\n\n![enter image description here](http://labs.qiang.it/ppguide/img/standard_jiapu.png)\n\n祖先模块不能出现下划线,除了是全站公用模块,如 `mod_` 系列的命名:\n\n**推荐:**\n\n\t
\n\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t...\n\t\t
\n\t
\n\t\n\t\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\n\t\n**不推荐:**\n\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\t\n\n在子孙模块数量可预测的情况下,严格继承祖先模块的命名前缀\n\n\t
\n \t
\n \t
\n\t
\n\t\t\n当子孙模块超过4级或以上的时候,可以考虑在祖先模块内具有识辨性的独立缩写作为新的子孙模块\n\n**推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n**不推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n#### 模块命名\n\n全站公共模块:以 `mod_` 开头\n\n\t
\n\n业务公共模块:以 `业务名_mod_` 开头\n\n\t
\n\n#### 常用命名推荐\n\n**注意**:ad,baaner 等有机会和广告挂勾的字眠不建议直接用来做 ClassName,因为有些浏览器插件(Chrome的广告拦截插件等)会直接过滤这些类名,因此 \n\n`
` 这种情况不应该出现\n\n另外,**敏感不和谐字眼**也不应该出现,如 \n\n\t
\n\t
\n\t
\n\t
\n\t
\n\t...\n\n| ClassName | 含义 |\n| ------------ | ------------- | \n| about | 关于 |\n| account | 账户 |\n| arrow | 箭头图标 |\n| article | 文章 |\n| aside | 边栏 |\n| audio | 音频 |\n| avatar | 头像 |\n| bg,background | 背景 |\n| bar | 栏(工具类)|\n| branding | 品牌化 |\n| crumb,breadcrumbs | 面包屑 |\n| btn,button | 按钮 | \n| caption | 标题,说明 |\n| category | 分类 |\n| chart | 图表 |\n| clearfix | 清除浮动 |\n| close | 关闭 |\n| col,column | 列 |\n| comment | 评论 | \n| community | 社区 |\n| container | 容器 |\n| content | 内容 | \n| copyright | 版权 | \n| current | 当前态,选中态 | \n| default | 默认 | \n| description | 描述 | \n| details | 细节 | \n| disabled | 不可用 | \n| entry | 文章,博文 | \n| error | 错误 | \n| even | 偶数,常用于多行列表或表格中 | \n| fail | 失败(提示) | \n| feature | 专题 | \n| fewer | 收起 | \n| field | 用于表单的输入区域 | \n| figure | 图 | \n| filter | 筛选 | \n| first | 第一个,常用于列表中 | \n| footer | 页脚 | \n| forum | 论坛 | \n| gallery | 画廊 | \n| group | 模块,清除浮动 | \n| header | 页头 | \n| help | 帮助 | \n| hide | 隐藏 | \n| hightlight | 高亮 | \n| home | 主页 | \n| icon | 图标 | \n| info,information | 信息 | \n| last | 最后一个,常用于列表中 | \n| links | 链接 | \n| login | 登录 | \n| logout | 退出 | \n| logo | 标志 | \n| main | 主体 | \n| menu | 菜单 | \n| meta | 作者、更新时间等信息栏,一般位于标题之下 | \n| module | 模块 | \n| more | 更多(展开) | \n| msg,message | 消息 | \n| nav,navigation | 导航 | \n| next | 下一页 | \n| nub | 小块 | \n| odd | 奇数,常用于多行列表或表格中 | \n| off | 鼠标离开 | \n| on | 鼠标移过 | \n| output | 输出 | \n| pagination | 分页 | \n| pop,popup | 弹窗 | \n| preview | 预览 | \n| previous | 上一页 | \n| primary | 主要 | \n| progress | 进度条 | \n| promotion | 促销 | \n| rcommd,recommendations | 推荐 | \n| reg,register | 注册 | \n| save | 保存 | \n| search | 搜索 | \n| secondary | 次要 | \n| section | 区块 | \n| selected | 已选 | \n| share | 分享 | \n| show | 显示 | \n| sidebar | 边栏,侧栏 | \n| slide | 幻灯片,图片切换 | \n| sort | 排序 | \n| sub | 次级的,子级的 | \n| submit | 提交 | \n| subscribe | 订阅 | \n| subtitle | 副标题 | \n| success | 成功(提示) | \n| summary | 摘要 | \n| tab | 标签页 | \n| table | 表格 | \n| txt,text | 文本 | \n| thumbnail | 缩略图 | \n| time | 时间 | \n| tips | 提示 | \n| title | 标题 | \n| video | 视频 | \n| wrap | 容器,包,一般用于最外层 | \n| wrapper | 容器,包,一般用于最外层 | \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n","source":"docs/name/jdc_fd_guide_name.md","raw":"## 命名规范\n\n由历史原因及个人习惯引起的 DOM 结构、命名不统一,导致不同成员在维护同一页面时,效率低下,迭代、维护成本极高。\n\n### 目录命名\n\n* 项目文件夹:your project name\n* 样式文件夹:css\n* 脚本文件夹:js\n* 样式类图片文件夹:images\n\n### HTML/CSS文件命名\n\n确保命名总是以字母开头而不是数字,且字母一律小写,以下划线连接\n\n\t\n\tjdc.html\n\tjdc_list.html\n\tjdc_detail.html\n\n\t\n\tjdc.scss\n\tjdc_list.scss\n\tjdc_detail.scss\n\t\n### 图片命名\n\n#### 命名顺序\n\n图片命名建议以以下顺序命名:\n\n**图片业务(可选) +(mod_) 图片功能类别(必选)+ 图片模块名称(可选) + 图片精度(可选)**\n\n* 图片业务:\n\t- pp_:拍拍\n\t- wx_:微信\n\t- sq_:手Q\n\t- jd_:京东商城\n\t- ...\n\n* 图片功能类别:\n\n\t- mod_:是否公共,可选\n\t- icon:模块类固化的图标\n\t- logo:LOGO类\n\t- spr:单页面各种元素合并集合\n\t- btn:按钮\n\t- bg:可平铺或者大背景\n\t- ...\n\t\n* 图片模块名称:\n\n\t- goodslist:商品列表 \n\t- goodsinfo:商品信息\n\t- userava\ttar:用户头像\n\t- ...\n\t\n* 图片精度:\n\n\t- 普清:@1x\n\t- Retina:@2x | @3x\n\t- ...\n\n\t\n如下面例子:\n\n\t公共模块:\n\twx_mod_btn_goodlist@2x.png\n\twx_mod_btn_goodlist.png\n\tmod_btn_goodlist.png \n\t\n\t非公共模块:\n\twx_btn_goodlist@2x.png\n\twx_btn_goodlist.png\n\tbtn_goodlist.png\n\n#### 交叉业务协作\n\n业务交叉协作的时候,为了避免图片命名冲突,建议图片名加上业务和模块前辍,如拍拍侧和手Q侧的业务交叉合作时,侧栏导航icon雪碧图命名:\n\n\t推荐:\n\tpp_icon_mod_sidenav.png\n\n\t不推荐:\n\ticon_mod_sidenav.png\n\n处理高清图片的时候,命名应该加上图片相应的精度说明\n\n\t推荐:\n\tjdc_logo@1x.png\n\tjdc_logo@2x.png\n\n\t不推荐:\n\tjdc_logo.png\n\tjdc_logo_retina.png\n\n\t\n### ClassName命名\n\nClassName的命名应该尽量精短、明确,必须以**字母开头命名**,且**全部字母为小写**,单词之间**统一使用下划线** “_” 连接\n\n#### 命名原则 \n\n基于姓氏命名法(继承 + 外来),如下图:\n\n![enter image description here](http://labs.qiang.it/ppguide/img/standard_jiapu.png)\n\n祖先模块不能出现下划线,除了是全站公用模块,如 `mod_` 系列的命名:\n\n**推荐:**\n\n\t
\n\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t...\n\t\t
\n\t
\n\t\n\t\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\n\t\n**不推荐:**\n\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\t\n\n在子孙模块数量可预测的情况下,严格继承祖先模块的命名前缀\n\n\t
\n \t
\n \t
\n\t
\n\t\t\n当子孙模块超过4级或以上的时候,可以考虑在祖先模块内具有识辨性的独立缩写作为新的子孙模块\n\n**推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n**不推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n#### 模块命名\n\n全站公共模块:以 `mod_` 开头\n\n\t
\n\n业务公共模块:以 `业务名_mod_` 开头\n\n\t
\n\n#### 常用命名推荐\n\n**注意**:ad,baaner 等有机会和广告挂勾的字眠不建议直接用来做 ClassName,因为有些浏览器插件(Chrome的广告拦截插件等)会直接过滤这些类名,因此 \n\n`
` 这种情况不应该出现\n\n另外,**敏感不和谐字眼**也不应该出现,如 \n\n\t
\n\t
\n\t
\n\t
\n\t
\n\t...\n\n| ClassName | 含义 |\n| ------------ | ------------- | \n| about | 关于 |\n| account | 账户 |\n| arrow | 箭头图标 |\n| article | 文章 |\n| aside | 边栏 |\n| audio | 音频 |\n| avatar | 头像 |\n| bg,background | 背景 |\n| bar | 栏(工具类)|\n| branding | 品牌化 |\n| crumb,breadcrumbs | 面包屑 |\n| btn,button | 按钮 | \n| caption | 标题,说明 |\n| category | 分类 |\n| chart | 图表 |\n| clearfix | 清除浮动 |\n| close | 关闭 |\n| col,column | 列 |\n| comment | 评论 | \n| community | 社区 |\n| container | 容器 |\n| content | 内容 | \n| copyright | 版权 | \n| current | 当前态,选中态 | \n| default | 默认 | \n| description | 描述 | \n| details | 细节 | \n| disabled | 不可用 | \n| entry | 文章,博文 | \n| error | 错误 | \n| even | 偶数,常用于多行列表或表格中 | \n| fail | 失败(提示) | \n| feature | 专题 | \n| fewer | 收起 | \n| field | 用于表单的输入区域 | \n| figure | 图 | \n| filter | 筛选 | \n| first | 第一个,常用于列表中 | \n| footer | 页脚 | \n| forum | 论坛 | \n| gallery | 画廊 | \n| group | 模块,清除浮动 | \n| header | 页头 | \n| help | 帮助 | \n| hide | 隐藏 | \n| hightlight | 高亮 | \n| home | 主页 | \n| icon | 图标 | \n| info,information | 信息 | \n| last | 最后一个,常用于列表中 | \n| links | 链接 | \n| login | 登录 | \n| logout | 退出 | \n| logo | 标志 | \n| main | 主体 | \n| menu | 菜单 | \n| meta | 作者、更新时间等信息栏,一般位于标题之下 | \n| module | 模块 | \n| more | 更多(展开) | \n| msg,message | 消息 | \n| nav,navigation | 导航 | \n| next | 下一页 | \n| nub | 小块 | \n| odd | 奇数,常用于多行列表或表格中 | \n| off | 鼠标离开 | \n| on | 鼠标移过 | \n| output | 输出 | \n| pagination | 分页 | \n| pop,popup | 弹窗 | \n| preview | 预览 | \n| previous | 上一页 | \n| primary | 主要 | \n| progress | 进度条 | \n| promotion | 促销 | \n| rcommd,recommendations | 推荐 | \n| reg,register | 注册 | \n| save | 保存 | \n| search | 搜索 | \n| secondary | 次要 | \n| section | 区块 | \n| selected | 已选 | \n| share | 分享 | \n| show | 显示 | \n| sidebar | 边栏,侧栏 | \n| slide | 幻灯片,图片切换 | \n| sort | 排序 | \n| sub | 次级的,子级的 | \n| submit | 提交 | \n| subscribe | 订阅 | \n| subtitle | 副标题 | \n| success | 成功(提示) | \n| summary | 摘要 | \n| tab | 标签页 | \n| table | 表格 | \n| txt,text | 文本 | \n| thumbnail | 缩略图 | \n| time | 时间 | \n| tips | 提示 | \n| title | 标题 | \n| video | 视频 | \n| wrap | 容器,包,一般用于最外层 | \n| wrapper | 容器,包,一般用于最外层 | \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-04T09:46:09.000Z","path":"docs/name/jdc_fd_guide_name.html","title":"","comments":1,"layout":"page","_id":"cihvwnkmk00031xfya1up6a8b"},{"title":"图片命名","_content":"\n## 命名顺序\n\n图片命名建议以以下顺序命名:\n\n**图片业务(可选) +(mod_) 图片功能类别(必选)+ 图片模块名称(可选) + 图片精度(可选)**\n\n* 图片业务:\n\t- pp_:拍拍\n\t- wx_:微信\n\t- sq_:手Q\n\t- jd_:京东商城\n\t- ...\n\n\n* 图片功能类别:\n\n\t- mod_:是否公共,可选\n\t- icon:模块类固化的图标\n\t- logo:LOGO类\n\t- spr:单页面各种元素合并集合\n\t- btn:按钮\n\t- bg:可平铺或者大背景\n\t- ...\n\n\t\n* 图片模块名称:\n\n\t- goodslist:商品列表 \n\t- goodsinfo:商品信息\n\t- userava\ttar:用户头像\n\t- ...\n\t\n\t\n* 图片精度:\n\n\t- 普清:@1x\n\t- Retina:@2x | @3x\n\t- ...\n\n\t\n如下面例子:\n\n\t公共模块:\n\twx_mod_btn_goodlist@2x.png\n\twx_mod_btn_goodlist.png\n\tmod_btn_goodlist.png \n\t\n\t非公共模块:\n\twx_btn_goodlist@2x.png\n\twx_btn_goodlist.png\n\tbtn_goodlist.png\n\n## 交叉业务协作\n\n业务交叉协作的时候,为了避免图片命名冲突,建议图片名加上业务和模块前辍,如拍拍侧和手Q侧的业务交叉合作时,侧栏导航icon雪碧图命名:\n\n\t推荐:\n\tpp_icon_mod_sidenav.png\n\n\t不推荐:\n\ticon_mod_sidenav.png\n\n处理高清图片的时候,命名应该加上图片相应的精度说明\n\n\t推荐:\n\tjdc_logo@1x.png\n\tjdc_logo@2x.png\n\n\t不推荐:\n\tjdc_logo.png\n\tjdc_logo_retina.png\n","source":"docs/name/image.md","raw":"title: 图片命名\n---\n\n## 命名顺序\n\n图片命名建议以以下顺序命名:\n\n**图片业务(可选) +(mod_) 图片功能类别(必选)+ 图片模块名称(可选) + 图片精度(可选)**\n\n* 图片业务:\n\t- pp_:拍拍\n\t- wx_:微信\n\t- sq_:手Q\n\t- jd_:京东商城\n\t- ...\n\n\n* 图片功能类别:\n\n\t- mod_:是否公共,可选\n\t- icon:模块类固化的图标\n\t- logo:LOGO类\n\t- spr:单页面各种元素合并集合\n\t- btn:按钮\n\t- bg:可平铺或者大背景\n\t- ...\n\n\t\n* 图片模块名称:\n\n\t- goodslist:商品列表 \n\t- goodsinfo:商品信息\n\t- userava\ttar:用户头像\n\t- ...\n\t\n\t\n* 图片精度:\n\n\t- 普清:@1x\n\t- Retina:@2x | @3x\n\t- ...\n\n\t\n如下面例子:\n\n\t公共模块:\n\twx_mod_btn_goodlist@2x.png\n\twx_mod_btn_goodlist.png\n\tmod_btn_goodlist.png \n\t\n\t非公共模块:\n\twx_btn_goodlist@2x.png\n\twx_btn_goodlist.png\n\tbtn_goodlist.png\n\n## 交叉业务协作\n\n业务交叉协作的时候,为了避免图片命名冲突,建议图片名加上业务和模块前辍,如拍拍侧和手Q侧的业务交叉合作时,侧栏导航icon雪碧图命名:\n\n\t推荐:\n\tpp_icon_mod_sidenav.png\n\n\t不推荐:\n\ticon_mod_sidenav.png\n\n处理高清图片的时候,命名应该加上图片相应的精度说明\n\n\t推荐:\n\tjdc_logo@1x.png\n\tjdc_logo@2x.png\n\n\t不推荐:\n\tjdc_logo.png\n\tjdc_logo_retina.png\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-06T14:30:22.000Z","path":"docs/name/image.html","comments":1,"layout":"page","_id":"cihvwnkmm00041xfyeiwjnx3j"},{"title":"HTML/CSS文件命名","_content":"\n确保文件命名总是以字母开头而不是数字,且字母一律小写,以下划线连接且不带其他标点符号,如:\n\n``` html\n\t\n\tjdc.html\n\tjdc_list.html\n\tjdc_detail.html\n\n\t\n\tjdc.scss\n\tjdc_list.scss\n\tjdc_detail.scss\n```","source":"docs/name/htmlcss.md","raw":"title: HTML/CSS文件命名\n---\n\n确保文件命名总是以字母开头而不是数字,且字母一律小写,以下划线连接且不带其他标点符号,如:\n\n``` html\n\t\n\tjdc.html\n\tjdc_list.html\n\tjdc_detail.html\n\n\t\n\tjdc.scss\n\tjdc_list.scss\n\tjdc_detail.scss\n```","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-06T14:32:22.000Z","path":"docs/name/htmlcss.html","comments":1,"layout":"page","_id":"cihvwnkmn00051xfyhh94df7v"},{"title":"命名规范","_content":"\n由历史原因及个人习惯引起的 DOM 结构、命名不统一,导致不同成员在维护同一页面时,效率低下,迭代、维护成本极高。\n\n### 目录命名\n\n* 项目文件夹:projectname\n* 样式文件夹:css\n* 脚本文件夹:js\n* 样式类图片文件夹:img\n","source":"docs/name/dir.md","raw":"title: 命名规范\n---\n\n由历史原因及个人习惯引起的 DOM 结构、命名不统一,导致不同成员在维护同一页面时,效率低下,迭代、维护成本极高。\n\n### 目录命名\n\n* 项目文件夹:projectname\n* 样式文件夹:css\n* 脚本文件夹:js\n* 样式类图片文件夹:img\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-06T14:33:23.000Z","path":"docs/name/dir.html","comments":1,"layout":"page","_id":"cihvwnkmo00061xfylbjbwix2"},{"title":"ClassName命名","_content":"\n\nClassName的命名应该尽量精短、明确,必须以**字母开头命名**,且**全部字母为小写**,单词之间**统一使用下划线** “_” 连接\n\n## 命名原则 \n\n基于姓氏命名法(继承 + 外来),如下图:\n\n![enter image description here](http://labs.qiang.it/ppguide/img/standard_jiapu.png)\n\n祖先模块不能出现下划线,除了是全站公用模块,如 `mod_` 系列的命名:\n\n**推荐:**\n\n\t
\n\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t...\n\t\t
\n\t
\n\t\n\t\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\n\t\n**不推荐:**\n\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\t\n\n在子孙模块数量可预测的情况下,严格继承祖先模块的命名前缀\n\n\t
\n \t
\n \t
\n\t
\n\t\t\n当子孙模块超过4级或以上的时候,可以考虑在祖先模块内具有识辨性的独立缩写作为新的子孙模块\n\n**推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n**不推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n## 模块命名\n\n全站公共模块:以 `mod_` 开头\n\n\t
\n\n业务公共模块:以 `业务名_mod_` 开头\n\n\t
\n\n## 常用命名推荐\n\n**注意**:ad、banner、gg、guanggao 等有机会和广告挂勾的字眠不建议直接用来做ClassName,因为有些浏览器插件(Chrome的广告拦截插件等)会直接过滤这些类名,因此 \n\n`
` 这种情况不应该出现\n\n另外,**敏感不和谐字眼**也不应该出现,如:\n\n\t
\n\t
\n\t
\n\t
\n\t
\n\t...\n\n| ClassName | 含义 |\n| ------------ | ------------- | \n| about | 关于 |\n| account | 账户 |\n| arrow | 箭头图标 |\n| article | 文章 |\n| aside | 边栏 |\n| audio | 音频 |\n| avatar | 头像 |\n| bg,background | 背景 |\n| bar | 栏(工具类)|\n| branding | 品牌化 |\n| crumb,breadcrumbs | 面包屑 |\n| btn,button | 按钮 | \n| caption | 标题,说明 |\n| category | 分类 |\n| chart | 图表 |\n| clearfix | 清除浮动 |\n| close | 关闭 |\n| col,column | 列 |\n| comment | 评论 | \n| community | 社区 |\n| container | 容器 |\n| content | 内容 | \n| copyright | 版权 | \n| current | 当前态,选中态 | \n| default | 默认 | \n| description | 描述 | \n| details | 细节 | \n| disabled | 不可用 | \n| entry | 文章,博文 | \n| error | 错误 | \n| even | 偶数,常用于多行列表或表格中 | \n| fail | 失败(提示) | \n| feature | 专题 | \n| fewer | 收起 | \n| field | 用于表单的输入区域 | \n| figure | 图 | \n| filter | 筛选 | \n| first | 第一个,常用于列表中 | \n| footer | 页脚 | \n| forum | 论坛 | \n| gallery | 画廊 | \n| group | 模块,清除浮动 | \n| header | 页头 | \n| help | 帮助 | \n| hide | 隐藏 | \n| hightlight | 高亮 | \n| home | 主页 | \n| icon | 图标 | \n| info,information | 信息 | \n| last | 最后一个,常用于列表中 | \n| links | 链接 | \n| login | 登录 | \n| logout | 退出 | \n| logo | 标志 | \n| main | 主体 | \n| menu | 菜单 | \n| meta | 作者、更新时间等信息栏,一般位于标题之下 | \n| module | 模块 | \n| more | 更多(展开) | \n| msg,message | 消息 | \n| nav,navigation | 导航 | \n| next | 下一页 | \n| nub | 小块 | \n| odd | 奇数,常用于多行列表或表格中 | \n| off | 鼠标离开 | \n| on | 鼠标移过 | \n| output | 输出 | \n| pagination | 分页 | \n| pop,popup | 弹窗 | \n| preview | 预览 | \n| previous | 上一页 | \n| primary | 主要 | \n| progress | 进度条 | \n| promotion | 促销 | \n| rcommd,recommendations | 推荐 | \n| reg,register | 注册 | \n| save | 保存 | \n| search | 搜索 | \n| secondary | 次要 | \n| section | 区块 | \n| selected | 已选 | \n| share | 分享 | \n| show | 显示 | \n| sidebar | 边栏,侧栏 | \n| slide | 幻灯片,图片切换 | \n| sort | 排序 | \n| sub | 次级的,子级的 | \n| submit | 提交 | \n| subscribe | 订阅 | \n| subtitle | 副标题 | \n| success | 成功(提示) | \n| summary | 摘要 | \n| tab | 标签页 | \n| table | 表格 | \n| txt,text | 文本 | \n| thumbnail | 缩略图 | \n| time | 时间 | \n| tips | 提示 | \n| title | 标题 | \n| video | 视频 | \n| wrap | 容器,包,一般用于最外层 | \n| wrapper | 容器,包,一般用于最外层 | \n\n\n","source":"docs/name/classname.md","raw":"title: ClassName命名\n---\n\n\nClassName的命名应该尽量精短、明确,必须以**字母开头命名**,且**全部字母为小写**,单词之间**统一使用下划线** “_” 连接\n\n## 命名原则 \n\n基于姓氏命名法(继承 + 外来),如下图:\n\n![enter image description here](http://labs.qiang.it/ppguide/img/standard_jiapu.png)\n\n祖先模块不能出现下划线,除了是全站公用模块,如 `mod_` 系列的命名:\n\n**推荐:**\n\n\t
\n\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t...\n\t\t
\n\t
\n\t\n\t\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\n\t\n**不推荐:**\n\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\t\n\n在子孙模块数量可预测的情况下,严格继承祖先模块的命名前缀\n\n\t
\n \t
\n \t
\n\t
\n\t\t\n当子孙模块超过4级或以上的时候,可以考虑在祖先模块内具有识辨性的独立缩写作为新的子孙模块\n\n**推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n**不推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n## 模块命名\n\n全站公共模块:以 `mod_` 开头\n\n\t
\n\n业务公共模块:以 `业务名_mod_` 开头\n\n\t
\n\n## 常用命名推荐\n\n**注意**:ad、banner、gg、guanggao 等有机会和广告挂勾的字眠不建议直接用来做ClassName,因为有些浏览器插件(Chrome的广告拦截插件等)会直接过滤这些类名,因此 \n\n`
` 这种情况不应该出现\n\n另外,**敏感不和谐字眼**也不应该出现,如:\n\n\t
\n\t
\n\t
\n\t
\n\t
\n\t...\n\n| ClassName | 含义 |\n| ------------ | ------------- | \n| about | 关于 |\n| account | 账户 |\n| arrow | 箭头图标 |\n| article | 文章 |\n| aside | 边栏 |\n| audio | 音频 |\n| avatar | 头像 |\n| bg,background | 背景 |\n| bar | 栏(工具类)|\n| branding | 品牌化 |\n| crumb,breadcrumbs | 面包屑 |\n| btn,button | 按钮 | \n| caption | 标题,说明 |\n| category | 分类 |\n| chart | 图表 |\n| clearfix | 清除浮动 |\n| close | 关闭 |\n| col,column | 列 |\n| comment | 评论 | \n| community | 社区 |\n| container | 容器 |\n| content | 内容 | \n| copyright | 版权 | \n| current | 当前态,选中态 | \n| default | 默认 | \n| description | 描述 | \n| details | 细节 | \n| disabled | 不可用 | \n| entry | 文章,博文 | \n| error | 错误 | \n| even | 偶数,常用于多行列表或表格中 | \n| fail | 失败(提示) | \n| feature | 专题 | \n| fewer | 收起 | \n| field | 用于表单的输入区域 | \n| figure | 图 | \n| filter | 筛选 | \n| first | 第一个,常用于列表中 | \n| footer | 页脚 | \n| forum | 论坛 | \n| gallery | 画廊 | \n| group | 模块,清除浮动 | \n| header | 页头 | \n| help | 帮助 | \n| hide | 隐藏 | \n| hightlight | 高亮 | \n| home | 主页 | \n| icon | 图标 | \n| info,information | 信息 | \n| last | 最后一个,常用于列表中 | \n| links | 链接 | \n| login | 登录 | \n| logout | 退出 | \n| logo | 标志 | \n| main | 主体 | \n| menu | 菜单 | \n| meta | 作者、更新时间等信息栏,一般位于标题之下 | \n| module | 模块 | \n| more | 更多(展开) | \n| msg,message | 消息 | \n| nav,navigation | 导航 | \n| next | 下一页 | \n| nub | 小块 | \n| odd | 奇数,常用于多行列表或表格中 | \n| off | 鼠标离开 | \n| on | 鼠标移过 | \n| output | 输出 | \n| pagination | 分页 | \n| pop,popup | 弹窗 | \n| preview | 预览 | \n| previous | 上一页 | \n| primary | 主要 | \n| progress | 进度条 | \n| promotion | 促销 | \n| rcommd,recommendations | 推荐 | \n| reg,register | 注册 | \n| save | 保存 | \n| search | 搜索 | \n| secondary | 次要 | \n| section | 区块 | \n| selected | 已选 | \n| share | 分享 | \n| show | 显示 | \n| sidebar | 边栏,侧栏 | \n| slide | 幻灯片,图片切换 | \n| sort | 排序 | \n| sub | 次级的,子级的 | \n| submit | 提交 | \n| subscribe | 订阅 | \n| subtitle | 副标题 | \n| success | 成功(提示) | \n| summary | 摘要 | \n| tab | 标签页 | \n| table | 表格 | \n| txt,text | 文本 | \n| thumbnail | 缩略图 | \n| time | 时间 | \n| tips | 提示 | \n| title | 标题 | \n| video | 视频 | \n| wrap | 容器,包,一般用于最外层 | \n| wrapper | 容器,包,一般用于最外层 | \n\n\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-06T14:35:01.000Z","path":"docs/name/classname.html","comments":1,"layout":"page","_id":"cihvwnkmp00071xfys1zo8v8l"},{"title":"常见问题","_content":"\n> 问:CSV文件打开乱码\n> 答:有时候程序导出来的csv文件在mac下用excel打开会乱码,此时可以用Numbers试试。 \n\n> 问:把正在下载系统的mac放着充电,过了一天风扇很厉害强制关机,然后一直开不了\n> 答:估计是安装系统过程进入了休眠导致系统没有安装完,插入系统U盘一般可以解决。\n","source":"docs/issues.md","raw":"title: 常见问题\n---\n\n> 问:CSV文件打开乱码\n> 答:有时候程序导出来的csv文件在mac下用excel打开会乱码,此时可以用Numbers试试。 \n\n> 问:把正在下载系统的mac放着充电,过了一天风扇很厉害强制关机,然后一直开不了\n> 答:估计是安装系统过程进入了休眠导致系统没有安装完,插入系统U盘一般可以解决。\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-02T07:02:18.000Z","path":"docs/issues.html","comments":1,"layout":"page","_id":"cihvwnkmr00081xfyet8zkihf"},{"title":"概述","_content":"欢迎使用`前端代码规范`,使用过程中如碰到问题,请到[Github](https://github.com/o2team/guide/issues)进行提问。\n\n\n## 关于\n\n`前端代码规范` 是由 [凹凸实验室](http://aotu.io) 整理的,基于 [W3C](http://www.w3.org/)、[苹果开发者](https://developer.apple.com/) 等官方文档,并结合团队日常业务需求以及团队在日常开发过程中总结提炼出的经验而制定。\n\n旨在增强团队开发协作、提高代码质量和打造开发基石的编码规范,\n\n以下规范是团队基本约定的内容,必须严格遵循。\n\n\n#### HTML规范\n\n基于 [W3C](http://www.w3.org/)、[苹果开发者](https://developer.apple.com/) 等官方文档,并结合团队业务和开发过程中总结的规范约定,让页面HTML代码更具语义性。\n\n#### 图片规范\n\n了解各种图片格式特性,根据特性制定图片规范,包括但不限于图片的质量约定、图片引入方式、图片合并处理等,旨在从图片层面优化页面性能。\n\n#### CSS规范\n\n统一规范团队 CSS 代码书写风格和使用 CSS 预编译语言语法风格,提供常用媒体查询语句和浏览器私有属性引用,并从业务层面统一规范常用模块的引用。\n\n#### 命名规范\n\n从 `目录`、`图片`、`HTML/CSS文件`、`ClassName` 的命名等层面约定规范团队的命名习惯,增强团队代码的可读性。\n\n\n\n","source":"docs/index.md","raw":"title: 概述\n---\n欢迎使用`前端代码规范`,使用过程中如碰到问题,请到[Github](https://github.com/o2team/guide/issues)进行提问。\n\n\n## 关于\n\n`前端代码规范` 是由 [凹凸实验室](http://aotu.io) 整理的,基于 [W3C](http://www.w3.org/)、[苹果开发者](https://developer.apple.com/) 等官方文档,并结合团队日常业务需求以及团队在日常开发过程中总结提炼出的经验而制定。\n\n旨在增强团队开发协作、提高代码质量和打造开发基石的编码规范,\n\n以下规范是团队基本约定的内容,必须严格遵循。\n\n\n#### HTML规范\n\n基于 [W3C](http://www.w3.org/)、[苹果开发者](https://developer.apple.com/) 等官方文档,并结合团队业务和开发过程中总结的规范约定,让页面HTML代码更具语义性。\n\n#### 图片规范\n\n了解各种图片格式特性,根据特性制定图片规范,包括但不限于图片的质量约定、图片引入方式、图片合并处理等,旨在从图片层面优化页面性能。\n\n#### CSS规范\n\n统一规范团队 CSS 代码书写风格和使用 CSS 预编译语言语法风格,提供常用媒体查询语句和浏览器私有属性引用,并从业务层面统一规范常用模块的引用。\n\n#### 命名规范\n\n从 `目录`、`图片`、`HTML/CSS文件`、`ClassName` 的命名等层面约定规范团队的命名习惯,增强团队代码的可读性。\n\n\n\n","date":"2015-12-16T06:50:33.000Z","updated":"2015-12-16T06:50:33.000Z","path":"docs/index.html","_id":"cihvwnkmt00091xfyroakhyx0","comments":1,"layout":"page"},{"title":"图片大小","_content":"\n## 图片大小\n\n### 全国网速现状\n\n#### 固定网络\n\n据文章 [《2015年Q3中国宽带速率状况报告》](http://www.199it.com/archives/399272.html),2015第三季全国平均速度整体情况:\n\n![image](http://labs.qiang.it/h5/guide/2015q3speed.jpg)\n\n\n\n中国固定宽带互联网网络平均网络下载速率达到7.90 Mbit/s,用户进行网页浏览的平均首屏呈现时间为2.18s,平均视频下载速率为6.41Mbit/s\n\n#### 移动网络\n\n\n3G网络传输速率理论峰值在3.5Mbps,4G网络传输速率理论上可达到20Mbps,最高可以达到100Mbps。根据 `128KB/s=128×8(Kb/s)=1024Kb/s=1Mb/s` 的转换来算,3G网络的理论传输速率可达到450KB/s,4G网络的理论传输速率可达到 2.5MB/s ~ 12.5MB/s\n\n受用户计算机性能、网络设备质量、资源使用情况、网络高峰期、网站服务能力、线路衰耗、信号衰减等多因素影响,3G和4G的实际平均传输速率约为:\n\n* 3G:最高值100KB/s,平均值40~50KB/s\n* 4G:最高值2.75MB/s,平均500~1000KB/s\n\n\n\n### 3G/4G用户占比\n\n\n2015年8月移动宽带(3G/4G)用户占比各省分布情况:\n\n![image](http://labs.qiang.it/h5/guide/Img421935146.jpg)\n\n据文章 [《工信部:2015年7月底中国4G用户累计超过2.5亿》](http://www.199it.com/archives/393838.html) 介绍:\n\n> 截至2015年7月底,中国4G用户累计超过2.5亿(全球LTE用户超过7.9亿,全球TD-LTE用户超过2.78亿),已建设4G基站超过153万个,其中完成TD-LTE基站建设超过100万个,多载波聚合等TD-LTE演进技术逐步商用,4G智能手机已经占到国内智能手机市场的82.7%。\n\n\n## 团队约定\n\n中国普通家庭的宽带基本能达到8Mbps,实际速率大约为500---900KB/s,全国3G/4G用户占有比超过了50%,为了保证图片能更好地加载展示给用户看,团队约定:\n\n**PC平台单张的图片的大小不应大于 200KB。**\n\n**移动平台单张的图片的大小不应大于 100KB。**\n\n*(图片的大小约定标准随全国网速的改变而改变)*","source":"docs/image/size.md","raw":"title: 图片大小\n---\n\n## 图片大小\n\n### 全国网速现状\n\n#### 固定网络\n\n据文章 [《2015年Q3中国宽带速率状况报告》](http://www.199it.com/archives/399272.html),2015第三季全国平均速度整体情况:\n\n![image](http://labs.qiang.it/h5/guide/2015q3speed.jpg)\n\n\n\n中国固定宽带互联网网络平均网络下载速率达到7.90 Mbit/s,用户进行网页浏览的平均首屏呈现时间为2.18s,平均视频下载速率为6.41Mbit/s\n\n#### 移动网络\n\n\n3G网络传输速率理论峰值在3.5Mbps,4G网络传输速率理论上可达到20Mbps,最高可以达到100Mbps。根据 `128KB/s=128×8(Kb/s)=1024Kb/s=1Mb/s` 的转换来算,3G网络的理论传输速率可达到450KB/s,4G网络的理论传输速率可达到 2.5MB/s ~ 12.5MB/s\n\n受用户计算机性能、网络设备质量、资源使用情况、网络高峰期、网站服务能力、线路衰耗、信号衰减等多因素影响,3G和4G的实际平均传输速率约为:\n\n* 3G:最高值100KB/s,平均值40~50KB/s\n* 4G:最高值2.75MB/s,平均500~1000KB/s\n\n\n\n### 3G/4G用户占比\n\n\n2015年8月移动宽带(3G/4G)用户占比各省分布情况:\n\n![image](http://labs.qiang.it/h5/guide/Img421935146.jpg)\n\n据文章 [《工信部:2015年7月底中国4G用户累计超过2.5亿》](http://www.199it.com/archives/393838.html) 介绍:\n\n> 截至2015年7月底,中国4G用户累计超过2.5亿(全球LTE用户超过7.9亿,全球TD-LTE用户超过2.78亿),已建设4G基站超过153万个,其中完成TD-LTE基站建设超过100万个,多载波聚合等TD-LTE演进技术逐步商用,4G智能手机已经占到国内智能手机市场的82.7%。\n\n\n## 团队约定\n\n中国普通家庭的宽带基本能达到8Mbps,实际速率大约为500---900KB/s,全国3G/4G用户占有比超过了50%,为了保证图片能更好地加载展示给用户看,团队约定:\n\n**PC平台单张的图片的大小不应大于 200KB。**\n\n**移动平台单张的图片的大小不应大于 100KB。**\n\n*(图片的大小约定标准随全国网速的改变而改变)*","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-02T07:01:03.000Z","path":"docs/image/size.html","comments":1,"layout":"page","_id":"cihvwnkmu000a1xfy2vu0hv0y"},{"title":"图片质量","_content":"\n* 上线的图片都应该经过压缩处理,压缩后的图片不应该出现肉眼可感知的失真区域\n* 60质量的JPEG格式图片与质量大于60的相比,肉眼已看不出明显的区别,因此保存 JPEG 图的时候,质量一般控制在60,若保真度要求高的图片可适量提高到 80,图片大小控制在 200KB 以内","source":"docs/image/quality.md","raw":"title: 图片质量\n---\n\n* 上线的图片都应该经过压缩处理,压缩后的图片不应该出现肉眼可感知的失真区域\n* 60质量的JPEG格式图片与质量大于60的相比,肉眼已看不出明显的区别,因此保存 JPEG 图的时候,质量一般控制在60,若保真度要求高的图片可适量提高到 80,图片大小控制在 200KB 以内","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-02T06:58:23.000Z","path":"docs/image/quality.html","comments":1,"layout":"page","_id":"cihvwnkmv000b1xfyoxwdi2em"},{"_content":"## 图片规范\n\n### 图片格式\n\n常见的图片格式有 GIF、PNG8、PNG24、JPEG、WEBP,根据图片格式的特性和场景需要选取适合的图片格式\n\n\n#### GIF\n\n> GIF图象是基于颜色列表的(存储的数据是该点的颜色对应于颜色列表的索引值),最多只支持8位(256色)。GIF文件内部分成许多存储块,用来存储多幅图象或者是决定图象表现行为的控制块,用以实现动画和交互式应用。GIF文件还通过LZW压缩算法压缩图象数据来减少图象尺寸\n\n##### 特性\n\n* 优秀的压缩算法使其在一定程度上保证图像质量的同时将体积变得很小。\n* 可插入多帧,从而实现动画效果。\n* 可设置透明色以产生对象浮现于背景之上的效果。\n* 由于采用了8位压缩,最多只能处理256种颜色,故不宜应用于真彩色图片。\n\n更多关于GIF:\n\n[维基百科 - PNG](https://zh.wikipedia.org/wiki/GIF)\n\n[GIF文档](http://dev.gameres.com/Program/Visual/Other/GIFDoc.htm)\n\n#### PNG\n\n> PNG是20世纪90年代中期开始开发的图像文件存储格式,其目的是企图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。流式网络图形格式(Portable Network Graphic Format,PNG)名称来源于非官方的“PNG's Not GIF”,是一种位图文件(bitmap file)存储格式,读成“ping”。PNG用来存储灰度图像时,灰度图像的深度可多到16位,存储彩色图像时,彩色图像的深度可多到48位,并且还可存储多到16位的α通道数据。PNG使用从LZ77派生的无损数据压缩算法。\n\n##### 特性\n\n* 支持256色调色板技术,文件体积小。\n* 无损压缩\n* 最高支持48位真彩色图像以及16位灰度图像。\n* 支持Alpha通道的透明/半透明特性。\n* 支持图像亮度的Gamma校准信息。\n* 支持存储附加文本信息,以保留图像名称、作者、版权、创作时间、注释等信息。\n* 渐近显示和流式读写,适合在网络传输中快速显示预览效果后再展示全貌。\n* 使用CRC防止文件出错。\n* 最新的PNG标准允许在一个文件内存储多幅图像。\n\n更多关于PNG:\n\n[PNG官方站 - PNG General Information\n](http://www.libpng.org/pub/png/)\n\n[PNG格式](http://dev.gameres.com/Program/Visual/Other/PNGFormat.htm)\n\n[维基百科 - PNG](https://zh.wikipedia.org/wiki/PNG)\n\n#### JPEG\n\n> JPEG是一种针对照片视频而广泛使用的一种有损压缩标准方法。这个名称代表Joint Photographic Experts Group(联合图像专家小组)。此团队创立于公元1986年,1992年发布了JPEG的标准而在1994年获得了ISO 10918-1的认定\n\n##### 特性\n\n* 适用于储存24位元全采影像\n* 采取的压缩方式通常为有损压缩\n* 不支持透明或动画\n* 压缩比越高影像耗损越大,失真越严重\n* 压缩比在10左右肉眼无法\b辨出压缩图与原图的差别\n\n更多关于JPEG:\n\n[维基百科 - JPEG](https://zh.wikipedia.org/wiki/JPEG)\n\n#### WEBP\n\n> WebP,是一种同时提供了有损压缩与无损压缩的图片文件格式,派生自视频编码格式 VP8,是由Google在购买On2 Technologies后发展出来。WebP最初在2010年发布,2011年11月8日,Google开始让WebP支持无损压缩和透明色的功能,而在2012年8月16日的参考实做libwebp 0.2.0中正式支持\n\n##### 特性\n\n* 同时提供有损压缩和无损压缩两种图片文件格式\n* 文件体积小,无损压缩后,比 PNG 文件少了 45% 的文件大小;有损压缩后,比 JPEG 文件少了 25% - 34% 文件大小\n* 浏览器兼容差,目前只支持客户端 Chrome 和 Opera 浏览器以及安卓原生浏览器(Andriod 4.0+),[WebP兼容性](https://developers.google.com/speed/webp/faq#which_web_browsers_natively_support_webp)\n\n更多关于WebB:\n\n[维基百科](https://zh.wikipedia.org/wiki/WebP)\n\n[WebP探寻之路](http://isux.tencent.com/introduction-of-webp.html)\n\n\n#### 团队约定 \n\n##### 内容图\n\n内容图多以商品图等照片类图片形式存在,颜色较为丰富,文件体积较大\n\n* 优先考虑 JPEG 格式,条件允许的话优先考虑 WebP 格式\n* 尽量不使用PNG格式,PNG8 色位太低,PNG24 压缩率低,文件体积大\n\n##### 背景图\n\n背景图多为图标等颜色比较简单、文件体积不大、起修饰作用的图片\n\n* PNG 与 GIF 格式,优先考虑使用 PNG 格式,PNG格式允许更多的颜色并提供更好的压缩率\n* 图像颜色比较简单的,如纯色块线条图标,优先考虑使用 PNG8 格式,避免不使用 JPEG 格式\n* 图像颜色丰富而且图片文件不太大的(40KB 以下)或有半透明效果的优先考虑 PNG24 格式\n* 图像颜色丰富而且文件比较大的(40KB - 200KB)优先考虑 JPEG 格式\n* 条件允许的,优先考虑 WebP 代替 PNG 和 JPEG 格式\n\n### 图片大小\n\n#### 全国网速现状\n\n##### 固定网络\n\n据文章 [《2015年Q3中国宽带速率状况报告》](http://www.199it.com/archives/399272.html),2015第三季全国平均速度整体情况:\n\n![image](http://labs.qiang.it/h5/guide/2015q3speed.jpg)\n\n\n\n中国固定宽带互联网网络平均网络下载速率达到7.90 Mbit/s,用户进行网页浏览的平均首屏呈现时间为2.18s,平均视频下载速率为6.41Mbit/s\n\n##### 移动网络\n\n\n3G网络传输速率理论峰值在3.5Mbps,4G网络传输速率理论上可达到20Mbps,最高可以达到100Mbps。根据 `128KB/s=128×8(Kb/s)=1024Kb/s=1Mb/s` 的转换来算,3G网络的理论传输速率可达到450KB/s,4G网络的理论传输速率可达到 2.5MB/s ~ 12.5MB/s\n\n受用户计算机性能、网络设备质量、资源使用情况、网络高峰期、网站服务能力、线路衰耗、信号衰减等多因素影响,3G和4G的实际平均传输速率约为:\n\n* 3G:最高值100KB/s,平均值40~50KB/s\n* 4G:最高值2.75MB/s,平均500~1000KB/s\n\n\n\n#### 3G/4G用户占比\n\n\n2015年8月移动宽带(3G/4G)用户占比各省分布情况:\n\n![image](http://labs.qiang.it/h5/guide/Img421935146.jpg)\n\n据文章 [《工信部:2015年7月底中国4G用户累计超过2.5亿》](http://www.199it.com/archives/393838.html) 介绍:\n\n> 截至2015年7月底,中国4G用户累计超过2.5亿(全球LTE用户超过7.9亿,全球TD-LTE用户超过2.78亿),已建设4G基站超过153万个,其中完成TD-LTE基站建设超过100万个,多载波聚合等TD-LTE演进技术逐步商用,4G智能手机已经占到国内智能手机市场的82.7%。\n\n\n\n#### 团队约定\n\n中国普通家庭的宽带基本能达到8Mbps,实际速率大约为500---900KB/s,全国3G/4G用户占有比超过了50%,为了保证图片能更好地加载展示给用户看,团队约定:\n\n**PC平台单张的图片的大小不应大于 200KB。**\n\n**移动平台单张的图片的大小不应大于 100KB。**\n\n*(图片的大小约定标准随全国网速的改变而改变)*\n\n\n### 图片质量\n\n* 上线的图片都应该经过压缩处理,压缩后的图片不应该出现肉眼可感知的失真区域\n* 60质量的JPEG格式图片与质量大于60的相比,肉眼已看不出明显的区别,因此保存 JPEG 图的时候,质量一般控制在60,若保真度要求高的图片可适量提高到 80,图片大小控制在 200KB 以内\n\n### 图片引入\n\n测试内容图应该写上表明图片尺寸的占位图,可以用线上占位图生成服务,如:\n\n```\nhttp://placeholder.qiniudn.com/300x200\n```\n\n![image](http://placeholder.qiniudn.com/300x200)\n\n\n\nHTML 中图片引入不需添加 width、height 属性,alt 属性应该写上\n\n*推荐:*\n\n```\n\"\"\n```\n\n*不推荐:*\n\n```\n\n```\n\nCSS 中图片引入不需要引号\n\n```\n.jdc {\n background-image: url(icon.png);\n}\n```\n\n### CSS Sprites VS Data URIs\n\n#### CSS Sprites特点\n\n* 减少请求数\n* 加速图片的显示\n* 维护更新成本大\n* 更多的内存消耗,特别是大体积或有过多空白的 Sprites 图 \n* 图片渗漏,相邻的不需展示的图片有可能出现在展示元素中,特别是在高清设备移动设备上\n\n#### Data URIs(base64编码)\n\n* 减少请求数\n* 转换文件体积大,大约比原始的二进制大33%\n* IE6 / IE7 不支持\n* 图片显示相对较慢,需要更多的CPU消耗\n\n\n\n更多关于 CSS Sprites 和 Data URIs 可以阅读:\n\n[《When to Base64 Encode Images (and When Not To)》](http://davidbcalhoun.com/2011/when-to-base64-encode-images-and-when-not-to/)\n\n[《Data URI 最佳实践》](http://madscript.com/html5/datauri-best-practice/)\n\n[《Data URI&MHTML: 用还是不用?》](http://www.99css.com/492/)\n\n[CSS Sprites vs. Data URIs: Which is Faster on Mobile?](http://www.mobify.com/blog/css-sprites-vs-data-uris-which-is-faster-on-mobile/)\n\n#### 团队约定\n\n##### CSS Sprites 使用建议\n\n* 适合使用频率高更新频率低的小图标\n* 尽量不留太多的空白\n* 体积较大的图片不合并\n* 确保要合并的小图坐标数值和合并后的 Sprites 图尺寸均为偶数\n\n\n##### Data URIs(base64编码)使用建议\n\n* 合适更新频率高的小图片,如某些具备自定义功能的标题icon等\n* 转换成 Base64 编码的图片应小于 2KB\n* 移动端不使用 Base64 编码 \n* 要兼容 IE6/IE7 的不使用\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n","source":"docs/image/jdc_fd_guide_image.md","raw":"## 图片规范\n\n### 图片格式\n\n常见的图片格式有 GIF、PNG8、PNG24、JPEG、WEBP,根据图片格式的特性和场景需要选取适合的图片格式\n\n\n#### GIF\n\n> GIF图象是基于颜色列表的(存储的数据是该点的颜色对应于颜色列表的索引值),最多只支持8位(256色)。GIF文件内部分成许多存储块,用来存储多幅图象或者是决定图象表现行为的控制块,用以实现动画和交互式应用。GIF文件还通过LZW压缩算法压缩图象数据来减少图象尺寸\n\n##### 特性\n\n* 优秀的压缩算法使其在一定程度上保证图像质量的同时将体积变得很小。\n* 可插入多帧,从而实现动画效果。\n* 可设置透明色以产生对象浮现于背景之上的效果。\n* 由于采用了8位压缩,最多只能处理256种颜色,故不宜应用于真彩色图片。\n\n更多关于GIF:\n\n[维基百科 - PNG](https://zh.wikipedia.org/wiki/GIF)\n\n[GIF文档](http://dev.gameres.com/Program/Visual/Other/GIFDoc.htm)\n\n#### PNG\n\n> PNG是20世纪90年代中期开始开发的图像文件存储格式,其目的是企图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。流式网络图形格式(Portable Network Graphic Format,PNG)名称来源于非官方的“PNG's Not GIF”,是一种位图文件(bitmap file)存储格式,读成“ping”。PNG用来存储灰度图像时,灰度图像的深度可多到16位,存储彩色图像时,彩色图像的深度可多到48位,并且还可存储多到16位的α通道数据。PNG使用从LZ77派生的无损数据压缩算法。\n\n##### 特性\n\n* 支持256色调色板技术,文件体积小。\n* 无损压缩\n* 最高支持48位真彩色图像以及16位灰度图像。\n* 支持Alpha通道的透明/半透明特性。\n* 支持图像亮度的Gamma校准信息。\n* 支持存储附加文本信息,以保留图像名称、作者、版权、创作时间、注释等信息。\n* 渐近显示和流式读写,适合在网络传输中快速显示预览效果后再展示全貌。\n* 使用CRC防止文件出错。\n* 最新的PNG标准允许在一个文件内存储多幅图像。\n\n更多关于PNG:\n\n[PNG官方站 - PNG General Information\n](http://www.libpng.org/pub/png/)\n\n[PNG格式](http://dev.gameres.com/Program/Visual/Other/PNGFormat.htm)\n\n[维基百科 - PNG](https://zh.wikipedia.org/wiki/PNG)\n\n#### JPEG\n\n> JPEG是一种针对照片视频而广泛使用的一种有损压缩标准方法。这个名称代表Joint Photographic Experts Group(联合图像专家小组)。此团队创立于公元1986年,1992年发布了JPEG的标准而在1994年获得了ISO 10918-1的认定\n\n##### 特性\n\n* 适用于储存24位元全采影像\n* 采取的压缩方式通常为有损压缩\n* 不支持透明或动画\n* 压缩比越高影像耗损越大,失真越严重\n* 压缩比在10左右肉眼无法\b辨出压缩图与原图的差别\n\n更多关于JPEG:\n\n[维基百科 - JPEG](https://zh.wikipedia.org/wiki/JPEG)\n\n#### WEBP\n\n> WebP,是一种同时提供了有损压缩与无损压缩的图片文件格式,派生自视频编码格式 VP8,是由Google在购买On2 Technologies后发展出来。WebP最初在2010年发布,2011年11月8日,Google开始让WebP支持无损压缩和透明色的功能,而在2012年8月16日的参考实做libwebp 0.2.0中正式支持\n\n##### 特性\n\n* 同时提供有损压缩和无损压缩两种图片文件格式\n* 文件体积小,无损压缩后,比 PNG 文件少了 45% 的文件大小;有损压缩后,比 JPEG 文件少了 25% - 34% 文件大小\n* 浏览器兼容差,目前只支持客户端 Chrome 和 Opera 浏览器以及安卓原生浏览器(Andriod 4.0+),[WebP兼容性](https://developers.google.com/speed/webp/faq#which_web_browsers_natively_support_webp)\n\n更多关于WebB:\n\n[维基百科](https://zh.wikipedia.org/wiki/WebP)\n\n[WebP探寻之路](http://isux.tencent.com/introduction-of-webp.html)\n\n\n#### 团队约定 \n\n##### 内容图\n\n内容图多以商品图等照片类图片形式存在,颜色较为丰富,文件体积较大\n\n* 优先考虑 JPEG 格式,条件允许的话优先考虑 WebP 格式\n* 尽量不使用PNG格式,PNG8 色位太低,PNG24 压缩率低,文件体积大\n\n##### 背景图\n\n背景图多为图标等颜色比较简单、文件体积不大、起修饰作用的图片\n\n* PNG 与 GIF 格式,优先考虑使用 PNG 格式,PNG格式允许更多的颜色并提供更好的压缩率\n* 图像颜色比较简单的,如纯色块线条图标,优先考虑使用 PNG8 格式,避免不使用 JPEG 格式\n* 图像颜色丰富而且图片文件不太大的(40KB 以下)或有半透明效果的优先考虑 PNG24 格式\n* 图像颜色丰富而且文件比较大的(40KB - 200KB)优先考虑 JPEG 格式\n* 条件允许的,优先考虑 WebP 代替 PNG 和 JPEG 格式\n\n### 图片大小\n\n#### 全国网速现状\n\n##### 固定网络\n\n据文章 [《2015年Q3中国宽带速率状况报告》](http://www.199it.com/archives/399272.html),2015第三季全国平均速度整体情况:\n\n![image](http://labs.qiang.it/h5/guide/2015q3speed.jpg)\n\n\n\n中国固定宽带互联网网络平均网络下载速率达到7.90 Mbit/s,用户进行网页浏览的平均首屏呈现时间为2.18s,平均视频下载速率为6.41Mbit/s\n\n##### 移动网络\n\n\n3G网络传输速率理论峰值在3.5Mbps,4G网络传输速率理论上可达到20Mbps,最高可以达到100Mbps。根据 `128KB/s=128×8(Kb/s)=1024Kb/s=1Mb/s` 的转换来算,3G网络的理论传输速率可达到450KB/s,4G网络的理论传输速率可达到 2.5MB/s ~ 12.5MB/s\n\n受用户计算机性能、网络设备质量、资源使用情况、网络高峰期、网站服务能力、线路衰耗、信号衰减等多因素影响,3G和4G的实际平均传输速率约为:\n\n* 3G:最高值100KB/s,平均值40~50KB/s\n* 4G:最高值2.75MB/s,平均500~1000KB/s\n\n\n\n#### 3G/4G用户占比\n\n\n2015年8月移动宽带(3G/4G)用户占比各省分布情况:\n\n![image](http://labs.qiang.it/h5/guide/Img421935146.jpg)\n\n据文章 [《工信部:2015年7月底中国4G用户累计超过2.5亿》](http://www.199it.com/archives/393838.html) 介绍:\n\n> 截至2015年7月底,中国4G用户累计超过2.5亿(全球LTE用户超过7.9亿,全球TD-LTE用户超过2.78亿),已建设4G基站超过153万个,其中完成TD-LTE基站建设超过100万个,多载波聚合等TD-LTE演进技术逐步商用,4G智能手机已经占到国内智能手机市场的82.7%。\n\n\n\n#### 团队约定\n\n中国普通家庭的宽带基本能达到8Mbps,实际速率大约为500---900KB/s,全国3G/4G用户占有比超过了50%,为了保证图片能更好地加载展示给用户看,团队约定:\n\n**PC平台单张的图片的大小不应大于 200KB。**\n\n**移动平台单张的图片的大小不应大于 100KB。**\n\n*(图片的大小约定标准随全国网速的改变而改变)*\n\n\n### 图片质量\n\n* 上线的图片都应该经过压缩处理,压缩后的图片不应该出现肉眼可感知的失真区域\n* 60质量的JPEG格式图片与质量大于60的相比,肉眼已看不出明显的区别,因此保存 JPEG 图的时候,质量一般控制在60,若保真度要求高的图片可适量提高到 80,图片大小控制在 200KB 以内\n\n### 图片引入\n\n测试内容图应该写上表明图片尺寸的占位图,可以用线上占位图生成服务,如:\n\n```\nhttp://placeholder.qiniudn.com/300x200\n```\n\n![image](http://placeholder.qiniudn.com/300x200)\n\n\n\nHTML 中图片引入不需添加 width、height 属性,alt 属性应该写上\n\n*推荐:*\n\n```\n\"\"\n```\n\n*不推荐:*\n\n```\n\n```\n\nCSS 中图片引入不需要引号\n\n```\n.jdc {\n background-image: url(icon.png);\n}\n```\n\n### CSS Sprites VS Data URIs\n\n#### CSS Sprites特点\n\n* 减少请求数\n* 加速图片的显示\n* 维护更新成本大\n* 更多的内存消耗,特别是大体积或有过多空白的 Sprites 图 \n* 图片渗漏,相邻的不需展示的图片有可能出现在展示元素中,特别是在高清设备移动设备上\n\n#### Data URIs(base64编码)\n\n* 减少请求数\n* 转换文件体积大,大约比原始的二进制大33%\n* IE6 / IE7 不支持\n* 图片显示相对较慢,需要更多的CPU消耗\n\n\n\n更多关于 CSS Sprites 和 Data URIs 可以阅读:\n\n[《When to Base64 Encode Images (and When Not To)》](http://davidbcalhoun.com/2011/when-to-base64-encode-images-and-when-not-to/)\n\n[《Data URI 最佳实践》](http://madscript.com/html5/datauri-best-practice/)\n\n[《Data URI&MHTML: 用还是不用?》](http://www.99css.com/492/)\n\n[CSS Sprites vs. Data URIs: Which is Faster on Mobile?](http://www.mobify.com/blog/css-sprites-vs-data-uris-which-is-faster-on-mobile/)\n\n#### 团队约定\n\n##### CSS Sprites 使用建议\n\n* 适合使用频率高更新频率低的小图标\n* 尽量不留太多的空白\n* 体积较大的图片不合并\n* 确保要合并的小图坐标数值和合并后的 Sprites 图尺寸均为偶数\n\n\n##### Data URIs(base64编码)使用建议\n\n* 合适更新频率高的小图片,如某些具备自定义功能的标题icon等\n* 转换成 Base64 编码的图片应小于 2KB\n* 移动端不使用 Base64 编码 \n* 要兼容 IE6/IE7 的不使用\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-02T07:00:58.000Z","path":"docs/image/jdc_fd_guide_image.html","title":"","comments":1,"layout":"page","_id":"cihvwnkmx000c1xfyh9lnuwav"},{"title":"图片引入","_content":"\n## 图片引入\n\n测试内容图应该写上表明图片尺寸的占位图,可以用线上占位图生成服务,如:\n\n```html\nhttp://placeholder.qiniudn.com/300x200\n```\n\n![image](http://placeholder.qiniudn.com/300x200)\n\n\n\nHTML 中图片引入不需添加 width、height 属性,alt 属性应该写上\n\n*推荐:*\n\n```html\n\"\"\n```\n\n*不推荐:*\n\n```html\n\n```\n\nCSS 中图片引入不需要引号\n\n```css\n.jdc {\n background-image: url(icon.png);\n}\n```\n\n### CSS Sprites VS Data URIs\n\n#### CSS Sprites特点\n\n* 减少请求数\n* 加速图片的显示\n* 维护更新成本大\n* 更多的内存消耗,特别是大体积或有过多空白的 Sprites 图 \n* 图片渗漏,相邻的不需展示的图片有可能出现在展示元素中,特别是在高清设备移动设备上\n\n#### Data URIs(base64编码)\n\n* 减少请求数\n* 转换文件体积大,大约比原始的二进制大33%\n* IE6 / IE7 不支持\n* 图片显示相对较慢,需要更多的CPU消耗\n\n\n\n更多关于 CSS Sprites 和 Data URIs 可以阅读:\n\n[《When to Base64 Encode Images (and When Not To)》](http://davidbcalhoun.com/2011/when-to-base64-encode-images-and-when-not-to/)\n\n[《Data URI 最佳实践》](http://madscript.com/html5/datauri-best-practice/)\n\n[《Data URI&MHTML: 用还是不用?》](http://www.99css.com/492/)\n\n[CSS Sprites vs. Data URIs: Which is Faster on Mobile?](http://www.mobify.com/blog/css-sprites-vs-data-uris-which-is-faster-on-mobile/)\n\n## 团队约定\n\n### CSS Sprites 使用建议\n\n* 适合使用频率高更新频率低的小图标\n* 尽量不留太多的空白\n* 体积较大的图片不合并\n* 确保要合并的小图坐标数值和合并后的 Sprites 图尺寸均为偶数\n\n\n### Data URIs(base64编码)使用建议\n\n* 合适更新频率高的小图片,如某些具备自定义功能的标题icon等\n* 转换成 Base64 编码的图片应小于 2KB\n* 移动端不使用 Base64 编码 \n* 要兼容 IE6/IE7 的不使用\n","source":"docs/image/import.md","raw":"title: 图片引入\n---\n\n## 图片引入\n\n测试内容图应该写上表明图片尺寸的占位图,可以用线上占位图生成服务,如:\n\n```html\nhttp://placeholder.qiniudn.com/300x200\n```\n\n![image](http://placeholder.qiniudn.com/300x200)\n\n\n\nHTML 中图片引入不需添加 width、height 属性,alt 属性应该写上\n\n*推荐:*\n\n```html\n\"\"\n```\n\n*不推荐:*\n\n```html\n\n```\n\nCSS 中图片引入不需要引号\n\n```css\n.jdc {\n background-image: url(icon.png);\n}\n```\n\n### CSS Sprites VS Data URIs\n\n#### CSS Sprites特点\n\n* 减少请求数\n* 加速图片的显示\n* 维护更新成本大\n* 更多的内存消耗,特别是大体积或有过多空白的 Sprites 图 \n* 图片渗漏,相邻的不需展示的图片有可能出现在展示元素中,特别是在高清设备移动设备上\n\n#### Data URIs(base64编码)\n\n* 减少请求数\n* 转换文件体积大,大约比原始的二进制大33%\n* IE6 / IE7 不支持\n* 图片显示相对较慢,需要更多的CPU消耗\n\n\n\n更多关于 CSS Sprites 和 Data URIs 可以阅读:\n\n[《When to Base64 Encode Images (and When Not To)》](http://davidbcalhoun.com/2011/when-to-base64-encode-images-and-when-not-to/)\n\n[《Data URI 最佳实践》](http://madscript.com/html5/datauri-best-practice/)\n\n[《Data URI&MHTML: 用还是不用?》](http://www.99css.com/492/)\n\n[CSS Sprites vs. Data URIs: Which is Faster on Mobile?](http://www.mobify.com/blog/css-sprites-vs-data-uris-which-is-faster-on-mobile/)\n\n## 团队约定\n\n### CSS Sprites 使用建议\n\n* 适合使用频率高更新频率低的小图标\n* 尽量不留太多的空白\n* 体积较大的图片不合并\n* 确保要合并的小图坐标数值和合并后的 Sprites 图尺寸均为偶数\n\n\n### Data URIs(base64编码)使用建议\n\n* 合适更新频率高的小图片,如某些具备自定义功能的标题icon等\n* 转换成 Base64 编码的图片应小于 2KB\n* 移动端不使用 Base64 编码 \n* 要兼容 IE6/IE7 的不使用\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-02T09:23:17.000Z","path":"docs/image/import.html","comments":1,"layout":"page","_id":"cihvwnkmz000d1xfyays6djin"},{"title":"图片格式","_content":"\n## 图片格式\n\n常见的图片格式有 GIF、PNG8、PNG24、JPEG、WEBP,根据图片格式的特性和场景需要选取适合的图片格式。\n\n### GIF \n\n> GIF图象是基于颜色列表的(存储的数据是该点的颜色对应于颜色列表的索引值),最多只支持8位(256色)。GIF文件内部分成许多存储块,用来存储多幅图象或者是决定图象表现行为的控制块,用以实现动画和交互式应用。GIF文件还通过LZW压缩算法压缩图象数据来减少图象尺寸\n\n#### 特性\n\n* 优秀的压缩算法使其在一定程度上保证图像质量的同时将体积变得很小。\n* 可插入多帧,从而实现动画效果。\n* 可设置透明色以产生对象浮现于背景之上的效果。\n* 由于采用了8位压缩,最多只能处理256种颜色,故不宜应用于真彩色图片。\n\n更多关于GIF:\n\n[维基百科 - GIF](https://zh.wikipedia.org/wiki/GIF)\n\n[GIF文档](http://dev.gameres.com/Program/Visual/Other/GIFDoc.htm)\n\n### PNG\n\n> PNG是20世纪90年代中期开始开发的图像文件存储格式,其目的是企图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。流式网络图形格式(Portable Network Graphic Format,PNG)名称来源于非官方的“PNG's Not GIF”,是一种位图文件(bitmap file)存储格式,读成“ping”。PNG用来存储灰度图像时,灰度图像的深度可多到16位,存储彩色图像时,彩色图像的深度可多到48位,并且还可存储多到16位的α通道数据。PNG使用从LZ77派生的无损数据压缩算法。\n\n#### 特性\n\n* 支持256色调色板技术,文件体积小。\n* 无损压缩\n* 最高支持48位真彩色图像以及16位灰度图像。\n* 支持Alpha通道的透明/半透明特性。\n* 支持图像亮度的Gamma校准信息。\n* 支持存储附加文本信息,以保留图像名称、作者、版权、创作时间、注释等信息。\n* 渐近显示和流式读写,适合在网络传输中快速显示预览效果后再展示全貌。\n* 使用CRC防止文件出错。\n* 最新的PNG标准允许在一个文件内存储多幅图像。\n\n更多关于PNG:\n\n[PNG官方站 - PNG General Information](http://www.libpng.org/pub/png/)\n\n[PNG格式](http://dev.gameres.com/Program/Visual/Other/PNGFormat.htm)\n\n[维基百科 - PNG](https://zh.wikipedia.org/wiki/PNG)\n\n### JPEG\n\n> JPEG是一种针对照片视频而广泛使用的一种有损压缩标准方法。这个名称代表Joint Photographic Experts Group(联合图像专家小组)。此团队创立于公元1986年,1992年发布了JPEG的标准而在1994年获得了ISO 10918-1的认定\n\n#### 特性\n\n* 适用于储存24位元全采影像\n* 采取的压缩方式通常为有损压缩\n* 不支持透明或动画\n* 压缩比越高影像耗损越大,失真越严重\n* 压缩比在10左右肉眼无法\b辨出压缩图与原图的差别\n\n更多关于JPEG:\n\n[维基百科 - JPEG](https://zh.wikipedia.org/wiki/JPEG)\n\n### WEBP\n\n> WebP,是一种同时提供了有损压缩与无损压缩的图片文件格式,派生自视频编码格式 VP8,是由Google在购买On2 Technologies后发展出来。WebP最初在2010年发布,2011年11月8日,Google开始让WebP支持无损压缩和透明色的功能,而在2012年8月16日的参考实做libwebp 0.2.0中正式支持\n\n#### 特性\n\n* 同时提供有损压缩和无损压缩两种图片文件格式\n* 文件体积小,无损压缩后,比 PNG 文件少了 45% 的文件大小;有损压缩后,比 JPEG 文件少了 25% - 34% 文件大小\n* 浏览器兼容差,目前只支持客户端 Chrome 和 Opera 浏览器以及安卓原生浏览器(Andriod 4.0+),[WebP兼容性](https://developers.google.com/speed/webp/faq#which_web_browsers_natively_support_webp)\n\n更多关于WebP:\n\n[维基百科 - WEBP](https://zh.wikipedia.org/wiki/WebP)\n\n[WEBP探寻之路](http://isux.tencent.com/introduction-of-webp.html)\n\n\n\n## 团队约定 \n\n### 内容图\n\n内容图多以商品图等照片类图片形式存在,颜色较为丰富,文件体积较大\n\n* 优先考虑 JPEG 格式,条件允许的话优先考虑 WebP 格式\n* 尽量不使用PNG格式,PNG8 色位太低,PNG24 压缩率低,文件体积大\n\n### 背景图\n\n背景图多为图标等颜色比较简单、文件体积不大、起修饰作用的图片\n\n* PNG 与 GIF 格式,优先考虑使用 PNG 格式,PNG格式允许更多的颜色并提供更好的压缩率\n* 图像颜色比较简单的,如纯色块线条图标,优先考虑使用 PNG8 格式,避免不使用 JPEG 格式\n* 图像颜色丰富而且图片文件不太大的(40KB 以下)或有半透明效果的优先考虑 PNG24 格式\n* 图像颜色丰富而且文件比较大的(40KB - 200KB)优先考虑 JPEG 格式\n* 条件允许的,优先考虑 WebP 代替 PNG 和 JPEG 格式","source":"docs/image/format.md","raw":"title: 图片格式\n---\n\n## 图片格式\n\n常见的图片格式有 GIF、PNG8、PNG24、JPEG、WEBP,根据图片格式的特性和场景需要选取适合的图片格式。\n\n### GIF \n\n> GIF图象是基于颜色列表的(存储的数据是该点的颜色对应于颜色列表的索引值),最多只支持8位(256色)。GIF文件内部分成许多存储块,用来存储多幅图象或者是决定图象表现行为的控制块,用以实现动画和交互式应用。GIF文件还通过LZW压缩算法压缩图象数据来减少图象尺寸\n\n#### 特性\n\n* 优秀的压缩算法使其在一定程度上保证图像质量的同时将体积变得很小。\n* 可插入多帧,从而实现动画效果。\n* 可设置透明色以产生对象浮现于背景之上的效果。\n* 由于采用了8位压缩,最多只能处理256种颜色,故不宜应用于真彩色图片。\n\n更多关于GIF:\n\n[维基百科 - GIF](https://zh.wikipedia.org/wiki/GIF)\n\n[GIF文档](http://dev.gameres.com/Program/Visual/Other/GIFDoc.htm)\n\n### PNG\n\n> PNG是20世纪90年代中期开始开发的图像文件存储格式,其目的是企图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。流式网络图形格式(Portable Network Graphic Format,PNG)名称来源于非官方的“PNG's Not GIF”,是一种位图文件(bitmap file)存储格式,读成“ping”。PNG用来存储灰度图像时,灰度图像的深度可多到16位,存储彩色图像时,彩色图像的深度可多到48位,并且还可存储多到16位的α通道数据。PNG使用从LZ77派生的无损数据压缩算法。\n\n#### 特性\n\n* 支持256色调色板技术,文件体积小。\n* 无损压缩\n* 最高支持48位真彩色图像以及16位灰度图像。\n* 支持Alpha通道的透明/半透明特性。\n* 支持图像亮度的Gamma校准信息。\n* 支持存储附加文本信息,以保留图像名称、作者、版权、创作时间、注释等信息。\n* 渐近显示和流式读写,适合在网络传输中快速显示预览效果后再展示全貌。\n* 使用CRC防止文件出错。\n* 最新的PNG标准允许在一个文件内存储多幅图像。\n\n更多关于PNG:\n\n[PNG官方站 - PNG General Information](http://www.libpng.org/pub/png/)\n\n[PNG格式](http://dev.gameres.com/Program/Visual/Other/PNGFormat.htm)\n\n[维基百科 - PNG](https://zh.wikipedia.org/wiki/PNG)\n\n### JPEG\n\n> JPEG是一种针对照片视频而广泛使用的一种有损压缩标准方法。这个名称代表Joint Photographic Experts Group(联合图像专家小组)。此团队创立于公元1986年,1992年发布了JPEG的标准而在1994年获得了ISO 10918-1的认定\n\n#### 特性\n\n* 适用于储存24位元全采影像\n* 采取的压缩方式通常为有损压缩\n* 不支持透明或动画\n* 压缩比越高影像耗损越大,失真越严重\n* 压缩比在10左右肉眼无法\b辨出压缩图与原图的差别\n\n更多关于JPEG:\n\n[维基百科 - JPEG](https://zh.wikipedia.org/wiki/JPEG)\n\n### WEBP\n\n> WebP,是一种同时提供了有损压缩与无损压缩的图片文件格式,派生自视频编码格式 VP8,是由Google在购买On2 Technologies后发展出来。WebP最初在2010年发布,2011年11月8日,Google开始让WebP支持无损压缩和透明色的功能,而在2012年8月16日的参考实做libwebp 0.2.0中正式支持\n\n#### 特性\n\n* 同时提供有损压缩和无损压缩两种图片文件格式\n* 文件体积小,无损压缩后,比 PNG 文件少了 45% 的文件大小;有损压缩后,比 JPEG 文件少了 25% - 34% 文件大小\n* 浏览器兼容差,目前只支持客户端 Chrome 和 Opera 浏览器以及安卓原生浏览器(Andriod 4.0+),[WebP兼容性](https://developers.google.com/speed/webp/faq#which_web_browsers_natively_support_webp)\n\n更多关于WebP:\n\n[维基百科 - WEBP](https://zh.wikipedia.org/wiki/WebP)\n\n[WEBP探寻之路](http://isux.tencent.com/introduction-of-webp.html)\n\n\n\n## 团队约定 \n\n### 内容图\n\n内容图多以商品图等照片类图片形式存在,颜色较为丰富,文件体积较大\n\n* 优先考虑 JPEG 格式,条件允许的话优先考虑 WebP 格式\n* 尽量不使用PNG格式,PNG8 色位太低,PNG24 压缩率低,文件体积大\n\n### 背景图\n\n背景图多为图标等颜色比较简单、文件体积不大、起修饰作用的图片\n\n* PNG 与 GIF 格式,优先考虑使用 PNG 格式,PNG格式允许更多的颜色并提供更好的压缩率\n* 图像颜色比较简单的,如纯色块线条图标,优先考虑使用 PNG8 格式,避免不使用 JPEG 格式\n* 图像颜色丰富而且图片文件不太大的(40KB 以下)或有半透明效果的优先考虑 PNG24 格式\n* 图像颜色丰富而且文件比较大的(40KB - 200KB)优先考虑 JPEG 格式\n* 条件允许的,优先考虑 WebP 代替 PNG 和 JPEG 格式","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-03T06:51:20.000Z","path":"docs/image/format.html","comments":1,"layout":"page","_id":"cihvwnkn1000e1xfy8qftg3s7"},{"title":"WebApp Meta","_content":"\n## WebApp Meta 标签设置(iOS)\n\n> A web application is designed to look and behave in a way similar to a native application—for example, it is scaled to fit the entire screen on iOS. You can tailor your web application for Safari on iOS even further, by making it appear like a native application when the user adds it to the Home screen. You do this by using settings for iOS that are ignored by other platforms.\n\nWebApp目的在于使其界面和行为在某种程度上类似于原生APP应用。例如,WebApp 可以在 iOS 设备上通过缩放去适配设备屏幕。当用户将WebApp程序添加到主屏幕后,会使得它看上去像原生APP一样,以此,你可以进一步为 Safari 定制自己的 WebApp,而使用某些专为 iOS 平台设定的设置就可以做到。\n\nWebApp可以通过设置 meta 标签来改变页面的一些表现,有些 meta 设置在 Safari 应用或原生 App 的内嵌网页中都可以生效,而有些设置侧需要将应用添加到主屏幕的时候才会生效。\n\n\n### Viewport Meta Tag\n\n#### 通用类设置\n```html\n\n```\t\n* width -- viewport的宽度\n* height -- viewport的高度\n* initial-scale -- 初始的缩放比例\n* minimum-scale -- 允许用户缩放到的最小比例\n* maximum-scale -- 允许用户缩放到的最大比例\n* user-scalable -- 是否允许用户缩放\n\n#### Safari on iOS viewport\n\n> The width of the viewport in pixels. The default is 980. The range is from 200 to 10,000.\n> \n> The minimum-scale and maximum-scale properties also affect the behavior when changing orientations. The range of these property values is from >0 to 10.0. The default value for minimum-scale is 0.25 and maximum-scale is 5.0\n\n> user-scalable -- The default is yes.\nSetting user-scalable to no also prevents a webpage from scrolling when entering text in an input field.\n\n\n* 默认宽度是 980px,范围从 200px 到 10000px\n* initial-scale 缩放比例范围值是 从 >0 到 10 之间\n* minimum-scale 默认值是 0.25\n* maximum-scale 默认值是 5\n* user-scalable -- 默认值是 yes,设置 no 还可以在文本框输入文本的时候阻止页面滚动\n\n\t\n更多关于 Safari on iOS viewport 的设置:\n\n[Configuring the Viewport](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html#//apple_ref/doc/uid/TP40006509-SW19)\n[Safari HTML Reference](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html)\n\n\n\n### Apple-Specific Meta Tag Keys\n\n#### apple-mobile-web-app-capable\n\n设置 WebApp 是否进入全屏模式,该设置需要添加到主屏幕才生效\n\n\t\n\n> If content is set to yes, the web application runs in full-screen mode;otherwise, it does not. The default behavior is to use Safari to display web content.You can determine whether a webpage is displayed in full-screen mode using the window.navigator.standalone read-only Boolean JavaScript property.\n\n* content设置 yes 进入全屏模式\n* 默认会启动 Safari 应用,使用 Safari 应用浏览\n* 通过检测 window.navigator.standalone 的 Boolean 值可以判断 web 应用是否处于全屏模式\n\n#### apple-mobile-web-app-status-bar-style\n\n为 webapp 设置状态栏样式\n\n\t\n\t\n> This meta tag has no effect unless you first specify full-screen mode as described in apple-apple-mobile-web-app-capable.\n> \nIf content is set to default, the status bar appears normal. If set to black, the status bar has a black background. If set to black-translucent, the status bar is black and translucent. If set to default or black, the web content is displayed below the status bar. If set to black-translucent, the web content is displayed on the entire screen, partially obscured by the status bar. The default value is default.\n\n* 此 meta 设置只在全屏模式生效\n* 默认值是 default\n* content=\"black\",状态栏背景黑色,网页内容在状态栏下面\n* content=\"black-translucent\",状态栏半透明,背景黑色,网页内容占满全屏\n\n*该设置在 iOS6 和 iOS7 表现还可以,但到了 iOS8 后会出现各种问题,而且在 iOS9 中并没有生效。参阅:[iOS 8: web app status bar position and resizing problems](http://stackoverflow.com/questions/25884806/ios-8-web-app-status-bar-position-and-resizing-problems)*\n\n#### format-detection\n\n自动识别页面中有可能是电话格式的数字 \n\n\t\n\n> By default, Safari on iOS detects any string formatted like a phone number and makes it a link that calls the number. Specifying telephone=no disables this feature.\n\niOS中的 Safari 会默认识别与电话格式相似的数字并生成一个可以拉起电话应用并将该数字作为电话号码拨打的链接。定义 telephone=no 可以屏蔽该功能\n\n更多 WebApp 设置参考 [Configuring Web Applications](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html#//apple_ref/doc/uid/TP40002051-CH3-SW4)","source":"docs/html/webapp.md","raw":"title: WebApp Meta\n---\n\n## WebApp Meta 标签设置(iOS)\n\n> A web application is designed to look and behave in a way similar to a native application—for example, it is scaled to fit the entire screen on iOS. You can tailor your web application for Safari on iOS even further, by making it appear like a native application when the user adds it to the Home screen. You do this by using settings for iOS that are ignored by other platforms.\n\nWebApp目的在于使其界面和行为在某种程度上类似于原生APP应用。例如,WebApp 可以在 iOS 设备上通过缩放去适配设备屏幕。当用户将WebApp程序添加到主屏幕后,会使得它看上去像原生APP一样,以此,你可以进一步为 Safari 定制自己的 WebApp,而使用某些专为 iOS 平台设定的设置就可以做到。\n\nWebApp可以通过设置 meta 标签来改变页面的一些表现,有些 meta 设置在 Safari 应用或原生 App 的内嵌网页中都可以生效,而有些设置侧需要将应用添加到主屏幕的时候才会生效。\n\n\n### Viewport Meta Tag\n\n#### 通用类设置\n```html\n\n```\t\n* width -- viewport的宽度\n* height -- viewport的高度\n* initial-scale -- 初始的缩放比例\n* minimum-scale -- 允许用户缩放到的最小比例\n* maximum-scale -- 允许用户缩放到的最大比例\n* user-scalable -- 是否允许用户缩放\n\n#### Safari on iOS viewport\n\n> The width of the viewport in pixels. The default is 980. The range is from 200 to 10,000.\n> \n> The minimum-scale and maximum-scale properties also affect the behavior when changing orientations. The range of these property values is from >0 to 10.0. The default value for minimum-scale is 0.25 and maximum-scale is 5.0\n\n> user-scalable -- The default is yes.\nSetting user-scalable to no also prevents a webpage from scrolling when entering text in an input field.\n\n\n* 默认宽度是 980px,范围从 200px 到 10000px\n* initial-scale 缩放比例范围值是 从 >0 到 10 之间\n* minimum-scale 默认值是 0.25\n* maximum-scale 默认值是 5\n* user-scalable -- 默认值是 yes,设置 no 还可以在文本框输入文本的时候阻止页面滚动\n\n\t\n更多关于 Safari on iOS viewport 的设置:\n\n[Configuring the Viewport](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html#//apple_ref/doc/uid/TP40006509-SW19)\n[Safari HTML Reference](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html)\n\n\n\n### Apple-Specific Meta Tag Keys\n\n#### apple-mobile-web-app-capable\n\n设置 WebApp 是否进入全屏模式,该设置需要添加到主屏幕才生效\n\n\t\n\n> If content is set to yes, the web application runs in full-screen mode;otherwise, it does not. The default behavior is to use Safari to display web content.You can determine whether a webpage is displayed in full-screen mode using the window.navigator.standalone read-only Boolean JavaScript property.\n\n* content设置 yes 进入全屏模式\n* 默认会启动 Safari 应用,使用 Safari 应用浏览\n* 通过检测 window.navigator.standalone 的 Boolean 值可以判断 web 应用是否处于全屏模式\n\n#### apple-mobile-web-app-status-bar-style\n\n为 webapp 设置状态栏样式\n\n\t\n\t\n> This meta tag has no effect unless you first specify full-screen mode as described in apple-apple-mobile-web-app-capable.\n> \nIf content is set to default, the status bar appears normal. If set to black, the status bar has a black background. If set to black-translucent, the status bar is black and translucent. If set to default or black, the web content is displayed below the status bar. If set to black-translucent, the web content is displayed on the entire screen, partially obscured by the status bar. The default value is default.\n\n* 此 meta 设置只在全屏模式生效\n* 默认值是 default\n* content=\"black\",状态栏背景黑色,网页内容在状态栏下面\n* content=\"black-translucent\",状态栏半透明,背景黑色,网页内容占满全屏\n\n*该设置在 iOS6 和 iOS7 表现还可以,但到了 iOS8 后会出现各种问题,而且在 iOS9 中并没有生效。参阅:[iOS 8: web app status bar position and resizing problems](http://stackoverflow.com/questions/25884806/ios-8-web-app-status-bar-position-and-resizing-problems)*\n\n#### format-detection\n\n自动识别页面中有可能是电话格式的数字 \n\n\t\n\n> By default, Safari on iOS detects any string formatted like a phone number and makes it a link that calls the number. Specifying telephone=no disables this feature.\n\niOS中的 Safari 会默认识别与电话格式相似的数字并生成一个可以拉起电话应用并将该数字作为电话号码拨打的链接。定义 telephone=no 可以屏蔽该功能\n\n更多 WebApp 设置参考 [Configuring Web Applications](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html#//apple_ref/doc/uid/TP40002051-CH3-SW4)","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-03T06:32:09.000Z","path":"docs/html/webapp.html","comments":1,"layout":"page","_id":"cihvwnkn3000f1xfyx008ftso"},{"title":"文件模版","_content":"\nHTML模版指的是团队使用的初始化HTML文件,里面会根据不同平台而采用不一样的设置,一般主要不同的设置就是 mata 标签的设置,以下是 PC 和移动端的 HTML 模版\n\n## HTML5最简结构标准模版\n\t\n\t\n\t\n\t\n\tHTML5最简结构标准模版\n\t \n\t\n\t\n\t\n\t \n\t\n## 团队约定\n\n### 移动端\n```html\n\n\n\n\n\n\n移动端HTML模版\n\t\n\n\n \n\n\n\n\n\n \n\n\n\n\n\n\n\n \n\n\n\n\n```\n\n### PC端\n```html\n\n\n\n\n\n\n\n\n\n\nPC端HTML模版\n\n \n\n \n\n\n\n\n\n \n\n\n\n\n\n\n\n \n\n\n\n\n```","source":"docs/html/template.md","raw":"title: 文件模版\n---\n\nHTML模版指的是团队使用的初始化HTML文件,里面会根据不同平台而采用不一样的设置,一般主要不同的设置就是 mata 标签的设置,以下是 PC 和移动端的 HTML 模版\n\n## HTML5最简结构标准模版\n\t\n\t\n\t\n\t\n\tHTML5最简结构标准模版\n\t \n\t\n\t\n\t\n\t \n\t\n## 团队约定\n\n### 移动端\n```html\n\n\n\n\n\n\n移动端HTML模版\n\t\n\n\n \n\n\n\n\n\n \n\n\n\n\n\n\n\n \n\n\n\n\n```\n\n### PC端\n```html\n\n\n\n\n\n\n\n\n\n\nPC端HTML模版\n\n \n\n \n\n\n\n\n\n \n\n\n\n\n\n\n\n \n\n\n\n\n```","date":"2015-12-16T07:16:44.000Z","updated":"2015-12-16T07:16:44.000Z","path":"docs/html/template.html","_id":"cihvwnkn5000g1xfy62fbryqv","comments":1,"layout":"page"},{"title":"注释规范","_content":"## 遵循标准\n\nHTML注释规范写法应该遵循以下标准:\n\n> Comments must start with the four character sequence U+003C LESS-THAN SIGN, U+0021 EXCLAMATION MARK, U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS (<!--). Following this sequence, the comment may have text, with the additional restriction that the text must not start with a single \">\" (U+003E) character, nor start with a U+002D HYPHEN-MINUS character (-) followed by a \">\" (U+003E) character, nor contain two consecutive U+002D HYPHEN-MINUS characters (--), nor end with a U+002D HYPHEN-MINUS character (-). Finally, the comment must be ended by the three character sequence U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN (-->).\n\n* 必须以4个有序字符开始:编码为 U+003C LESS-THAN SIGN 的小于号, 编码为 U+0021 EXCLAMATION MARK 的感叹号, 编码为 U+002D HYPHEN-MINUS 横线, 编码为 U+002D HYPHEN-MINUS横线 ,即 “<!--”\n* 在此之后是注释内容,注释的内容有以下限制:\n\t* 不能以单个 \">\" (U+003E) 字符开始\n\t* 不能以由 “-“(U+002D HYPHEN-MINUS)和 ”>” (U+003E) 组合的字符开始,即 “->”\n\t* 不能包含两个连续的 U+002D HYPHEN-MINUS 字符,即 “--”\n\t* 不能以一个 U+002D HYPHEN-MINUS 字符结束,即 “-”\n* 必须以3个有序字符结束:U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN,即 “-->”\n\n标准写法:\n\n\t\n\t\n错误的写法:\n\n\tThe Wrong Comment Text-->\n\n\tThe Wrong Comment Text-->\n\n\t\n\n\t\n\t\n参考 www.w3.org [#Comments](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#comments) \n\n\t\n## 团队约定\n\n### 单行注释 \n\n一般用于简单的描述,如某些状态描述、属性描述等\n\n注释内容前后各一个空格字符,注释位于要注释代码的上面,单独占一行\n\n*推荐:*\n\n\t\n\t
...
\n\t\n*不推荐:*\n\t\n\t
...
\t\n\t\n\t
\n\t...\n\t
\n\n### 模块注释\n\n一般用于描述模块的名称以及模块开始与结束的位置\n\n注释内容前后各一个空格字符,`` 表示模块开始,`` 表示模块结束,模块与模块之间相隔一行\n\n*推荐写法:*\n\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n*不推荐写法:*\n\n\t\n\t
\n\t\t...\n\t
\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n### 嵌套模块注释\n\n当模块注释内再出现模块注释的时候,为了突出主要模块,嵌套模块不再使用 \n\n\t\n\t\n\t\n而改用 \n\n\t\n\n注释写在模块结尾标签底部,单独一行。\n\n\t\n\t
\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t
\n\t","source":"docs/html/note.md","raw":"title: 注释规范\n---\n## 遵循标准\n\nHTML注释规范写法应该遵循以下标准:\n\n> Comments must start with the four character sequence U+003C LESS-THAN SIGN, U+0021 EXCLAMATION MARK, U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS (<!--). Following this sequence, the comment may have text, with the additional restriction that the text must not start with a single \">\" (U+003E) character, nor start with a U+002D HYPHEN-MINUS character (-) followed by a \">\" (U+003E) character, nor contain two consecutive U+002D HYPHEN-MINUS characters (--), nor end with a U+002D HYPHEN-MINUS character (-). Finally, the comment must be ended by the three character sequence U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN (-->).\n\n* 必须以4个有序字符开始:编码为 U+003C LESS-THAN SIGN 的小于号, 编码为 U+0021 EXCLAMATION MARK 的感叹号, 编码为 U+002D HYPHEN-MINUS 横线, 编码为 U+002D HYPHEN-MINUS横线 ,即 “<!--”\n* 在此之后是注释内容,注释的内容有以下限制:\n\t* 不能以单个 \">\" (U+003E) 字符开始\n\t* 不能以由 “-“(U+002D HYPHEN-MINUS)和 ”>” (U+003E) 组合的字符开始,即 “->”\n\t* 不能包含两个连续的 U+002D HYPHEN-MINUS 字符,即 “--”\n\t* 不能以一个 U+002D HYPHEN-MINUS 字符结束,即 “-”\n* 必须以3个有序字符结束:U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN,即 “-->”\n\n标准写法:\n\n\t\n\t\n错误的写法:\n\n\tThe Wrong Comment Text-->\n\n\tThe Wrong Comment Text-->\n\n\t\n\n\t\n\t\n参考 www.w3.org [#Comments](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#comments) \n\n\t\n## 团队约定\n\n### 单行注释 \n\n一般用于简单的描述,如某些状态描述、属性描述等\n\n注释内容前后各一个空格字符,注释位于要注释代码的上面,单独占一行\n\n*推荐:*\n\n\t\n\t
...
\n\t\n*不推荐:*\n\t\n\t
...
\t\n\t\n\t
\n\t...\n\t
\n\n### 模块注释\n\n一般用于描述模块的名称以及模块开始与结束的位置\n\n注释内容前后各一个空格字符,`` 表示模块开始,`` 表示模块结束,模块与模块之间相隔一行\n\n*推荐写法:*\n\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n*不推荐写法:*\n\n\t\n\t
\n\t\t...\n\t
\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n### 嵌套模块注释\n\n当模块注释内再出现模块注释的时候,为了突出主要模块,嵌套模块不再使用 \n\n\t\n\t\n\t\n而改用 \n\n\t\n\n注释写在模块结尾标签底部,单独一行。\n\n\t\n\t
\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t
\n\t","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-02T03:37:24.000Z","path":"docs/html/note.html","comments":1,"layout":"page","_id":"cihvwnkn6000h1xfyxayly047"},{"_content":"# 前端开发编码规范\n\n基于 [W3C](http://www.w3.org/)、[苹果开发者](https://developer.apple.com/) 等官方文档,并结合团队日常业务需求以及团队在日常开发过程中总结提炼出的经验而约定。\n\n旨在增强团队开发协作、提高代码质量和打造开发基石的编码规范,是团队代码基本约定的内容,必须严格遵循。\n\n## HTML规范\n\n###代码规范\n\n#### DOCTYPE 声明\n\n一个DOCTYPE必须包含以下部分,并严格按照顺序出现:\n\n> 1. A string that is an ASCII case-insensitive match for the string \" 2. One or more space characters.\n> 3. A string that is an ASCII case-insensitive match for the string \"html\".\n> 4. Optionally, a DOCTYPE legacy string or an obsolete permitted DOCTYPE string (defined below).\n> 5. Zero or more space characters.\n> 6. A \">\" (U+003E) character.\n\n1. 一个ASCII字符串 \"\n\n##### 更多关于 DOCTYPE声明\n[#The DOCTYPE](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#the-doctype)\n\n\n#### 页面语言LANG\n\nLang属性的取值应该遵循互联网工程任务组--IETF(The Internet Engineering Task Force)制定的关于语言标签的文档 [BCP 47 - Tags for Identifying Languages](http://tools.ietf.org/html/bcp47)\n\n##### 团队约定\n\n推荐使用属性值 `cmn-Hans-CN`(简体, 中国大陆),但是考虑浏览器和操作系统的兼容性,目前仍然使用 `zh-CN` 属性值\n\n\t\n\t\n更多地区语言参考:\n\n\tzh-SG 中文 (简体, 新加坡) 对应 cmn-Hans-SG 普通话 (简体, 新加坡)\n\tzh-HK 中文 (繁体, 香港) 对应 cmn-Hant-HK 普通话 (繁体, 香港)\n\tzh-MO 中文 (繁体, 澳门) 对应 cmn-Hant-MO 普通话 (繁体, 澳门)\n\tzh-TW 中文 (繁体, 台湾) 对应 cmn-Hant-TW 普通话 (繁体, 台湾)\n\t\n\t\n##### 已废弃不推荐使用的 Languages Tags\n\n以下写法已于 2009 年废弃,请勿使用(cmn、wuu、yue、gan 等已由 2005 年的 extlang 升级到 2009 年的 language):\n\n\tzh-cmn, zh-cmn-Hans, zh-cmn-Hant, zh-wuu, zh-yue, zh-gan\n\t\n以下写法已于 2009 年废弃,不推荐使用:\n\n\tzh-Hans, zh-Hans-CN, zh-Hans-SG, zh-Hans-HK, zh-Hans-MO, zh-Hans-TW, \n\tzh-Hant, zh-Hant-CN, zh-Hant-SG, zh-Hant-HK, zh-Hant-MO, zh-Hant-TW\n\n更多已废弃 Languages Tags 参考 [IANA Language Subtag Registry](http://www.iana.org/assignments/language-subtag-registry/language-subtag-registry) 里面的 “Type: redundant“”\n\n##### 更多关于 Languages Tags :\n\n[W3C Language tags in HTML and XML](http://www.w3.org/International/articles/language-tags/)\n\n\n[网页头部的声明应该是用 lang=\"zh\" 还是 lang=\"zh-cn\"?](http://www.zhihu.com/question/20797118?utm_source=weibo&utm_medium=weibo_share&utm_content=share_question&utm_campaign=share_sidebar)\n\n\n\n#### CHARSET\n\n> Because the character sets in ISO-8859 was limited in size, and not compatible in multilingual environments, the Unicode Consortium developed the Unicode Standard.\n> \n> The Unicode Standard covers (almost) all the characters, punctuations, and symbols in the world.\n> \n> Unicode enables processing, storage, and transport of text independent of platform and language.\n> \n> The default character encoding in HTML-5 is UTF-8.\n\n因为 ISO-8859 中字符集大小是有限的,且在多语言环境中不兼容,所以 Unicode 联盟开发了 Unicode 标准。\n\nUnicode 标准覆盖了(几乎)所有的字符、标点符号和符号。\n\nUnicode 使文本的处理、存储和运输,独立于平台和语言。\n\nHTML-5 中默认的字符编码是 UTF-8\n\n参阅 [HTML Unicode (UTF-8) Reference](http://www.w3schools.com/charsets/ref_html_utf8.asp)\n\n##### 团队约定\n\n一般情况下统一使用 “UTF-8” 编码\n\n\t\n\t\n由于历史原因,有些业务可能会使用 “GBK” 编码\n\t\n\t\n\n请尽量统一写成标准的 “UTF-8”,不要写成 “utf-8” 或 “utf8” 或 “UTF8”。根据 [IETF对UTF-8的定义](http://www.ietf.org/rfc/rfc3629),其编码标准的写法是 “UTF-8”;而 UTF8 或 utf8 的写法只是出现在某些编程系统中,如 .NET framework 的类 System.Text.Encoding 中的一个属性名就叫 UTF8。\n\n##### 更多关于 \n\nUTF-8写法: [UTF8 or UTF-8?](http://stackoverflow.com/questions/809620/utf8-or-utf-8) \n\nGBK:[Application of IANA Charset Registration for GBK](http://www.ietf.org/assignments/charset-reg/GBK)\n\nCharset :[character-encoding-declaration](http://www.w3.org/TR/html5/document-metadata.html#character-encoding-declaration) \n\n\n#### 元素及标签闭合\n\nHTML元素共有以下5种:\n \n* 空元素:area、base、br、col、command、embed、hr、img、input、keygen、link、meta、param、source、track、wbr\n* 原始文本元素:script、style\n* RCDATA元素:textarea、title\n* 外来元素:来自MathML命名空间和SVG命名空间的元素。\n* 常规元素:其他HTML允许的元素都称为常规元素。\n\n元素标签的闭合应遵循以下原则:\n\n> Tags are used to delimit the start and end of elements in the markup. Raw text, escapable raw text, and normal elements have a start tag to indicate where they begin, and an end tag to indicate where they end. The start and end tags of certain normal elements can be omitted, as described below in the section on optional tags. Those that cannot be omitted must not be omitted. Void elements only have a start tag; end tags must not be specified for void elements. Foreign elements must either have a start tag and an end tag, or a start tag that is marked as self-closing, in which case they must not have an end tag.\n\n* 原始文本元素、RCDATA元素以及常规元素都有一个开始标签来表示开始,一个结束标签来表示结束。\n* [某些元素的开始和结束标签是可以省略的](http://www.w3.org/TR/html5/syntax.html#optional-tags),如果规定标签不能被省略,那么就绝对不能省略它。\n* 空元素只有一个开始标签,且不能为空元素设置结束标签。\n* 外来元素可以有一个开始标签和配对的结束标签,或者只有一个自闭合的开始标签,且后者情况下该元素不能有结束标签。\n\n##### 团队约定\n\n为了能让浏览器更好的解析代码以及能让代码具有更好的可读性,有如下约定:\n\n* 所有具有开始标签和结束标签的元素都要写上起止标签,某些允许省略开始标签或和束标签的元素亦都要写上。\n* 空元素标签都不加 “/” 字符\n\n\n*推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始有终,浏览器能正确解析

\n\t
\n\t\n\t
\n\t\n*不推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始无终,浏览器亦能正确解析\n\t

\n\n\t
\n\n更多关于元素及标签关闭:[#Elements](http://www.w3.org/TR/html5/syntax.html#elements-0)\n\n#### 书写风格\n\n##### HTML代码大小写\n\nHTML标签名、类名、标签属性和大部分属性值统一用小写\n\n*推荐:*\n\n\t
\n\t\n*不推荐:*\n\n\t
\n\t\n\t
\n\nHTML文本、CDATA、JavaScript、meta标签某些属性等内容可大小写混合\n\t\n\t\n \n\n\t\n\t

I AM WHAT I AM

\n\n\t\n\t\n\t\n\t\n\t\n\t\n##### 类型属性\n\n不需要为 CSS、JS 指定类型属性,HTML5 中默认已包含\n\n*推荐:*\n\n\t\n\t\n\t\n*不推荐:*\n\n\t\n\t\n\t\n##### 元素属性\n\n* 元素属性值使用双引号语法\n* 元素属性值可以写上的都写上\n\n\n*推荐:*\n\n\t\n\t\n\t\n\t\n*不推荐:*\n\n\t\t\n\t\n\t\n\t\n\t\n\t\n更多关于元素属性:[#Attributes](http://www.w3.org/TR/html5/syntax.html#attributes-0)\n\n##### 特殊字符引用\n\n> In certain cases described in other sections, text may be mixed with character references. These can be used to escape characters that couldn't otherwise legally be included in text.\n\n文本可以和字符引用混合出现。这种方法可以用来转义在文本中不能合法出现的字符。\n\n\n在 HTML 中不能使用小于号 “<” 和大于号 “>”特殊字符,浏览器会将它们作为标签解析,若要正确显示,在 HTML 源代码中使用字符实体\n\n*推荐:*\n\n\tmore>>\n\n*不推荐:*\n\n\tmore>>\n\t\n更多关于符号引用:[#Character references](http://www.w3.org/TR/html5/syntax.html#character-references)\n\n##### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n\t
\n \t \n
\n\n##### 纯数字输入框\n\n使用 type=\"tel\" 而不是 type=\"number\"\n\t\n\t \n\n##### 代码嵌套\n\n元素嵌套规范,每个块状元素独立一行,内联元素可选\n\n*推荐:*\n\n\t
\n \t

\n \t

\n\t
\t\n\t

\n\t\n*不推荐:*\n\n\t
\n \t

\n\t
\t\n\t

\n\t\t\n\t\t\n\t

\n\t\n段落元素与标题元素只能嵌套内联元素\n\n*推荐:*\n\t\n\t

\n\t

\n\t\n*不推荐:*\n\n\t

\n\t

\n\t\t\t\t\n###注释规范\n\nHTML注释规范写法应该遵循以下标准:\n\n> Comments must start with the four character sequence U+003C LESS-THAN SIGN, U+0021 EXCLAMATION MARK, U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS (<!--). Following this sequence, the comment may have text, with the additional restriction that the text must not start with a single \">\" (U+003E) character, nor start with a U+002D HYPHEN-MINUS character (-) followed by a \">\" (U+003E) character, nor contain two consecutive U+002D HYPHEN-MINUS characters (--), nor end with a U+002D HYPHEN-MINUS character (-). Finally, the comment must be ended by the three character sequence U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN (-->).\n\n* 必须以4个有序字符开始:编码为 U+003C LESS-THAN SIGN 的小于号, 编码为 U+0021 EXCLAMATION MARK 的感叹号, 编码为 U+002D HYPHEN-MINUS 横线, 编码为 U+002D HYPHEN-MINUS横线 ,即 “<!--”\n* 在此之后是注释内容,注释的内容有以下限制:\n\t* 不能以单个 \">\" (U+003E) 字符开始\n\t* 不能以由 “-“(U+002D HYPHEN-MINUS)和 ”>” (U+003E) 组合的字符开始,即 “->”\n\t* 不能包含两个连续的 U+002D HYPHEN-MINUS 字符,即 “--”\n\t* 不能以一个 U+002D HYPHEN-MINUS 字符结束,即 “-”\n* 必须以3个有序字符结束:U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN,即 “-->”\n\n标准写法:\n\n\t\n\t\n错误的写法:\n\n\tThe Wrong Comment Text-->\n\n\tThe Wrong Comment Text-->\n\n\t\n\n\t\n\t\n参考 www.w3.org [#Comments](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#comments) \n\n\n\t\n#### 团队约定\n\n##### 单行注释 \n\n一般用于简单的描述,如某些状态描述、属性描述等\n\n注释内容前后各一个空格字符,注释位于要注释代码的上面,单独占一行\n\n*推荐:*\n\n\t\n\t
...
\n\t\n*不推荐:*\n\t\n\t
...
\t\n\t\n\t
\n\t...\n\t
\n\n##### 模块注释\n\n一般用于描述模块的名称以及模块开始与结束的位置\n\n注释内容前后各一个空格字符,`` 表示模块开始,`` 表示模块结束,模块与模块之间相隔一行\n\n*推荐写法:*\n\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n*不推荐写法:*\n\n\t\n\t
\n\t\t...\n\t
\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n##### 嵌套模块注释\n\n当模块注释内再出现模块注释的时候,为了突出主要模块,嵌套模块不再使用 \n\n\t\n\t\n\t\n而改用 \n\n\t\n\n注释写在模块结尾标签底部,单独一行。\n\n\t\n\t
\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t
\n\t\n\n### WebApp Meta 标签设置(iOS)\n\n> A web application is designed to look and behave in a way similar to a native application—for example, it is scaled to fit the entire screen on iOS. You can tailor your web application for Safari on iOS even further, by making it appear like a native application when the user adds it to the Home screen. You do this by using settings for iOS that are ignored by other platforms.\n\nWebApp目的在于使其界面和行为在某种程度上类似于原生APP应用。例如,WebApp 可以在 iOS 设备上通过缩放去适配设备屏幕。当用户将WebApp程序添加到主屏幕后,会使得它看上去像原生APP一样,以此,你可以进一步为 Safari 定制自己的 WebApp,而使用某些专为 iOS 平台设定的设置就可以做到。\n\nWebApp可以通过设置 meta 标签来改变页面的一些表现,有些 meta 设置在 Safari 应用或原生 App 的内嵌网页中都可以生效,而有些设置侧需要将应用添加到主屏幕的时候才会生效。\n\n\n#### Viewport Meta Tag\n\n通用类设置:\n\n\t\n\t\n* width -- viewport的宽度\n* height -- viewport的高度\n* initial-scale -- 初始的缩放比例\n* minimum-scale -- 允许用户缩放到的最小比例\n* maximum-scale -- 允许用户缩放到的最大比例\n* user-scalable -- 是否允许用户缩放\n\n其中 Safari on iOS viewport:\n\n> The width of the viewport in pixels. The default is 980. The range is from 200 to 10,000.\n> \n> The minimum-scale and maximum-scale properties also affect the behavior when changing orientations. The range of these property values is from >0 to 10.0. The default value for minimum-scale is 0.25 and maximum-scale is 5.0\n\n> user-scalable -- The default is yes.\nSetting user-scalable to no also prevents a webpage from scrolling when entering text in an input field.\n\n\n* 默认宽度是 980px,范围从 200px 到 10000px\n* initial-scale 缩放比例范围值是 从 >0 到 10 之间\n* minimum-scale 默认值是 0.25\n* maximum-scale 默认值是 5\n* user-scalable -- 默认值是 yes,设置 no 还可以在文本框输入文本的时候阻止页面滚动\n\n\t\n更多关于 Safari on iOS viewport 的设置:\n\n[Configuring the Viewport](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html#//apple_ref/doc/uid/TP40006509-SW19)\n\n[Safari HTML Reference](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html)\n\n\n\n#### Apple-Specific Meta Tag Keys\n\n##### apple-mobile-web-app-capable\n\n设置 WebApp 是否进入全屏模式,该设置需要添加到主屏幕才生效\n\n\t\n\t\t\n> If content is set to yes, the web application runs in full-screen mode;otherwise, it does not. The default behavior is to use Safari to display web content.You can determine whether a webpage is displayed in full-screen mode using the window.navigator.standalone read-only Boolean JavaScript property.\n\n* content设置 yes 进入全屏模式\n* 默认会启动 Safari 应用,使用 Safari 应用浏览\n* 通过检测 window.navigator.standalone 的 Boolean 值可以判断 web 应用是否处于全屏模式\n\n##### apple-mobile-web-app-status-bar-style\n\n为 webapp 设置状态栏样式\n\n\t\n\t\n> This meta tag has no effect unless you first specify full-screen mode as described in apple-apple-mobile-web-app-capable.\n> \nIf content is set to default, the status bar appears normal. If set to black, the status bar has a black background. If set to black-translucent, the status bar is black and translucent. If set to default or black, the web content is displayed below the status bar. If set to black-translucent, the web content is displayed on the entire screen, partially obscured by the status bar. The default value is default.\n\n* 此 meta 设置只在全屏模式生效\n* 默认值是 default\n* content=\"black\",状态栏背景黑色,网页内容在状态栏下面\n* content=\"black-translucent\",状态栏半透明,背景黑色,网页内容占满全屏\n\n*该设置在 iOS6 和 iOS7 表现还可以,但到了 iOS8 后会出现各种问题,而且在 iOS9 中并没有生效。参阅:[iOS 8: web app status bar position and resizing problems](http://stackoverflow.com/questions/25884806/ios-8-web-app-status-bar-position-and-resizing-problems)*\n\n##### format-detection\n\n自动识别页面中有可能是电话格式的数字 \n\n\t\n\t\n> By default, Safari on iOS detects any string formatted like a phone number and makes it a link that calls the number. Specifying telephone=no disables this feature.\n\niOS中的 Safari 会默认识别与电话格式相似的数字并生成一个可以拉起电话应用并将该数字作为电话号码拨打的链接。定义 telephone=no 可以屏蔽该功能\n\n更多 WebApp 设置参考 [Configuring Web Applications](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html#//apple_ref/doc/uid/TP40002051-CH3-SW4)\n\n###HTML模版\n\nHTML模版指的是团队使用的初始化HTML文件,里面会根据不同平台而采用不一样的设置,一般主要不同的设置就是 mata 标签的设置,以下是 PC 和移动端的 HTML 模版\n\n#### HTML5最简结构标准模版:\n\n\t\n\t\n\t\n\t\n\tHTML5最简结构标准模版\n\t \n\t\n\t\n\t\n\t \n\t\n#### 团队约定的HTML模版\n\n##### 移动端\n\n\t\n\t\n\t\n\t\n\t\n\t\n\t移动端HTML模版\n \t\n \t\n \t\n \t \n\n \t\n\t\n\t\n\n\t \n\t\n\t\n\n\t\n\t\n\t\n \n\t \n\t\n\t\n\t\n\t\n\t\t\n##### PC端\n\n\t\n\t\n\t\n\t\n \n \n \n \n \n \n\tPC端HTML模版\n \n \n \n \n\n\t\n\t\n\t\n\n\t \n\t\n\t\n\n\t\n\t\n\t\n \n\t \n\t\n\t\n\t\n\t","source":"docs/html/jdc_fd_web_final_2.md","raw":"# 前端开发编码规范\n\n基于 [W3C](http://www.w3.org/)、[苹果开发者](https://developer.apple.com/) 等官方文档,并结合团队日常业务需求以及团队在日常开发过程中总结提炼出的经验而约定。\n\n旨在增强团队开发协作、提高代码质量和打造开发基石的编码规范,是团队代码基本约定的内容,必须严格遵循。\n\n## HTML规范\n\n###代码规范\n\n#### DOCTYPE 声明\n\n一个DOCTYPE必须包含以下部分,并严格按照顺序出现:\n\n> 1. A string that is an ASCII case-insensitive match for the string \" 2. One or more space characters.\n> 3. A string that is an ASCII case-insensitive match for the string \"html\".\n> 4. Optionally, a DOCTYPE legacy string or an obsolete permitted DOCTYPE string (defined below).\n> 5. Zero or more space characters.\n> 6. A \">\" (U+003E) character.\n\n1. 一个ASCII字符串 \"\n\n##### 更多关于 DOCTYPE声明\n[#The DOCTYPE](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#the-doctype)\n\n\n#### 页面语言LANG\n\nLang属性的取值应该遵循互联网工程任务组--IETF(The Internet Engineering Task Force)制定的关于语言标签的文档 [BCP 47 - Tags for Identifying Languages](http://tools.ietf.org/html/bcp47)\n\n##### 团队约定\n\n推荐使用属性值 `cmn-Hans-CN`(简体, 中国大陆),但是考虑浏览器和操作系统的兼容性,目前仍然使用 `zh-CN` 属性值\n\n\t\n\t\n更多地区语言参考:\n\n\tzh-SG 中文 (简体, 新加坡) 对应 cmn-Hans-SG 普通话 (简体, 新加坡)\n\tzh-HK 中文 (繁体, 香港) 对应 cmn-Hant-HK 普通话 (繁体, 香港)\n\tzh-MO 中文 (繁体, 澳门) 对应 cmn-Hant-MO 普通话 (繁体, 澳门)\n\tzh-TW 中文 (繁体, 台湾) 对应 cmn-Hant-TW 普通话 (繁体, 台湾)\n\t\n\t\n##### 已废弃不推荐使用的 Languages Tags\n\n以下写法已于 2009 年废弃,请勿使用(cmn、wuu、yue、gan 等已由 2005 年的 extlang 升级到 2009 年的 language):\n\n\tzh-cmn, zh-cmn-Hans, zh-cmn-Hant, zh-wuu, zh-yue, zh-gan\n\t\n以下写法已于 2009 年废弃,不推荐使用:\n\n\tzh-Hans, zh-Hans-CN, zh-Hans-SG, zh-Hans-HK, zh-Hans-MO, zh-Hans-TW, \n\tzh-Hant, zh-Hant-CN, zh-Hant-SG, zh-Hant-HK, zh-Hant-MO, zh-Hant-TW\n\n更多已废弃 Languages Tags 参考 [IANA Language Subtag Registry](http://www.iana.org/assignments/language-subtag-registry/language-subtag-registry) 里面的 “Type: redundant“”\n\n##### 更多关于 Languages Tags :\n\n[W3C Language tags in HTML and XML](http://www.w3.org/International/articles/language-tags/)\n\n\n[网页头部的声明应该是用 lang=\"zh\" 还是 lang=\"zh-cn\"?](http://www.zhihu.com/question/20797118?utm_source=weibo&utm_medium=weibo_share&utm_content=share_question&utm_campaign=share_sidebar)\n\n\n\n#### CHARSET\n\n> Because the character sets in ISO-8859 was limited in size, and not compatible in multilingual environments, the Unicode Consortium developed the Unicode Standard.\n> \n> The Unicode Standard covers (almost) all the characters, punctuations, and symbols in the world.\n> \n> Unicode enables processing, storage, and transport of text independent of platform and language.\n> \n> The default character encoding in HTML-5 is UTF-8.\n\n因为 ISO-8859 中字符集大小是有限的,且在多语言环境中不兼容,所以 Unicode 联盟开发了 Unicode 标准。\n\nUnicode 标准覆盖了(几乎)所有的字符、标点符号和符号。\n\nUnicode 使文本的处理、存储和运输,独立于平台和语言。\n\nHTML-5 中默认的字符编码是 UTF-8\n\n参阅 [HTML Unicode (UTF-8) Reference](http://www.w3schools.com/charsets/ref_html_utf8.asp)\n\n##### 团队约定\n\n一般情况下统一使用 “UTF-8” 编码\n\n\t\n\t\n由于历史原因,有些业务可能会使用 “GBK” 编码\n\t\n\t\n\n请尽量统一写成标准的 “UTF-8”,不要写成 “utf-8” 或 “utf8” 或 “UTF8”。根据 [IETF对UTF-8的定义](http://www.ietf.org/rfc/rfc3629),其编码标准的写法是 “UTF-8”;而 UTF8 或 utf8 的写法只是出现在某些编程系统中,如 .NET framework 的类 System.Text.Encoding 中的一个属性名就叫 UTF8。\n\n##### 更多关于 \n\nUTF-8写法: [UTF8 or UTF-8?](http://stackoverflow.com/questions/809620/utf8-or-utf-8) \n\nGBK:[Application of IANA Charset Registration for GBK](http://www.ietf.org/assignments/charset-reg/GBK)\n\nCharset :[character-encoding-declaration](http://www.w3.org/TR/html5/document-metadata.html#character-encoding-declaration) \n\n\n#### 元素及标签闭合\n\nHTML元素共有以下5种:\n \n* 空元素:area、base、br、col、command、embed、hr、img、input、keygen、link、meta、param、source、track、wbr\n* 原始文本元素:script、style\n* RCDATA元素:textarea、title\n* 外来元素:来自MathML命名空间和SVG命名空间的元素。\n* 常规元素:其他HTML允许的元素都称为常规元素。\n\n元素标签的闭合应遵循以下原则:\n\n> Tags are used to delimit the start and end of elements in the markup. Raw text, escapable raw text, and normal elements have a start tag to indicate where they begin, and an end tag to indicate where they end. The start and end tags of certain normal elements can be omitted, as described below in the section on optional tags. Those that cannot be omitted must not be omitted. Void elements only have a start tag; end tags must not be specified for void elements. Foreign elements must either have a start tag and an end tag, or a start tag that is marked as self-closing, in which case they must not have an end tag.\n\n* 原始文本元素、RCDATA元素以及常规元素都有一个开始标签来表示开始,一个结束标签来表示结束。\n* [某些元素的开始和结束标签是可以省略的](http://www.w3.org/TR/html5/syntax.html#optional-tags),如果规定标签不能被省略,那么就绝对不能省略它。\n* 空元素只有一个开始标签,且不能为空元素设置结束标签。\n* 外来元素可以有一个开始标签和配对的结束标签,或者只有一个自闭合的开始标签,且后者情况下该元素不能有结束标签。\n\n##### 团队约定\n\n为了能让浏览器更好的解析代码以及能让代码具有更好的可读性,有如下约定:\n\n* 所有具有开始标签和结束标签的元素都要写上起止标签,某些允许省略开始标签或和束标签的元素亦都要写上。\n* 空元素标签都不加 “/” 字符\n\n\n*推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始有终,浏览器能正确解析

\n\t
\n\t\n\t
\n\t\n*不推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始无终,浏览器亦能正确解析\n\t

\n\n\t
\n\n更多关于元素及标签关闭:[#Elements](http://www.w3.org/TR/html5/syntax.html#elements-0)\n\n#### 书写风格\n\n##### HTML代码大小写\n\nHTML标签名、类名、标签属性和大部分属性值统一用小写\n\n*推荐:*\n\n\t
\n\t\n*不推荐:*\n\n\t
\n\t\n\t
\n\nHTML文本、CDATA、JavaScript、meta标签某些属性等内容可大小写混合\n\t\n\t\n \n\n\t\n\t

I AM WHAT I AM

\n\n\t\n\t\n\t\n\t\n\t\n\t\n##### 类型属性\n\n不需要为 CSS、JS 指定类型属性,HTML5 中默认已包含\n\n*推荐:*\n\n\t\n\t\n\t\n*不推荐:*\n\n\t\n\t\n\t\n##### 元素属性\n\n* 元素属性值使用双引号语法\n* 元素属性值可以写上的都写上\n\n\n*推荐:*\n\n\t\n\t\n\t\n\t\n*不推荐:*\n\n\t\t\n\t\n\t\n\t\n\t\n\t\n更多关于元素属性:[#Attributes](http://www.w3.org/TR/html5/syntax.html#attributes-0)\n\n##### 特殊字符引用\n\n> In certain cases described in other sections, text may be mixed with character references. These can be used to escape characters that couldn't otherwise legally be included in text.\n\n文本可以和字符引用混合出现。这种方法可以用来转义在文本中不能合法出现的字符。\n\n\n在 HTML 中不能使用小于号 “<” 和大于号 “>”特殊字符,浏览器会将它们作为标签解析,若要正确显示,在 HTML 源代码中使用字符实体\n\n*推荐:*\n\n\tmore>>\n\n*不推荐:*\n\n\tmore>>\n\t\n更多关于符号引用:[#Character references](http://www.w3.org/TR/html5/syntax.html#character-references)\n\n##### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n\t
\n \t \n
\n\n##### 纯数字输入框\n\n使用 type=\"tel\" 而不是 type=\"number\"\n\t\n\t \n\n##### 代码嵌套\n\n元素嵌套规范,每个块状元素独立一行,内联元素可选\n\n*推荐:*\n\n\t
\n \t

\n \t

\n\t
\t\n\t

\n\t\n*不推荐:*\n\n\t
\n \t

\n\t
\t\n\t

\n\t\t\n\t\t\n\t

\n\t\n段落元素与标题元素只能嵌套内联元素\n\n*推荐:*\n\t\n\t

\n\t

\n\t\n*不推荐:*\n\n\t

\n\t

\n\t\t\t\t\n###注释规范\n\nHTML注释规范写法应该遵循以下标准:\n\n> Comments must start with the four character sequence U+003C LESS-THAN SIGN, U+0021 EXCLAMATION MARK, U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS (<!--). Following this sequence, the comment may have text, with the additional restriction that the text must not start with a single \">\" (U+003E) character, nor start with a U+002D HYPHEN-MINUS character (-) followed by a \">\" (U+003E) character, nor contain two consecutive U+002D HYPHEN-MINUS characters (--), nor end with a U+002D HYPHEN-MINUS character (-). Finally, the comment must be ended by the three character sequence U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN (-->).\n\n* 必须以4个有序字符开始:编码为 U+003C LESS-THAN SIGN 的小于号, 编码为 U+0021 EXCLAMATION MARK 的感叹号, 编码为 U+002D HYPHEN-MINUS 横线, 编码为 U+002D HYPHEN-MINUS横线 ,即 “<!--”\n* 在此之后是注释内容,注释的内容有以下限制:\n\t* 不能以单个 \">\" (U+003E) 字符开始\n\t* 不能以由 “-“(U+002D HYPHEN-MINUS)和 ”>” (U+003E) 组合的字符开始,即 “->”\n\t* 不能包含两个连续的 U+002D HYPHEN-MINUS 字符,即 “--”\n\t* 不能以一个 U+002D HYPHEN-MINUS 字符结束,即 “-”\n* 必须以3个有序字符结束:U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN,即 “-->”\n\n标准写法:\n\n\t\n\t\n错误的写法:\n\n\tThe Wrong Comment Text-->\n\n\tThe Wrong Comment Text-->\n\n\t\n\n\t\n\t\n参考 www.w3.org [#Comments](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#comments) \n\n\n\t\n#### 团队约定\n\n##### 单行注释 \n\n一般用于简单的描述,如某些状态描述、属性描述等\n\n注释内容前后各一个空格字符,注释位于要注释代码的上面,单独占一行\n\n*推荐:*\n\n\t\n\t
...
\n\t\n*不推荐:*\n\t\n\t
...
\t\n\t\n\t
\n\t...\n\t
\n\n##### 模块注释\n\n一般用于描述模块的名称以及模块开始与结束的位置\n\n注释内容前后各一个空格字符,`` 表示模块开始,`` 表示模块结束,模块与模块之间相隔一行\n\n*推荐写法:*\n\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n*不推荐写法:*\n\n\t\n\t
\n\t\t...\n\t
\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n##### 嵌套模块注释\n\n当模块注释内再出现模块注释的时候,为了突出主要模块,嵌套模块不再使用 \n\n\t\n\t\n\t\n而改用 \n\n\t\n\n注释写在模块结尾标签底部,单独一行。\n\n\t\n\t
\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t
\n\t\n\n### WebApp Meta 标签设置(iOS)\n\n> A web application is designed to look and behave in a way similar to a native application—for example, it is scaled to fit the entire screen on iOS. You can tailor your web application for Safari on iOS even further, by making it appear like a native application when the user adds it to the Home screen. You do this by using settings for iOS that are ignored by other platforms.\n\nWebApp目的在于使其界面和行为在某种程度上类似于原生APP应用。例如,WebApp 可以在 iOS 设备上通过缩放去适配设备屏幕。当用户将WebApp程序添加到主屏幕后,会使得它看上去像原生APP一样,以此,你可以进一步为 Safari 定制自己的 WebApp,而使用某些专为 iOS 平台设定的设置就可以做到。\n\nWebApp可以通过设置 meta 标签来改变页面的一些表现,有些 meta 设置在 Safari 应用或原生 App 的内嵌网页中都可以生效,而有些设置侧需要将应用添加到主屏幕的时候才会生效。\n\n\n#### Viewport Meta Tag\n\n通用类设置:\n\n\t\n\t\n* width -- viewport的宽度\n* height -- viewport的高度\n* initial-scale -- 初始的缩放比例\n* minimum-scale -- 允许用户缩放到的最小比例\n* maximum-scale -- 允许用户缩放到的最大比例\n* user-scalable -- 是否允许用户缩放\n\n其中 Safari on iOS viewport:\n\n> The width of the viewport in pixels. The default is 980. The range is from 200 to 10,000.\n> \n> The minimum-scale and maximum-scale properties also affect the behavior when changing orientations. The range of these property values is from >0 to 10.0. The default value for minimum-scale is 0.25 and maximum-scale is 5.0\n\n> user-scalable -- The default is yes.\nSetting user-scalable to no also prevents a webpage from scrolling when entering text in an input field.\n\n\n* 默认宽度是 980px,范围从 200px 到 10000px\n* initial-scale 缩放比例范围值是 从 >0 到 10 之间\n* minimum-scale 默认值是 0.25\n* maximum-scale 默认值是 5\n* user-scalable -- 默认值是 yes,设置 no 还可以在文本框输入文本的时候阻止页面滚动\n\n\t\n更多关于 Safari on iOS viewport 的设置:\n\n[Configuring the Viewport](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html#//apple_ref/doc/uid/TP40006509-SW19)\n\n[Safari HTML Reference](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html)\n\n\n\n#### Apple-Specific Meta Tag Keys\n\n##### apple-mobile-web-app-capable\n\n设置 WebApp 是否进入全屏模式,该设置需要添加到主屏幕才生效\n\n\t\n\t\t\n> If content is set to yes, the web application runs in full-screen mode;otherwise, it does not. The default behavior is to use Safari to display web content.You can determine whether a webpage is displayed in full-screen mode using the window.navigator.standalone read-only Boolean JavaScript property.\n\n* content设置 yes 进入全屏模式\n* 默认会启动 Safari 应用,使用 Safari 应用浏览\n* 通过检测 window.navigator.standalone 的 Boolean 值可以判断 web 应用是否处于全屏模式\n\n##### apple-mobile-web-app-status-bar-style\n\n为 webapp 设置状态栏样式\n\n\t\n\t\n> This meta tag has no effect unless you first specify full-screen mode as described in apple-apple-mobile-web-app-capable.\n> \nIf content is set to default, the status bar appears normal. If set to black, the status bar has a black background. If set to black-translucent, the status bar is black and translucent. If set to default or black, the web content is displayed below the status bar. If set to black-translucent, the web content is displayed on the entire screen, partially obscured by the status bar. The default value is default.\n\n* 此 meta 设置只在全屏模式生效\n* 默认值是 default\n* content=\"black\",状态栏背景黑色,网页内容在状态栏下面\n* content=\"black-translucent\",状态栏半透明,背景黑色,网页内容占满全屏\n\n*该设置在 iOS6 和 iOS7 表现还可以,但到了 iOS8 后会出现各种问题,而且在 iOS9 中并没有生效。参阅:[iOS 8: web app status bar position and resizing problems](http://stackoverflow.com/questions/25884806/ios-8-web-app-status-bar-position-and-resizing-problems)*\n\n##### format-detection\n\n自动识别页面中有可能是电话格式的数字 \n\n\t\n\t\n> By default, Safari on iOS detects any string formatted like a phone number and makes it a link that calls the number. Specifying telephone=no disables this feature.\n\niOS中的 Safari 会默认识别与电话格式相似的数字并生成一个可以拉起电话应用并将该数字作为电话号码拨打的链接。定义 telephone=no 可以屏蔽该功能\n\n更多 WebApp 设置参考 [Configuring Web Applications](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html#//apple_ref/doc/uid/TP40002051-CH3-SW4)\n\n###HTML模版\n\nHTML模版指的是团队使用的初始化HTML文件,里面会根据不同平台而采用不一样的设置,一般主要不同的设置就是 mata 标签的设置,以下是 PC 和移动端的 HTML 模版\n\n#### HTML5最简结构标准模版:\n\n\t\n\t\n\t\n\t\n\tHTML5最简结构标准模版\n\t \n\t\n\t\n\t\n\t \n\t\n#### 团队约定的HTML模版\n\n##### 移动端\n\n\t\n\t\n\t\n\t\n\t\n\t\n\t移动端HTML模版\n \t\n \t\n \t\n \t \n\n \t\n\t\n\t\n\n\t \n\t\n\t\n\n\t\n\t\n\t\n \n\t \n\t\n\t\n\t\n\t\n\t\t\n##### PC端\n\n\t\n\t\n\t\n\t\n \n \n \n \n \n \n\tPC端HTML模版\n \n \n \n \n\n\t\n\t\n\t\n\n\t \n\t\n\t\n\n\t\n\t\n\t\n \n\t \n\t\n\t\n\t\n\t","date":"2015-12-06T14:48:49.000Z","updated":"2015-10-19T13:00:33.000Z","path":"docs/html/jdc_fd_web_final_2.html","title":"","comments":1,"layout":"page","_id":"cihvwnkn8000i1xfy7hirtcq1"},{"title":"代码规范","_content":"\n## DOCTYPE 声明\n\n一个DOCTYPE必须包含以下部分,并严格按照顺序出现:\n\n> 1. A string that is an ASCII case-insensitive match for the string \" 2. One or more space characters.\n> 3. A string that is an ASCII case-insensitive match for the string \"html\".\n> 4. Optionally, a DOCTYPE legacy string or an obsolete permitted DOCTYPE string (defined below).\n> 5. Zero or more space characters.\n> 6. A \">\" (U+003E) character.\n\n1. 一个ASCII字符串 \"\n```\n\n### 更多关于 DOCTYPE声明\n[#The DOCTYPE](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#the-doctype)\n\n\n## 页面语言LANG\n\nLang属性的取值应该遵循互联网工程任务组--IETF(The Internet Engineering Task Force)制定的关于语言标签的文档 [BCP 47 - Tags for Identifying Languages](http://tools.ietf.org/html/bcp47)\n\n### 团队约定\n\n推荐使用属性值 `cmn-Hans-CN`(简体, 中国大陆),但是考虑浏览器和操作系统的兼容性,目前仍然使用 `zh-CN` 属性值\n```html\n\t\n```\n更多地区语言参考:\n\n\tzh-SG 中文 (简体, 新加坡) 对应 cmn-Hans-SG 普通话 (简体, 新加坡)\n\tzh-HK 中文 (繁体, 香港) 对应 cmn-Hant-HK 普通话 (繁体, 香港)\n\tzh-MO 中文 (繁体, 澳门) 对应 cmn-Hant-MO 普通话 (繁体, 澳门)\n\tzh-TW 中文 (繁体, 台湾) 对应 cmn-Hant-TW 普通话 (繁体, 台湾)\n\t\n\t\n#### 已废弃不推荐使用的 Languages Tags\n\n以下写法已于 2009 年废弃,请勿使用(cmn、wuu、yue、gan 等已由 2005 年的 extlang 升级到 2009 年的 language):\n\n\tzh-cmn, zh-cmn-Hans, zh-cmn-Hant, zh-wuu, zh-yue, zh-gan\n\t\n以下写法已于 2009 年废弃,不推荐使用:\n\n\tzh-Hans, zh-Hans-CN, zh-Hans-SG, zh-Hans-HK, zh-Hans-MO, zh-Hans-TW, \n\tzh-Hant, zh-Hant-CN, zh-Hant-SG, zh-Hant-HK, zh-Hant-MO, zh-Hant-TW\n\n更多已废弃 Languages Tags 参考 [IANA Language Subtag Registry](http://www.iana.org/assignments/language-subtag-registry/language-subtag-registry) 里面的 “Type: redundant“”\n\n#### 更多关于 Languages Tags :\n\n[W3C Language tags in HTML and XML](http://www.w3.org/International/articles/language-tags/)\n\n\n[网页头部的声明应该是用 lang=\"zh\" 还是 lang=\"zh-cn\"?](http://www.zhihu.com/question/20797118?utm_source=weibo&utm_medium=weibo_share&utm_content=share_question&utm_campaign=share_sidebar)\n\n\n\n## CHARSET\n\n> Because the character sets in ISO-8859 was limited in size, and not compatible in multilingual environments, the Unicode Consortium developed the Unicode Standard.\n> \n> The Unicode Standard covers (almost) all the characters, punctuations, and symbols in the world.\n> \n> Unicode enables processing, storage, and transport of text independent of platform and language.\n> \n> The default character encoding in HTML-5 is UTF-8.\n\n因为 ISO-8859 中字符集大小是有限的,且在多语言环境中不兼容,所以 Unicode 联盟开发了 Unicode 标准。\n\nUnicode 标准覆盖了(几乎)所有的字符、标点符号和符号。\n\nUnicode 使文本的处理、存储和运输,独立于平台和语言。\n\nHTML-5 中默认的字符编码是 UTF-8\n\n参阅 [HTML Unicode (UTF-8) Reference](http://www.w3schools.com/charsets/ref_html_utf8.asp)\n\n### 团队约定\n\n一般情况下统一使用 “UTF-8” 编码\n```html\n\t\n```\n\n由于历史原因,有些业务可能会使用 “GBK” 编码\n\n```html\t\n\t\n```\n\n请尽量统一写成标准的 “UTF-8”,不要写成 “utf-8” 或 “utf8” 或 “UTF8”。根据 [IETF对UTF-8的定义](http://www.ietf.org/rfc/rfc3629),其编码标准的写法是 “UTF-8”;而 UTF8 或 utf8 的写法只是出现在某些编程系统中,如 .NET framework 的类 System.Text.Encoding 中的一个属性名就叫 UTF8。\n\n#### 更多关于 \n\nUTF-8写法: [UTF8 or UTF-8?](http://stackoverflow.com/questions/809620/utf8-or-utf-8) \n\nGBK:[Application of IANA Charset Registration for GBK](http://www.ietf.org/assignments/charset-reg/GBK)\n\nCharset :[character-encoding-declaration](http://www.w3.org/TR/html5/document-metadata.html#character-encoding-declaration) \n\n\n## 元素及标签闭合\n\nHTML元素共有以下5种:\n \n* 空元素:area、base、br、col、command、embed、hr、img、input、keygen、link、meta、param、source、track、wbr\n* 原始文本元素:script、style\n* RCDATA元素:textarea、title\n* 外来元素:来自MathML命名空间和SVG命名空间的元素。\n* 常规元素:其他HTML允许的元素都称为常规元素。\n\n元素标签的闭合应遵循以下原则:\n\n> Tags are used to delimit the start and end of elements in the markup. Raw text, escapable raw text, and normal elements have a start tag to indicate where they begin, and an end tag to indicate where they end. The start and end tags of certain normal elements can be omitted, as described below in the section on optional tags. Those that cannot be omitted must not be omitted. Void elements only have a start tag; end tags must not be specified for void elements. Foreign elements must either have a start tag and an end tag, or a start tag that is marked as self-closing, in which case they must not have an end tag.\n\n* 原始文本元素、RCDATA元素以及常规元素都有一个开始标签来表示开始,一个结束标签来表示结束。\n* [某些元素的开始和结束标签是可以省略的](http://www.w3.org/TR/html5/syntax.html#optional-tags),如果规定标签不能被省略,那么就绝对不能省略它。\n* 空元素只有一个开始标签,且不能为空元素设置结束标签。\n* 外来元素可以有一个开始标签和配对的结束标签,或者只有一个自闭合的开始标签,且后者情况下该元素不能有结束标签。\n\n### 团队约定\n\n为了能让浏览器更好的解析代码以及能让代码具有更好的可读性,有如下约定:\n\n* 所有具有开始标签和结束标签的元素都要写上起止标签,某些允许省略开始标签或和束标签的元素亦都要写上。\n* 空元素标签都不加 “/” 字符\n\n\n*推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始有终,浏览器能正确解析

\n\t
\n\t\n\t
\n\t\n*不推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始无终,浏览器亦能正确解析\n\t

\n\n\t
\n\n更多关于元素及标签关闭:[#Elements](http://www.w3.org/TR/html5/syntax.html#elements-0)\n\n## 书写风格\n\n### HTML代码大小写\n\nHTML标签名、类名、标签属性和大部分属性值统一用小写\n\n*推荐:*\n\n\t
\n\n*不推荐:*\n\n\t
\n\t\n\t
\n\nHTML文本、CDATA、JavaScript、meta标签某些属性等内容可大小写混合\n\t\n\t\n \n\n\t\n\t

I AM WHAT I AM

\n\n\t\n\t\n\t\n\t\n\t\n\t\n### 类型属性\n\n不需要为 CSS、JS 指定类型属性,HTML5 中默认已包含\n\n*推荐:*\n\n\t\n\t\n\t\n*不推荐:*\n\n\t\n\t\n\t\n### 元素属性\n\n* 元素属性值使用双引号语法\n* 元素属性值可以写上的都写上\n\n\n*推荐:*\n\n\t\n\t\n\t\n\t\n*不推荐:*\n\n\t\t\n\t\n\t\n\t\n\t\n\t\n更多关于元素属性:[#Attributes](http://www.w3.org/TR/html5/syntax.html#attributes-0)\n\n### 特殊字符引用\n\n> In certain cases described in other sections, text may be mixed with character references. These can be used to escape characters that couldn't otherwise legally be included in text.\n\n文本可以和字符引用混合出现。这种方法可以用来转义在文本中不能合法出现的字符。\n\n\n在 HTML 中不能使用小于号 “<” 和大于号 “>”特殊字符,浏览器会将它们作为标签解析,若要正确显示,在 HTML 源代码中使用字符实体\n\n*推荐:*\n```html\nmore>>\n```\n\n*不推荐:*\n```html\nmore>>\n```\n更多关于符号引用:[#Character references](http://www.w3.org/TR/html5/syntax.html#character-references)\n\n### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n```html\n
\n \n
\n```\n\n### 纯数字输入框\n\n使用 type=\"tel\" 而不是 type=\"number\"\n```html\n \n```\n### 代码嵌套\n\n元素嵌套规范,每个块状元素独立一行,内联元素可选\n\n*推荐:*\n\n```html\n
\n

\n

\n
\t\n

\n```\n\n*不推荐:*\n```html\n
\n

\n
\t\n

\n \n \n

\n```\n段落元素与标题元素只能嵌套内联元素\n\n*推荐:*\n```html\n

\n

\n```\n\n*不推荐:*\n```html\n

\n

\n```","source":"docs/html/code.md","raw":"title: 代码规范\n---\n\n## DOCTYPE 声明\n\n一个DOCTYPE必须包含以下部分,并严格按照顺序出现:\n\n> 1. A string that is an ASCII case-insensitive match for the string \" 2. One or more space characters.\n> 3. A string that is an ASCII case-insensitive match for the string \"html\".\n> 4. Optionally, a DOCTYPE legacy string or an obsolete permitted DOCTYPE string (defined below).\n> 5. Zero or more space characters.\n> 6. A \">\" (U+003E) character.\n\n1. 一个ASCII字符串 \"\n```\n\n### 更多关于 DOCTYPE声明\n[#The DOCTYPE](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#the-doctype)\n\n\n## 页面语言LANG\n\nLang属性的取值应该遵循互联网工程任务组--IETF(The Internet Engineering Task Force)制定的关于语言标签的文档 [BCP 47 - Tags for Identifying Languages](http://tools.ietf.org/html/bcp47)\n\n### 团队约定\n\n推荐使用属性值 `cmn-Hans-CN`(简体, 中国大陆),但是考虑浏览器和操作系统的兼容性,目前仍然使用 `zh-CN` 属性值\n```html\n\t\n```\n更多地区语言参考:\n\n\tzh-SG 中文 (简体, 新加坡) 对应 cmn-Hans-SG 普通话 (简体, 新加坡)\n\tzh-HK 中文 (繁体, 香港) 对应 cmn-Hant-HK 普通话 (繁体, 香港)\n\tzh-MO 中文 (繁体, 澳门) 对应 cmn-Hant-MO 普通话 (繁体, 澳门)\n\tzh-TW 中文 (繁体, 台湾) 对应 cmn-Hant-TW 普通话 (繁体, 台湾)\n\t\n\t\n#### 已废弃不推荐使用的 Languages Tags\n\n以下写法已于 2009 年废弃,请勿使用(cmn、wuu、yue、gan 等已由 2005 年的 extlang 升级到 2009 年的 language):\n\n\tzh-cmn, zh-cmn-Hans, zh-cmn-Hant, zh-wuu, zh-yue, zh-gan\n\t\n以下写法已于 2009 年废弃,不推荐使用:\n\n\tzh-Hans, zh-Hans-CN, zh-Hans-SG, zh-Hans-HK, zh-Hans-MO, zh-Hans-TW, \n\tzh-Hant, zh-Hant-CN, zh-Hant-SG, zh-Hant-HK, zh-Hant-MO, zh-Hant-TW\n\n更多已废弃 Languages Tags 参考 [IANA Language Subtag Registry](http://www.iana.org/assignments/language-subtag-registry/language-subtag-registry) 里面的 “Type: redundant“”\n\n#### 更多关于 Languages Tags :\n\n[W3C Language tags in HTML and XML](http://www.w3.org/International/articles/language-tags/)\n\n\n[网页头部的声明应该是用 lang=\"zh\" 还是 lang=\"zh-cn\"?](http://www.zhihu.com/question/20797118?utm_source=weibo&utm_medium=weibo_share&utm_content=share_question&utm_campaign=share_sidebar)\n\n\n\n## CHARSET\n\n> Because the character sets in ISO-8859 was limited in size, and not compatible in multilingual environments, the Unicode Consortium developed the Unicode Standard.\n> \n> The Unicode Standard covers (almost) all the characters, punctuations, and symbols in the world.\n> \n> Unicode enables processing, storage, and transport of text independent of platform and language.\n> \n> The default character encoding in HTML-5 is UTF-8.\n\n因为 ISO-8859 中字符集大小是有限的,且在多语言环境中不兼容,所以 Unicode 联盟开发了 Unicode 标准。\n\nUnicode 标准覆盖了(几乎)所有的字符、标点符号和符号。\n\nUnicode 使文本的处理、存储和运输,独立于平台和语言。\n\nHTML-5 中默认的字符编码是 UTF-8\n\n参阅 [HTML Unicode (UTF-8) Reference](http://www.w3schools.com/charsets/ref_html_utf8.asp)\n\n### 团队约定\n\n一般情况下统一使用 “UTF-8” 编码\n```html\n\t\n```\n\n由于历史原因,有些业务可能会使用 “GBK” 编码\n\n```html\t\n\t\n```\n\n请尽量统一写成标准的 “UTF-8”,不要写成 “utf-8” 或 “utf8” 或 “UTF8”。根据 [IETF对UTF-8的定义](http://www.ietf.org/rfc/rfc3629),其编码标准的写法是 “UTF-8”;而 UTF8 或 utf8 的写法只是出现在某些编程系统中,如 .NET framework 的类 System.Text.Encoding 中的一个属性名就叫 UTF8。\n\n#### 更多关于 \n\nUTF-8写法: [UTF8 or UTF-8?](http://stackoverflow.com/questions/809620/utf8-or-utf-8) \n\nGBK:[Application of IANA Charset Registration for GBK](http://www.ietf.org/assignments/charset-reg/GBK)\n\nCharset :[character-encoding-declaration](http://www.w3.org/TR/html5/document-metadata.html#character-encoding-declaration) \n\n\n## 元素及标签闭合\n\nHTML元素共有以下5种:\n \n* 空元素:area、base、br、col、command、embed、hr、img、input、keygen、link、meta、param、source、track、wbr\n* 原始文本元素:script、style\n* RCDATA元素:textarea、title\n* 外来元素:来自MathML命名空间和SVG命名空间的元素。\n* 常规元素:其他HTML允许的元素都称为常规元素。\n\n元素标签的闭合应遵循以下原则:\n\n> Tags are used to delimit the start and end of elements in the markup. Raw text, escapable raw text, and normal elements have a start tag to indicate where they begin, and an end tag to indicate where they end. The start and end tags of certain normal elements can be omitted, as described below in the section on optional tags. Those that cannot be omitted must not be omitted. Void elements only have a start tag; end tags must not be specified for void elements. Foreign elements must either have a start tag and an end tag, or a start tag that is marked as self-closing, in which case they must not have an end tag.\n\n* 原始文本元素、RCDATA元素以及常规元素都有一个开始标签来表示开始,一个结束标签来表示结束。\n* [某些元素的开始和结束标签是可以省略的](http://www.w3.org/TR/html5/syntax.html#optional-tags),如果规定标签不能被省略,那么就绝对不能省略它。\n* 空元素只有一个开始标签,且不能为空元素设置结束标签。\n* 外来元素可以有一个开始标签和配对的结束标签,或者只有一个自闭合的开始标签,且后者情况下该元素不能有结束标签。\n\n### 团队约定\n\n为了能让浏览器更好的解析代码以及能让代码具有更好的可读性,有如下约定:\n\n* 所有具有开始标签和结束标签的元素都要写上起止标签,某些允许省略开始标签或和束标签的元素亦都要写上。\n* 空元素标签都不加 “/” 字符\n\n\n*推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始有终,浏览器能正确解析

\n\t
\n\t\n\t
\n\t\n*不推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始无终,浏览器亦能正确解析\n\t

\n\n\t
\n\n更多关于元素及标签关闭:[#Elements](http://www.w3.org/TR/html5/syntax.html#elements-0)\n\n## 书写风格\n\n### HTML代码大小写\n\nHTML标签名、类名、标签属性和大部分属性值统一用小写\n\n*推荐:*\n\n\t
\n\n*不推荐:*\n\n\t
\n\t\n\t
\n\nHTML文本、CDATA、JavaScript、meta标签某些属性等内容可大小写混合\n\t\n\t\n \n\n\t\n\t

I AM WHAT I AM

\n\n\t\n\t\n\t\n\t\n\t\n\t\n### 类型属性\n\n不需要为 CSS、JS 指定类型属性,HTML5 中默认已包含\n\n*推荐:*\n\n\t\n\t\n\t\n*不推荐:*\n\n\t\n\t\n\t\n### 元素属性\n\n* 元素属性值使用双引号语法\n* 元素属性值可以写上的都写上\n\n\n*推荐:*\n\n\t\n\t\n\t\n\t\n*不推荐:*\n\n\t\t\n\t\n\t\n\t\n\t\n\t\n更多关于元素属性:[#Attributes](http://www.w3.org/TR/html5/syntax.html#attributes-0)\n\n### 特殊字符引用\n\n> In certain cases described in other sections, text may be mixed with character references. These can be used to escape characters that couldn't otherwise legally be included in text.\n\n文本可以和字符引用混合出现。这种方法可以用来转义在文本中不能合法出现的字符。\n\n\n在 HTML 中不能使用小于号 “<” 和大于号 “>”特殊字符,浏览器会将它们作为标签解析,若要正确显示,在 HTML 源代码中使用字符实体\n\n*推荐:*\n```html\nmore>>\n```\n\n*不推荐:*\n```html\nmore>>\n```\n更多关于符号引用:[#Character references](http://www.w3.org/TR/html5/syntax.html#character-references)\n\n### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n```html\n
\n \n
\n```\n\n### 纯数字输入框\n\n使用 type=\"tel\" 而不是 type=\"number\"\n```html\n \n```\n### 代码嵌套\n\n元素嵌套规范,每个块状元素独立一行,内联元素可选\n\n*推荐:*\n\n```html\n
\n

\n

\n
\t\n

\n```\n\n*不推荐:*\n```html\n
\n

\n
\t\n

\n \n \n

\n```\n段落元素与标题元素只能嵌套内联元素\n\n*推荐:*\n```html\n

\n

\n```\n\n*不推荐:*\n```html\n

\n

\n```","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-03T03:35:24.000Z","path":"docs/html/code.html","comments":1,"layout":"page","_id":"cihvwnkn9000j1xfy5jltywu2"},{"title":"SASS规范","_content":"\n## 语法选用\n\nSASS有两种语法格式,一种是 SCSS (Sassy CSS),另一种是缩进格式(Indented Syntax),有时称之为 Sass。\n\n### SCSS\n\nSCSS语法基于 CSS 语法扩展,每一个有效的 CSS 文件都是一个有效的具有相同含义的 SCSS 文件,换种说法就是 SCSS 能识别大多数的 CSS hacks 写法和浏览器前缀写法以及早期的 IE 滤镜写法,这种格式以 .scss 作为扩展名。\n\n### Sass\n\nSass 使用 “缩进” 代替 “花括号” 表示属性属于某个选择器,用 “换行” 代替 “分号” 分隔属性,很多人认为这样做比 SCSS 更容易阅读,书写也更快速。缩进格式也可以使用 Sass 的全部功能,只是与 SCSS 相比个别地方采取了不同的表达方式,具体请查看 [the indented syntax reference](http://sass-lang.com/documentation/file.INDENTED_SYNTAX.html)。这种格式以 .sass 作为拓展名。\n\n更详细的用法请阅读 SASS 官网文档:[DOCUMENTATION](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n### 团队约定\n\n考虑到 SCSS 语法对 CSS 语法友好的兼容性和扩展性,我们在使用 SASS 编写样式的时候,统一使用 SCSS 语法\n\n## 编码格式\n\n> When running on Ruby 1.9 and later, Sass is aware of the character encoding of documents. Sass follows the CSS spec to determine the encoding of a stylesheet, and falls back to the Ruby string encoding. This means that it first checks the Unicode byte order mark, then the @charset declaration, then the Ruby string encoding. If none of these are set, it will assume the document is in UTF-8.\n\n当在 Ruby1.9或更新的版本运行的时候,SASS 能识辨文档的字符编码。SASS 遵循 CSS 规范去确定样式文件的编码,进而转回 Ruby 字符串编码。这意味着SASS编译的时候会首先检测 BOM,然后到 @charset 声明,再到 Ruby 字符串编码,如果以上都没有设置,SASS 会假定文档的编码为 UTF-8\n\n### 团队约定\n\n严格遵守上面 “代码规范” 中的 “编码规范”\n\n更多关于 SASS 编码:[SASS Encodings](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n## SASS注释规范\n\nSASS支持 CSS 标准的多行注释 `/* */`,同时也支持单行注释 `//`。\n\n* 多行注释在使用非 Compressed 模式进行编译后的输出文件中会保留下来,单行注释 `//` 侧会被移除\n* 多行注释和单行注释在 SASS 编译后输出的压缩 CSS 文件都会被移除\n* 当多行注释内容第一个字符是感叹号 “!” 的时候,即 `/*! */`,SASS 无论用哪一种编译方式编译注释都会保留\n* 注释内容可以加入 SASS 变量\n\n### 团队约定\n\nSCSS 文件内\n\n* 全部遵循 CSS 注释规范\n* 不使用 `/*! */` 注释方式\n* 注释内不放 SASS 变量\n\n标准的注释规范如下:\n\n```css\n@charset \"UTF-8\";\n\n/**\n * @desc File Info\n * @author liqinuo\n * @date 2015-10-10\n */\n\n/* Module A\n----------------------------------------------------------------*/\n.mod_a {}\n\n/* module A logo */\n.mod_a_logo {}\n\n/* module A nav */\n.mod_a_nav {}\n\n/* Module B\n----------------------------------------------------------------*/\n.mod_b {}\n\n/* module B logo */\n.mod_b_logo {}\n\n/* module B nav */\n.mod_b_nav {}\n```\n\n## 嵌套规范\n\n### 选择器嵌套\n\n``` css\n// CSS\n.jdc {}\nbody .jdc {}\n\n// SCSS\n.jdc {\n body & {}\n}\n```\n\n``` css\n// CSS\n.jdc {}\n.jdc_cover {}\n.jdc_info {}\n.jdc_info_name {}\n\n// SCSS\n.jdc {\n &_cover {}\n &_info {\n &_name {}\n }\n}\n```\n### 属性嵌套\n\n```css\n// CSS\n.jdc {\n background-color: red;\n background-repeat: no-repeat;\n background-image: url(/img/icon.png);\n background-position: 0 0;\n}\n\n// SCSS\n.jdc {\n background: {\n color: red;\n repeat: no-repeat;\n image: url(/img/icon.png);\n position: 0 0;\n }\n}\n```\n\n## 变量\n\n可复用属性尽量抽离为页面变量,易于统一维护\n\n```\n// CSS\n.jdc {\n color: red;\n border-color: red;\n}\n\n// SCSS\n$color: red;\n.jdc {\n color: $color;\n border-color: $color;\n}\n```\n\n## 混合(mixin)\n\n根据功能定义模块,然后在需要使用的地方通过 `@include` 调用,避免编码时重复输入代码段\n\n // CSS\n .jdc_1 {\n -webkit-border-radius: 5px;\n border-radius: 5px;\n }\n .jdc_2 {\n -webkit-border-radius: 10px;\n border-radius: 10px;\n }\n\n // SCSS\n @mixin radius($radius:5px) {\n -webkit-border-radius: $radius;\n border-radius: $radius;\n }\n .jdc_1 {\n @include radius; //参数使用默认值\n }\n .jdc_2 {\n @include radius(10px);\n }\n\n\n\n // CSS\n .jdc_1 {\n background: url(/img/icon.png) no-repeat -10px 0;\n }\n .jdc_2 {\n background: url(/img/icon.png) no-repeat -20px 0;\n }\n\n // SCSS\n @mixin icon($x:0, $y:0) {\n background: url(/img/icon.png) no-repeat $x, $y;\n }\n .jdc_1 {\n @include icon(-10px, 0);\n }\n .jdc_2 {\n @include icon(-20px, 0);\n }\n\n\n## 占位选择器 %\n\n如果不调用则不会有任何多余的 css 文件,占位选择器以 `%` 标识定义,通过 `@extend` 调用\n\n\n //scss\n %borderbox {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n }\n .jdc {\n @extend %borderbox;\n }\n\n\n## @extend 继承\n\n\n // CSS\n .jdc_1 {\n font-size: 12px;\n color: red;\n }\n .jdc_2 {\n font-size: 12px;\n color: red;\n font-weight: bold;\n }\n\n // SCSS\n .jdc_1 {\n font-size: 12px;\n color: red;\n }\n .jdc_2 {\n @extend .jdc_1;\n font-weight: bold;\n }\n\n // 或者\n %font_red {\n font-size: 12px;\n color: red;\n }\n .jdc_1 {\n @extend %font_red;\n }\n .jdc_2 {\n @extend %font_red;\n font-weight: bold;\n }\n\n\n#### @for 循环\n\n // CSS\n .jdc_1 {background-position: 0 -20px;}\n .jdc_2 {background-position: 0 -40px;}\n .jdc_3 {background-position: 0 -60px;}\n\n // SCSS\n @for $i from 1 through 3 {\n .jdc_#{$i} {\n background-position: 0 (-20px) * $i;\n }\n }\n\n注意:`#{}` 是连接符,变量连接使用时需要依赖\n\n#### @each 循环\n\n // CSS\n .jdc_list {\n background-image: url(/img/jdc_list.png);\n }\n .jdc_detail {\n background-image: url(/img/jdc_detail.png);\n }\n\n // SCSS\n @each $name in list, detail {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n }\n }\n\n\n // CSS\n .jdc_list {\n background-image: url(/img/jdc_list.png);\n background-color: red;\n }\n .jdc_detail {\n background-image: url(/img/jdc_detail.png);\n background-color: blue;\n }\n\n // SCSS\n @each $name, $color in (list, red), (detail, blue) {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n background-color: $color;\n }\n }\n\n\n#### @function 函数\n\n @function pxToRem($px) {\n @return $px / 10px * 1rem;\n }\n .jdc {\n font-size: pxToRem(12px);\n }\n\n\n#### 运算规范\n\n运算符之间空出一个空格\n\n .jdc {\n width: 100px - 50px;\n height: 30px / 5;\n }\n\n注意运算单位,单位同时参与运算,所以 10px 不等于 10,乘除运算时需要特别注意\n\n // 正确的运算格式\n .jdc {\n width: 100px - 50px;\n width: 100px + 50px;\n width: 100px * 2;\n width: 100px / 2;\n }\n\n\n\n\n","source":"docs/css/sass.md","raw":"title: SASS规范\n---\n\n## 语法选用\n\nSASS有两种语法格式,一种是 SCSS (Sassy CSS),另一种是缩进格式(Indented Syntax),有时称之为 Sass。\n\n### SCSS\n\nSCSS语法基于 CSS 语法扩展,每一个有效的 CSS 文件都是一个有效的具有相同含义的 SCSS 文件,换种说法就是 SCSS 能识别大多数的 CSS hacks 写法和浏览器前缀写法以及早期的 IE 滤镜写法,这种格式以 .scss 作为扩展名。\n\n### Sass\n\nSass 使用 “缩进” 代替 “花括号” 表示属性属于某个选择器,用 “换行” 代替 “分号” 分隔属性,很多人认为这样做比 SCSS 更容易阅读,书写也更快速。缩进格式也可以使用 Sass 的全部功能,只是与 SCSS 相比个别地方采取了不同的表达方式,具体请查看 [the indented syntax reference](http://sass-lang.com/documentation/file.INDENTED_SYNTAX.html)。这种格式以 .sass 作为拓展名。\n\n更详细的用法请阅读 SASS 官网文档:[DOCUMENTATION](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n### 团队约定\n\n考虑到 SCSS 语法对 CSS 语法友好的兼容性和扩展性,我们在使用 SASS 编写样式的时候,统一使用 SCSS 语法\n\n## 编码格式\n\n> When running on Ruby 1.9 and later, Sass is aware of the character encoding of documents. Sass follows the CSS spec to determine the encoding of a stylesheet, and falls back to the Ruby string encoding. This means that it first checks the Unicode byte order mark, then the @charset declaration, then the Ruby string encoding. If none of these are set, it will assume the document is in UTF-8.\n\n当在 Ruby1.9或更新的版本运行的时候,SASS 能识辨文档的字符编码。SASS 遵循 CSS 规范去确定样式文件的编码,进而转回 Ruby 字符串编码。这意味着SASS编译的时候会首先检测 BOM,然后到 @charset 声明,再到 Ruby 字符串编码,如果以上都没有设置,SASS 会假定文档的编码为 UTF-8\n\n### 团队约定\n\n严格遵守上面 “代码规范” 中的 “编码规范”\n\n更多关于 SASS 编码:[SASS Encodings](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n## SASS注释规范\n\nSASS支持 CSS 标准的多行注释 `/* */`,同时也支持单行注释 `//`。\n\n* 多行注释在使用非 Compressed 模式进行编译后的输出文件中会保留下来,单行注释 `//` 侧会被移除\n* 多行注释和单行注释在 SASS 编译后输出的压缩 CSS 文件都会被移除\n* 当多行注释内容第一个字符是感叹号 “!” 的时候,即 `/*! */`,SASS 无论用哪一种编译方式编译注释都会保留\n* 注释内容可以加入 SASS 变量\n\n### 团队约定\n\nSCSS 文件内\n\n* 全部遵循 CSS 注释规范\n* 不使用 `/*! */` 注释方式\n* 注释内不放 SASS 变量\n\n标准的注释规范如下:\n\n```css\n@charset \"UTF-8\";\n\n/**\n * @desc File Info\n * @author liqinuo\n * @date 2015-10-10\n */\n\n/* Module A\n----------------------------------------------------------------*/\n.mod_a {}\n\n/* module A logo */\n.mod_a_logo {}\n\n/* module A nav */\n.mod_a_nav {}\n\n/* Module B\n----------------------------------------------------------------*/\n.mod_b {}\n\n/* module B logo */\n.mod_b_logo {}\n\n/* module B nav */\n.mod_b_nav {}\n```\n\n## 嵌套规范\n\n### 选择器嵌套\n\n``` css\n// CSS\n.jdc {}\nbody .jdc {}\n\n// SCSS\n.jdc {\n body & {}\n}\n```\n\n``` css\n// CSS\n.jdc {}\n.jdc_cover {}\n.jdc_info {}\n.jdc_info_name {}\n\n// SCSS\n.jdc {\n &_cover {}\n &_info {\n &_name {}\n }\n}\n```\n### 属性嵌套\n\n```css\n// CSS\n.jdc {\n background-color: red;\n background-repeat: no-repeat;\n background-image: url(/img/icon.png);\n background-position: 0 0;\n}\n\n// SCSS\n.jdc {\n background: {\n color: red;\n repeat: no-repeat;\n image: url(/img/icon.png);\n position: 0 0;\n }\n}\n```\n\n## 变量\n\n可复用属性尽量抽离为页面变量,易于统一维护\n\n```\n// CSS\n.jdc {\n color: red;\n border-color: red;\n}\n\n// SCSS\n$color: red;\n.jdc {\n color: $color;\n border-color: $color;\n}\n```\n\n## 混合(mixin)\n\n根据功能定义模块,然后在需要使用的地方通过 `@include` 调用,避免编码时重复输入代码段\n\n // CSS\n .jdc_1 {\n -webkit-border-radius: 5px;\n border-radius: 5px;\n }\n .jdc_2 {\n -webkit-border-radius: 10px;\n border-radius: 10px;\n }\n\n // SCSS\n @mixin radius($radius:5px) {\n -webkit-border-radius: $radius;\n border-radius: $radius;\n }\n .jdc_1 {\n @include radius; //参数使用默认值\n }\n .jdc_2 {\n @include radius(10px);\n }\n\n\n\n // CSS\n .jdc_1 {\n background: url(/img/icon.png) no-repeat -10px 0;\n }\n .jdc_2 {\n background: url(/img/icon.png) no-repeat -20px 0;\n }\n\n // SCSS\n @mixin icon($x:0, $y:0) {\n background: url(/img/icon.png) no-repeat $x, $y;\n }\n .jdc_1 {\n @include icon(-10px, 0);\n }\n .jdc_2 {\n @include icon(-20px, 0);\n }\n\n\n## 占位选择器 %\n\n如果不调用则不会有任何多余的 css 文件,占位选择器以 `%` 标识定义,通过 `@extend` 调用\n\n\n //scss\n %borderbox {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n }\n .jdc {\n @extend %borderbox;\n }\n\n\n## @extend 继承\n\n\n // CSS\n .jdc_1 {\n font-size: 12px;\n color: red;\n }\n .jdc_2 {\n font-size: 12px;\n color: red;\n font-weight: bold;\n }\n\n // SCSS\n .jdc_1 {\n font-size: 12px;\n color: red;\n }\n .jdc_2 {\n @extend .jdc_1;\n font-weight: bold;\n }\n\n // 或者\n %font_red {\n font-size: 12px;\n color: red;\n }\n .jdc_1 {\n @extend %font_red;\n }\n .jdc_2 {\n @extend %font_red;\n font-weight: bold;\n }\n\n\n#### @for 循环\n\n // CSS\n .jdc_1 {background-position: 0 -20px;}\n .jdc_2 {background-position: 0 -40px;}\n .jdc_3 {background-position: 0 -60px;}\n\n // SCSS\n @for $i from 1 through 3 {\n .jdc_#{$i} {\n background-position: 0 (-20px) * $i;\n }\n }\n\n注意:`#{}` 是连接符,变量连接使用时需要依赖\n\n#### @each 循环\n\n // CSS\n .jdc_list {\n background-image: url(/img/jdc_list.png);\n }\n .jdc_detail {\n background-image: url(/img/jdc_detail.png);\n }\n\n // SCSS\n @each $name in list, detail {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n }\n }\n\n\n // CSS\n .jdc_list {\n background-image: url(/img/jdc_list.png);\n background-color: red;\n }\n .jdc_detail {\n background-image: url(/img/jdc_detail.png);\n background-color: blue;\n }\n\n // SCSS\n @each $name, $color in (list, red), (detail, blue) {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n background-color: $color;\n }\n }\n\n\n#### @function 函数\n\n @function pxToRem($px) {\n @return $px / 10px * 1rem;\n }\n .jdc {\n font-size: pxToRem(12px);\n }\n\n\n#### 运算规范\n\n运算符之间空出一个空格\n\n .jdc {\n width: 100px - 50px;\n height: 30px / 5;\n }\n\n注意运算单位,单位同时参与运算,所以 10px 不等于 10,乘除运算时需要特别注意\n\n // 正确的运算格式\n .jdc {\n width: 100px - 50px;\n width: 100px + 50px;\n width: 100px * 2;\n width: 100px / 2;\n }\n\n\n\n\n","date":"2015-12-07T12:14:29.000Z","updated":"2015-12-07T12:14:29.000Z","path":"docs/css/sass.html","_id":"cihvwnkna000k1xfy1cs6paso","comments":1,"layout":"page"},{"title":"重置样式","_content":"\n## 移动端\n\n```css\n\n* { -webkit-tap-highlight-color: transparent; outline: 0; margin: 0; padding: 0; vertical-align: baseline; }\nbody, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td { margin: 0; padding: 0; vertical-align: baseline; }\nimg { border: 0 none; vertical-align: top; }\ni, em { font-style: normal; }\nol, ul { list-style: none; }\ninput, select, button, h1, h2, h3, h4, h5, h6 { font-size: 100%; font-family: inherit; }\ntable { border-collapse: collapse; border-spacing: 0; }\na { text-decoration: none; color: #666; }\nbody { margin: 0 auto; min-width: 320px; max-width: 640px; height: 100%; font-size: 14px; font-family: Helvetica, STHeiti STXihei, Microsoft JhengHei, Microsoft YaHei, Arial; line-height: 1.5; color: #666; -webkit-text-size-adjust: 100% !important; text-size-adjust: 100% !important; }\ninput[type=\"text\"], textarea { -webkit-appearance: none; -moz-appearance: none; appearance: none; }\n\n```\n\n## PC端\n\n```css\nhtml, body, div, h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ol, ul, li, fieldset, form, label, input, legend, table, caption, tbody, tfoot, thead, tr, th, td, textarea, article, aside, audio, canvas, figure, footer, header, mark, menu, nav, section, time, video { margin: 0; padding: 0; }\nh1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal }\narticle, aside, dialog, figure, footer, header, hgroup, nav, section, blockquote { display: block; }\nul, ol { list-style: none; }\nimg { border: 0 none; vertical-align: top; }\nblockquote, q { quotes: none; }\nblockquote:before, blockquote:after, q:before, q:after { content: none; }\ntable { border-collapse: collapse; border-spacing: 0; }\nstrong, em, i { font-style: normal; font-weight: normal; }\nins { text-decoration: underline; }\ndel { text-decoration: line-through; }\nmark { background: none; }\ninput::-ms-clear { display: none !important; }\nbody { font: 12px/1.5 \\5FAE\\8F6F\\96C5\\9ED1, \\5B8B\\4F53, \"Hiragino Sans GB\", STHeiti, \"WenQuanYi Micro Hei\", \"Droid Sans Fallback\", SimSun, sans-serif; background: #fff; }\na { text-decoration: none; color: #333; }\na:hover { text-decoration: underline; }\n```\n","source":"docs/css/reset.md","raw":"title: 重置样式\n---\n\n## 移动端\n\n```css\n\n* { -webkit-tap-highlight-color: transparent; outline: 0; margin: 0; padding: 0; vertical-align: baseline; }\nbody, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td { margin: 0; padding: 0; vertical-align: baseline; }\nimg { border: 0 none; vertical-align: top; }\ni, em { font-style: normal; }\nol, ul { list-style: none; }\ninput, select, button, h1, h2, h3, h4, h5, h6 { font-size: 100%; font-family: inherit; }\ntable { border-collapse: collapse; border-spacing: 0; }\na { text-decoration: none; color: #666; }\nbody { margin: 0 auto; min-width: 320px; max-width: 640px; height: 100%; font-size: 14px; font-family: Helvetica, STHeiti STXihei, Microsoft JhengHei, Microsoft YaHei, Arial; line-height: 1.5; color: #666; -webkit-text-size-adjust: 100% !important; text-size-adjust: 100% !important; }\ninput[type=\"text\"], textarea { -webkit-appearance: none; -moz-appearance: none; appearance: none; }\n\n```\n\n## PC端\n\n```css\nhtml, body, div, h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ol, ul, li, fieldset, form, label, input, legend, table, caption, tbody, tfoot, thead, tr, th, td, textarea, article, aside, audio, canvas, figure, footer, header, mark, menu, nav, section, time, video { margin: 0; padding: 0; }\nh1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal }\narticle, aside, dialog, figure, footer, header, hgroup, nav, section, blockquote { display: block; }\nul, ol { list-style: none; }\nimg { border: 0 none; vertical-align: top; }\nblockquote, q { quotes: none; }\nblockquote:before, blockquote:after, q:before, q:after { content: none; }\ntable { border-collapse: collapse; border-spacing: 0; }\nstrong, em, i { font-style: normal; font-weight: normal; }\nins { text-decoration: underline; }\ndel { text-decoration: line-through; }\nmark { background: none; }\ninput::-ms-clear { display: none !important; }\nbody { font: 12px/1.5 \\5FAE\\8F6F\\96C5\\9ED1, \\5B8B\\4F53, \"Hiragino Sans GB\", STHeiti, \"WenQuanYi Micro Hei\", \"Droid Sans Fallback\", SimSun, sans-serif; background: #fff; }\na { text-decoration: none; color: #333; }\na:hover { text-decoration: underline; }\n```\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-02T08:36:09.000Z","path":"docs/css/reset.html","comments":1,"layout":"page","_id":"cihvwnknc000l1xfy0y9qozoy"},{"title":"媒体查询","_content":"\n设备尺寸参考 :[Mobile devices](http://mydevice.io/devices/)\n\n媒体查询类型浏览器支持情况:[CSS3 Media Queries overview](http://cssmediaqueries.com/overview.html)\n\n## 常用查询语句\n\n判断设备横竖屏\n\n```css\n/* 横屏 */\n@media all and (orientation :landscape) {\n\n} \n\n/* 竖屏 */\n@media all and (orientation :portrait) {\n\n}\n```\n\n判断设备宽高\n\n```css\n/* 设备宽度大于 320px 小于 640px */\n@media all and (min-width:320px) and (max-width:640px) {\n \n} \n```\n\n判断设备像素比\n\n```css\n/* 设备像素比为 1 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1), only screen and (min-device-pixel-ratio: 1) {\n \n}\n\n/* 设备像素比为 1.5 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {\n \n}\n\n/* 设备像素比为 2 */\n@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {\n \n}\n```\n\n## 常用设备设置\n\n### iPhones\n\n```css\n/* ----------- iPhone 4 and 4S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 5 and 5S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 6 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) { \n\n}\n\n/* ----------- iPhone 6+ ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: landscape) { \n\n}\n```\n\n### Galaxy Phones\n\n```css\n/* ----------- Galaxy S3 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S4 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S5 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n### HTC Phones\n\n```css\n/* ----------- HTC One ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n### iPads\n\n```css\n/* ----------- iPad mini ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 1 and 2 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 3 and 4 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n```\n\n\n","source":"docs/css/query.md","raw":"title: 媒体查询\n---\n\n设备尺寸参考 :[Mobile devices](http://mydevice.io/devices/)\n\n媒体查询类型浏览器支持情况:[CSS3 Media Queries overview](http://cssmediaqueries.com/overview.html)\n\n## 常用查询语句\n\n判断设备横竖屏\n\n```css\n/* 横屏 */\n@media all and (orientation :landscape) {\n\n} \n\n/* 竖屏 */\n@media all and (orientation :portrait) {\n\n}\n```\n\n判断设备宽高\n\n```css\n/* 设备宽度大于 320px 小于 640px */\n@media all and (min-width:320px) and (max-width:640px) {\n \n} \n```\n\n判断设备像素比\n\n```css\n/* 设备像素比为 1 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1), only screen and (min-device-pixel-ratio: 1) {\n \n}\n\n/* 设备像素比为 1.5 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {\n \n}\n\n/* 设备像素比为 2 */\n@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {\n \n}\n```\n\n## 常用设备设置\n\n### iPhones\n\n```css\n/* ----------- iPhone 4 and 4S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 5 and 5S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 6 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) { \n\n}\n\n/* ----------- iPhone 6+ ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: landscape) { \n\n}\n```\n\n### Galaxy Phones\n\n```css\n/* ----------- Galaxy S3 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S4 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S5 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n### HTC Phones\n\n```css\n/* ----------- HTC One ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n### iPads\n\n```css\n/* ----------- iPad mini ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 1 and 2 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 3 and 4 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n```\n\n\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-02T08:36:07.000Z","path":"docs/css/query.html","comments":1,"layout":"page","_id":"cihvwnknd000m1xfyeozyjjv5"},{"title":"注释规范","_content":"\n> Comments begin with the characters `/*` and end with the characters `*/`. They may occur anywhere outside other tokens, and their contents have no influence on the rendering. Comments may not be nested.\n\n* 注释以字符 `/*` 开始,以字符 `*/` 结束\n* 注释不能被嵌套\n\n```css\n/*Comment Text*/\n```\n\n### 团队约定 \n\n#### 单行注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,单独占一行,行与行之间相隔一行\n\n*推荐:*\n\n``` css\n/* Comment Text */\n.jdc{}\n\n/* Comment Text */\n.jdc{}\n```\n\n*不推荐:*\n\n```css\n/*Comment Text*/\n.jdc{\n\tdisplay: block;\n}\n.jdc{\n\tdisplay: block;/*Comment Text*/\n}\n```\n\n#### 模块注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,`/*` 与 模块信息描述占一行,多个横线分隔符`-`与`*/`占一行,行与行之间相隔两行\n\n*推荐:*\n\n```css\n/* Module A\n---------------------------------------------------------------- */\n.mod_a {}\n\n\n/* Module B\n---------------------------------------------------------------- */\n.mod_b {}\n```\n\n*不推荐:*\n\n```css\n/* Module A ---------------------------------------------------- */\n.mod_a {}\n/* Module B ---------------------------------------------------- */\n.mod_b {}\n```\n\n#### 文件信息注释\n\n在样式文件编码声明 `@charset` 语句下面注明页面名称、作者、创建日期等信息\n\n```css\n@charset \"UTF-8\";\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n```\n\n\n\n\n更多关于CSS注释:[#Comments](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#comments)\n\n\n\n","source":"docs/css/note.md","raw":"title: 注释规范\n---\n\n> Comments begin with the characters `/*` and end with the characters `*/`. They may occur anywhere outside other tokens, and their contents have no influence on the rendering. Comments may not be nested.\n\n* 注释以字符 `/*` 开始,以字符 `*/` 结束\n* 注释不能被嵌套\n\n```css\n/*Comment Text*/\n```\n\n### 团队约定 \n\n#### 单行注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,单独占一行,行与行之间相隔一行\n\n*推荐:*\n\n``` css\n/* Comment Text */\n.jdc{}\n\n/* Comment Text */\n.jdc{}\n```\n\n*不推荐:*\n\n```css\n/*Comment Text*/\n.jdc{\n\tdisplay: block;\n}\n.jdc{\n\tdisplay: block;/*Comment Text*/\n}\n```\n\n#### 模块注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,`/*` 与 模块信息描述占一行,多个横线分隔符`-`与`*/`占一行,行与行之间相隔两行\n\n*推荐:*\n\n```css\n/* Module A\n---------------------------------------------------------------- */\n.mod_a {}\n\n\n/* Module B\n---------------------------------------------------------------- */\n.mod_b {}\n```\n\n*不推荐:*\n\n```css\n/* Module A ---------------------------------------------------- */\n.mod_a {}\n/* Module B ---------------------------------------------------- */\n.mod_b {}\n```\n\n#### 文件信息注释\n\n在样式文件编码声明 `@charset` 语句下面注明页面名称、作者、创建日期等信息\n\n```css\n@charset \"UTF-8\";\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n```\n\n\n\n\n更多关于CSS注释:[#Comments](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#comments)\n\n\n\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-02T09:13:46.000Z","path":"docs/css/note.html","comments":1,"layout":"page","_id":"cihvwnknf000n1xfy1fk7dk9s"},{"_content":"## CSS规范\n\n### 代码规范\n\n#### 编码规范\n\nCSS样式表是一个序列通用字符集,传输和存储过程中,这些字符必须由支持 US-ASCII(例如 UTF-8, ISO 8859-x, SHIFT JIS 等)字符编码方式编译\n\n##### 文档内嵌样式表编码\n\n> When a style sheet is embedded in another document, such as in the STYLE element or \"style\" attribute of HTML, the style sheet shares the character encoding of the whole document.\n\n当样式出现在其它文档,如 HTML 的 STYLE 标签或标签属性 \"style\",样式的编码由文档的决定。\n\n##### 文档外链样式表编码\n\n> When a style sheet resides in a separate file, user agents must observe the following priorities when determining a style sheet's character encoding (from highest priority to lowest):\n\n> 1. An HTTP \"charset\" parameter in a \"Content-Type\" field (or similar parameters in other protocols)\n> 2. BOM and/or @charset \n> 3. or other metadata from the linking mechanism (if any)\n> 4. charset of referring style sheet or document (if any)\n> 5. Assume UTF-8\n\n文档外链样式表的编码可以由以下各项按照由高到低的优先级顺序决定:\n\n1. HTTP “Content-Type” 字段参数 “charset”(或其它协议相似的参数)\n2. BOM(byte-order mark)和(或)@charset\n3. Link 中的元数据设置(如果有的话)\n4. 引用样式表字符集或文档编码(如果有的话)\n5. 假定为 UTF-8 编码\n\n##### 关于 @charset\n\n> Authors using an @charset rule must place the rule at the very beginning of the style sheet, preceded by no characters. (If a byte order mark is appropriate for the encoding used, it may precede the @charset rule.)\n\n> @charset must be written literally, i.e., the 10 characters '@charset \"' (lowercase, no backslash escapes), followed by the encoding name, followed by '\";'.\n\n\n* @charset规则一定要在样式文件的第一行首个字符位置开始,否则的话就会有机会让 BOM 设置生效(如果有设置 BOM 的话)而优于 @charset 作为样式表的编码\n* `@charset \"\";` 一定要写上,并且用小写字母,不能出现转义符\n\n##### 团队约定\n\n* 样式文件必须写上 @charset 规则,并且一定要在样式文件的第一行首个字符位置开始写,编码名用 “UTF-8”\n* 字符 `@charset \"\";` 都用小写字母,不能出现转义符,编码名允许大小混写\n* 考虑到在使用“UTF-8”编码情况下 BOM 对代码的污染和编码显示的问题,在可控范围下,坚决不使用 BOM。(更多关于 BOM 可参考 [BOM的介绍](https://zh.wikipedia.org/wiki/%E4%BD%8D%E5%85%83%E7%B5%84%E9%A0%86%E5%BA%8F%E8%A8%98%E8%99%9F) 和 [「带 BOM 的 UTF-8」和「无 BOM 的 UTF-8」有什么区别?](http://www.zhihu.com/question/20167122) )\n\n*推荐:*\n\n```\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n*不推荐:*\n\n```\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n \n/* @charset规则不在文件首行首个字符开始 */\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n```\n@CHARSET \"UTF-8\";\n/* @charset规则没有用小写 */\n\n.jdc{}\n```\n\n```\n/* 无@charset规则 */\n.jdc{}\n```\n\n更多关于样式编码:[CSS style sheet representation](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#charset)\n\n#### 代码风格\n\n##### 代码格式化\n\n样式书写一般有两种:一种是紧凑格式 (Compact)\n\n```\n.jdc{ display: block;width: 50px;}\n```\n\n一种是展开格式(Expanded)\n\n```\n.jdc{\n display: block;\n width: 50px;\n}\n```\n\n**团队约定**\n\n统一使用展开格式书写样式\n\n\n\n##### 代码大小写\n\n样式选择器,属性名,属性值关键字全部使用小写字母书写,属性字符串允许使用大小写。\n\t\n\t/* 推荐 */\n\t.jdc{\n\t\tdisplay:block;\n\t}\n\t\n\t/* 不推荐 */\n\t.JDC{\n\t\tDISPLAY:BLOCK;\n\t}\n\n##### 选择器\n\n* 尽量少用通用选择器 `*`\n* 不使用 ID 选择器\n* 不使用无具体语义定义的标签选择器\n \n```\t\n/* 推荐 */\n .jdc {...}\n .jdc li {...}\n .jdc li p{...}\n\t\n/* 不推荐 */\n *{...}\n #jdc {...}\n .jdc div{...}\n```\n\t\n##### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n```\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n##### 分号\n\n每个属性声明末尾都要加分号;\n\n```\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n##### 代码易读性\n\n左括号与类名之间一个空格,冒号与属性值之间一个空格\n\n*推荐:*\n\n```\n.jdc { \n width: 100%; \n} \n```\n\n*不推荐:*\n\n```\n.jdc{ \n width:100%;\n} \n```\n\n\n逗号分隔的取值,逗号之后一个空格\n\n*推荐:*\n\n```\n.jdc {\n box-shadow: 1px 1px 1px #333, 2px 2px 2px #ccc;\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n box-shadow: 1px 1px 1px #333,2px 2px 2px #ccc;\n}\n```\n\n为单个css选择器或新申明开启新行\n\n*推荐:*\n\n```\n.jdc,\n.jdc_logo,\n.jdc_hd {\n\t...\n}\n.nav{\n\t...\n}\n```\n\n*不推荐:*\n\n```\n.jdc,jdc_logo,.jdc_hd {\n\t...\n}.nav{\n\t...\n}\n```\n\n颜色值 `rgb()` `rgba()` `hsl()` `hsla()` `rect()` 中不需有空格,且取值不要带有不必要的 0\n\n*推荐:*\n\n```\n.jdc {\n color: rgba(255,255,255,.5);\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n color: rgba( 255, 255, 255, 0.5 );\n}\n```\n\n属性值十六进制数值能用简写的尽量用简写\n\n*推荐:*\n\n```\n.jdc {\n color: #fff;\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n color: #ffffff;\n}\n```\n\n不要为 `0` 指明单位\n\n*推荐:*\n\n```\n.jdc {\n margin: 0 10px;\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n margin: 0px 10px;\n}\n```\n\n##### 属性值引号\n\ncss属性值需要用到引号时,统一使用单引号\n\n```\n/* 推荐 */\n.jdc { \n\tfont-family: 'Hiragino Sans GB';\n}\n\n/* 不推荐 */\n.jdc { \n\tfont-family: \"Hiragino Sans GB\";\n}\n```\n\n##### 属性书写顺序\n\n建议遵循以下顺序:\n\n1. 布局定位属性:display / position / float / clear / visibility / overflow \n2. 自身属性:width / height / margin / padding / border / background\n3. 文本属性:color / font / text-decoration / text-align / vertical-align / white- space / break-word\n4. 其他属性(CSS3):content / cursor / border-radius / box-shadow / text-shadow / background:linear-gradient ...\n\n```\n.jdc {\n\tdisplay: block;\n\tposition: relative;\n\tfloat: left;\n\twidth: 100px;\n\theight: 100px;\n\tmargin: 0 10px;\n\tpadding: 20px 0;\n\tfont-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;\n\tcolor: #333;\n\tbackground: rgba(0,0,0,.5);\n\t-webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n\n\n[mozilla官方属性顺序推荐](https://www.mozilla.org/css/base/content.css)\n\n##### CSS3浏览器私有前缀写法\n\nCSS3 浏览器私有前缀在前,标准前缀在后\n\n```\n.jdc {\n -webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n更多关于浏览器私有前辍写法:[#Vendor-specific extensions](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#vendor-keywords)\n\n### 注释规范\n\n> Comments begin with the characters `/*` and end with the characters `*/`. They may occur anywhere outside other tokens, and their contents have no influence on the rendering. Comments may not be nested.\n\n* 注释以字符 `/*` 开始,以字符 `*/` 结束\n* 注释不能被嵌套\n\n```\n/*Comment Text*/\n```\n\n#### 团队约定 \n\n##### 单行注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,单独占一行,行与行之间相隔一行\n\n*推荐:*\n\n```\n/* Comment Text */\n.jdc{}\n\n/* Comment Text */\n.jdc{}\n```\n\n*不推荐:*\n\n```\n/*Comment Text*/\n.jdc{\n\tdisplay: block;\n}\n.jdc{\n\tdisplay: block;/*Comment Text*/\n}\n```\n\n##### 模块注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,`/*` 与 模块信息描述占一行,多个横线分隔符`-`与`*/`占一行,行与行之间相隔两行\n\n*推荐:*\n\n```\n/* Module A\n---------------------------------------------------------------- */\n.mod_a {}\n\n\n/* Module B\n---------------------------------------------------------------- */\n.mod_b {}\n```\n\n*不推荐:*\n\n```\n/* Module A ---------------------------------------------------- */\n.mod_a {}\n/* Module B ---------------------------------------------------- */\n.mod_b {}\n```\n\n##### 文件信息注释\n\n在样式文件编码声明 `@charset` 语句下面注明页面名称、作者、创建日期等信息\n\n```\n@charset \"UTF-8\";\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n```\n\n\n\n\n更多关于CSS注释:[#Comments](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#comments)\n\n\n### SASS规范\n\n#### 语法选用\n\nSASS有两种语法格式,一种是 SCSS (Sassy CSS),另一种是缩进格式(Indented Syntax),有时称之为 Sass。\n\n##### SCSS\n\nSCSS语法基于 CSS 语法扩展,每一个有效的 CSS 文件都是一个有效的具有相同含义的 SCSS 文件,换种说法就是 SCSS 能识别大多数的 CSS hacks 写法和浏览器前缀写法以及早期的 IE 滤镜写法,这种格式以 .scss 作为扩展名。\n\n##### Sass\n\nSass 使用 “缩进” 代替 “花括号” 表示属性属于某个选择器,用 “换行” 代替 “分号” 分隔属性,很多人认为这样做比 SCSS 更容易阅读,书写也更快速。缩进格式也可以使用 Sass 的全部功能,只是与 SCSS 相比个别地方采取了不同的表达方式,具体请查看 [the indented syntax reference](http://sass-lang.com/documentation/file.INDENTED_SYNTAX.html)。这种格式以 .sass 作为拓展名。\n\n更详细的用法请阅读 SASS 官网文档:[DOCUMENTATION](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n##### 团队约定\n\n考虑到 SCSS 语法对 CSS 语法友好的兼容性和扩展性,我们在使用 SASS 编写样式的时候,统一使用 SCSS 语法\n\n#### 编码格式\n\n> When running on Ruby 1.9 and later, Sass is aware of the character encoding of documents. Sass follows the CSS spec to determine the encoding of a stylesheet, and falls back to the Ruby string encoding. This means that it first checks the Unicode byte order mark, then the @charset declaration, then the Ruby string encoding. If none of these are set, it will assume the document is in UTF-8.\n\n当在 Ruby1.9或更新的版本运行的时候,SASS 能识辨文档的字符编码。SASS 遵循 CSS 规范去确定样式文件的编码,进而转回 Ruby 字符串编码。这意味着SASS编译的时候会首先检测 BOM,然后到 @charset 声明,再到 Ruby 字符串编码,如果以上都没有设置,SASS 会假定文档的编码为 UTF-8\n\n##### 团队约定\n\n严格遵守上面 “代码规范” 中的 “编码规范”\n\n更多关于 SASS 编码:[SASS Encodings](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n#### SASS注释规范\n\nSASS支持 CSS 标准的多行注释 `/* */`,同时也支持单行注释 `//`。\n\n* 多行注释在使用非 Compressed 模式进行编译后的输出文件中会保留下来,单行注释 `//` 侧会被移除\n* 多行注释和单行注释在 SASS 编译后输出的压缩 CSS 文件都会被移除\n* 当多行注释内容第一个字符是感叹号 “!” 的时候,即 `/*! */`,SASS 无论用哪一种编译方式编译注释都会保留\n* 注释内容可以加入 SASS 变量\n\n##### 团队约定\n\nSCSS 文件内\n\n* 全部遵循 CSS 注释规范\n* 不使用 `/*! */` 注释方式\n* 注释内不放 SASS 变量\n\n标准的注释规范如下:\n\n```\n@charset \"UTF-8\";\n\n/**\n * @desc File Info\n * @author liqinuo\n * @date 2015-10-10\n */\n\n/* Module A\n----------------------------------------------------------------*/\n.mod_a {}\n\n/* module A logo */\n.mod_a_logo {}\n\n/* module A nav */\n.mod_a_nav {}\n\n/* Module B\n----------------------------------------------------------------*/\n.mod_b {}\n\n/* module B logo */\n.mod_b_logo {}\n\n/* module B nav */\n.mod_b_nav {}\n```\n\n#### 嵌套规范\n\n##### 选择器嵌套\n\n```\n// CSS\n.jdc {}\nbody .jdc {}\n\n// SCSS\n.jdc {\n body & {}\n}\n```\n\n```\n// CSS\n.jdc {}\n.jdc_cover {}\n.jdc_info {}\n.jdc_info_name {}\n\n// SCSS\n.jdc {\n &_cover {}\n &_info {\n &_name {}\n }\n}\n```\n##### 属性嵌套\n\n```\n// CSS\n.jdc {\n background-color: red;\n background-repeat: no-repeat;\n background-image: url(/img/icon.png);\n background-position: 0 0;\n}\n\n// SCSS\n.jdc {\n background: {\n color: red;\n repeat: no-repeat;\n image: url(/img/icon.png);\n position: 0 0;\n }\n}\n```\n\n#### 变量\n\n可复用属性尽量抽离为页面变量,易于统一维护\n\n```\n// CSS\n.jdc {\n color: red;\n border-color: red;\n}\n\n// SCSS\n$color: red;\n.jdc {\n color: $color;\n border-color: $color;\n}\n```\n\n#### 混合(mixin)\n\n根据功能定义模块,然后在需要使用的地方通过 `@include` 调用,避免编码时重复输入代码段\n\n```\n// CSS\n.jdc_1 {\n -webkit-border-radius: 5px;\n border-radius: 5px;\n}\n.jdc_2 {\n -webkit-border-radius: 10px;\n border-radius: 10px;\n}\n\n// SCSS\n@mixin radius($radius:5px) {\n -webkit-border-radius: $radius;\n border-radius: $radius;\n}\n.jdc_1 {\n @include radius; //参数使用默认值\n}\n.jdc_2 {\n @include radius(10px);\n}\n```\n\n```\n// CSS\n.jdc_1 {\n background: url(/img/icon.png) no-repeat -10px 0;\n}\n.jdc_2 {\n background: url(/img/icon.png) no-repeat -20px 0;\n}\n\n// SCSS\n@mixin icon($x:0, $y:0) {\n background: url(/img/icon.png) no-repeat $x, $y;\n}\n.jdc_1 {\n @include icon(-10px, 0);\n}\n.jdc_2 {\n @include icon(-20px, 0);\n}\n```\t\n\n#### 占位选择器 %\n\n如果不调用则不会有任何多余的 css 文件,占位选择器以 `%` 标识定义,通过 `@extend` 调用\n\n```\n//scss\n%borderbox {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n.jdc {\n @extend %borderbox;\n}\n```\n\n#### @extend 继承\n\n```\n// CSS\n.jdc_1 {\n font-size: 12px;\n color: red;\n}\n.jdc_2 {\n font-size: 12px;\n color: red;\n font-weight: bold;\n}\n\n// SCSS\n.jdc_1 {\n font-size: 12px;\n color: red;\n}\n.jdc_2 {\n @extend .jdc_1;\n font-weight: bold;\n}\n\n// 或者\n%font_red {\n font-size: 12px;\n color: red;\n}\n.jdc_1 {\n @extend %font_red;\n}\n.jdc_2 {\n @extend %font_red;\n font-weight: bold;\n}\n```\n\n#### @for 循环\n\n```\n// CSS\n.jdc_1 {background-position: 0 -20px;}\n.jdc_2 {background-position: 0 -40px;}\n.jdc_3 {background-position: 0 -60px;}\n\n// SCSS\n@for $i from 1 through 3 {\n .jdc_#{$i} {\n background-position: 0 (-20px) * $i;\n }\n}\n```\n注意:`#{}` 是连接符,变量连接使用时需要依赖\n\n#### @each 循环\n\n```\n// CSS\n.jdc_list {\n background-image: url(/img/jdc_list.png);\n}\n.jdc_detail {\n background-image: url(/img/jdc_detail.png);\n}\n\n// SCSS\n@each $name in list, detail {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n }\n}\n```\n\n```\n// CSS\n.jdc_list {\n background-image: url(/img/jdc_list.png);\n background-color: red;\n}\n.jdc_detail {\n background-image: url(/img/jdc_detail.png);\n background-color: blue;\n}\n\n// SCSS\n@each $name, $color in (list, red), (detail, blue) {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n background-color: $color;\n }\n}\n```\n\n#### @function 函数\n\n```\n@function pxToRem($px) {\n @return $px / 10px * 1rem;\n}\n.jdc {\n font-size: pxToRem(12px);\n}\n```\n\n#### 运算规范\n\n运算符之间空出一个空格\n\n```\n.jdc {\n width: 100px - 50px;\n height: 30px / 5;\n}\n```\n\n注意运算单位,单位同时参与运算,所以 10px 不等于 10,乘除运算时需要特别注意\n\n```\n// 正确的运算格式\n.jdc {\n width: 100px - 50px;\n width: 100px + 50px;\n width: 100px * 2;\n width: 100px / 2;\n}\n```\n\n### 重置样式\n\n#### 移动端\n\n```\n* { -webkit-tap-highlight-color: transparent; outline: 0; margin: 0; padding: 0; vertical-align: baseline; }\nbody, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td { margin: 0; padding: 0; vertical-align: baseline; }\nimg { border: 0 none; vertical-align: top; }\ni, em { font-style: normal; }\nol, ul { list-style: none; }\ninput, select, button, h1, h2, h3, h4, h5, h6 { font-size: 100%; font-family: inherit; }\ntable { border-collapse: collapse; border-spacing: 0; }\na { text-decoration: none; color: #666; }\nbody { margin: 0 auto; min-width: 320px; max-width: 640px; height: 100%; font-size: 14px; font-family: Helvetica, STHeiti STXihei, Microsoft JhengHei, Microsoft YaHei, Arial; line-height: 1.5; color: #666; -webkit-text-size-adjust: 100% !important; text-size-adjust: 100% !important; }\ninput[type=\"text\"], textarea { -webkit-appearance: none; -moz-appearance: none; appearance: none; }\n```\n\n#### PC端\n\n```\nhtml, body, div, h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ol, ul, li, fieldset, form, label, input, legend, table, caption, tbody, tfoot, thead, tr, th, td, textarea, article, aside, audio, canvas, figure, footer, header, mark, menu, nav, section, time, video { margin: 0; padding: 0; }\nh1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal }\narticle, aside, dialog, figure, footer, header, hgroup, nav, section, blockquote { display: block; }\nul, ol { list-style: none; }\nimg { border: 0 none; vertical-align: top; }\nblockquote, q { quotes: none; }\nblockquote:before, blockquote:after, q:before, q:after { content: none; }\ntable { border-collapse: collapse; border-spacing: 0; }\nstrong, em, i { font-style: normal; font-weight: normal; }\nins { text-decoration: underline; }\ndel { text-decoration: line-through; }\nmark { background: none; }\ninput::-ms-clear { display: none !important; }\nbody { font: 12px/1.5 \\5FAE\\8F6F\\96C5\\9ED1, \\5B8B\\4F53, \"Hiragino Sans GB\", STHeiti, \"WenQuanYi Micro Hei\", \"Droid Sans Fallback\", SimSun, sans-serif; background: #fff; }\na { text-decoration: none; color: #333; }\na:hover { text-decoration: underline; }\n```\n\n### 媒体查询\n\n设备尺寸参考 :[Mobile devices](http://mydevice.io/devices/)\n\n媒体查询类型浏览器支持情况:[CSS3 Media Queries overview](http://cssmediaqueries.com/overview.html)\n\n#### 常用查询语句\n\n判断设备横竖屏\n\n```\n/* 横屏 */\n@media all and (orientation :landscape) {\n\n} \n\n/* 竖屏 */\n@media all and (orientation :portrait) {\n\n}\n```\n\n判断设备宽高\n\n```\n/* 设备宽度大于 320px 小于 640px */\n@media all and (min-width:320px) and (max-width:640px) {\n \n} \n```\n\n判断设备像素比\n\n```\n/* 设备像素比为 1 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1), only screen and (min-device-pixel-ratio: 1) {\n \n}\n\n/* 设备像素比为 1.5 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {\n \n}\n\n/* 设备像素比为 2 */\n@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {\n \n}\n```\n\n#### 常用设备设置\n\n##### iPhones\n\n```\n/* ----------- iPhone 4 and 4S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 5 and 5S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 6 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) { \n\n}\n\n/* ----------- iPhone 6+ ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: landscape) { \n\n}\n```\n\n##### Galaxy Phones\n\n```\n/* ----------- Galaxy S3 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S4 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S5 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n##### HTC Phones\n\n```\n/* ----------- HTC One ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n##### iPads\n\n```\n/* ----------- iPad mini ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 1 and 2 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 3 and 4 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n```","source":"docs/css/jdc_fd_guide_css.md","raw":"## CSS规范\n\n### 代码规范\n\n#### 编码规范\n\nCSS样式表是一个序列通用字符集,传输和存储过程中,这些字符必须由支持 US-ASCII(例如 UTF-8, ISO 8859-x, SHIFT JIS 等)字符编码方式编译\n\n##### 文档内嵌样式表编码\n\n> When a style sheet is embedded in another document, such as in the STYLE element or \"style\" attribute of HTML, the style sheet shares the character encoding of the whole document.\n\n当样式出现在其它文档,如 HTML 的 STYLE 标签或标签属性 \"style\",样式的编码由文档的决定。\n\n##### 文档外链样式表编码\n\n> When a style sheet resides in a separate file, user agents must observe the following priorities when determining a style sheet's character encoding (from highest priority to lowest):\n\n> 1. An HTTP \"charset\" parameter in a \"Content-Type\" field (or similar parameters in other protocols)\n> 2. BOM and/or @charset \n> 3. or other metadata from the linking mechanism (if any)\n> 4. charset of referring style sheet or document (if any)\n> 5. Assume UTF-8\n\n文档外链样式表的编码可以由以下各项按照由高到低的优先级顺序决定:\n\n1. HTTP “Content-Type” 字段参数 “charset”(或其它协议相似的参数)\n2. BOM(byte-order mark)和(或)@charset\n3. Link 中的元数据设置(如果有的话)\n4. 引用样式表字符集或文档编码(如果有的话)\n5. 假定为 UTF-8 编码\n\n##### 关于 @charset\n\n> Authors using an @charset rule must place the rule at the very beginning of the style sheet, preceded by no characters. (If a byte order mark is appropriate for the encoding used, it may precede the @charset rule.)\n\n> @charset must be written literally, i.e., the 10 characters '@charset \"' (lowercase, no backslash escapes), followed by the encoding name, followed by '\";'.\n\n\n* @charset规则一定要在样式文件的第一行首个字符位置开始,否则的话就会有机会让 BOM 设置生效(如果有设置 BOM 的话)而优于 @charset 作为样式表的编码\n* `@charset \"\";` 一定要写上,并且用小写字母,不能出现转义符\n\n##### 团队约定\n\n* 样式文件必须写上 @charset 规则,并且一定要在样式文件的第一行首个字符位置开始写,编码名用 “UTF-8”\n* 字符 `@charset \"\";` 都用小写字母,不能出现转义符,编码名允许大小混写\n* 考虑到在使用“UTF-8”编码情况下 BOM 对代码的污染和编码显示的问题,在可控范围下,坚决不使用 BOM。(更多关于 BOM 可参考 [BOM的介绍](https://zh.wikipedia.org/wiki/%E4%BD%8D%E5%85%83%E7%B5%84%E9%A0%86%E5%BA%8F%E8%A8%98%E8%99%9F) 和 [「带 BOM 的 UTF-8」和「无 BOM 的 UTF-8」有什么区别?](http://www.zhihu.com/question/20167122) )\n\n*推荐:*\n\n```\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n*不推荐:*\n\n```\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n \n/* @charset规则不在文件首行首个字符开始 */\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n```\n@CHARSET \"UTF-8\";\n/* @charset规则没有用小写 */\n\n.jdc{}\n```\n\n```\n/* 无@charset规则 */\n.jdc{}\n```\n\n更多关于样式编码:[CSS style sheet representation](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#charset)\n\n#### 代码风格\n\n##### 代码格式化\n\n样式书写一般有两种:一种是紧凑格式 (Compact)\n\n```\n.jdc{ display: block;width: 50px;}\n```\n\n一种是展开格式(Expanded)\n\n```\n.jdc{\n display: block;\n width: 50px;\n}\n```\n\n**团队约定**\n\n统一使用展开格式书写样式\n\n\n\n##### 代码大小写\n\n样式选择器,属性名,属性值关键字全部使用小写字母书写,属性字符串允许使用大小写。\n\t\n\t/* 推荐 */\n\t.jdc{\n\t\tdisplay:block;\n\t}\n\t\n\t/* 不推荐 */\n\t.JDC{\n\t\tDISPLAY:BLOCK;\n\t}\n\n##### 选择器\n\n* 尽量少用通用选择器 `*`\n* 不使用 ID 选择器\n* 不使用无具体语义定义的标签选择器\n \n```\t\n/* 推荐 */\n .jdc {...}\n .jdc li {...}\n .jdc li p{...}\n\t\n/* 不推荐 */\n *{...}\n #jdc {...}\n .jdc div{...}\n```\n\t\n##### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n```\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n##### 分号\n\n每个属性声明末尾都要加分号;\n\n```\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n##### 代码易读性\n\n左括号与类名之间一个空格,冒号与属性值之间一个空格\n\n*推荐:*\n\n```\n.jdc { \n width: 100%; \n} \n```\n\n*不推荐:*\n\n```\n.jdc{ \n width:100%;\n} \n```\n\n\n逗号分隔的取值,逗号之后一个空格\n\n*推荐:*\n\n```\n.jdc {\n box-shadow: 1px 1px 1px #333, 2px 2px 2px #ccc;\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n box-shadow: 1px 1px 1px #333,2px 2px 2px #ccc;\n}\n```\n\n为单个css选择器或新申明开启新行\n\n*推荐:*\n\n```\n.jdc,\n.jdc_logo,\n.jdc_hd {\n\t...\n}\n.nav{\n\t...\n}\n```\n\n*不推荐:*\n\n```\n.jdc,jdc_logo,.jdc_hd {\n\t...\n}.nav{\n\t...\n}\n```\n\n颜色值 `rgb()` `rgba()` `hsl()` `hsla()` `rect()` 中不需有空格,且取值不要带有不必要的 0\n\n*推荐:*\n\n```\n.jdc {\n color: rgba(255,255,255,.5);\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n color: rgba( 255, 255, 255, 0.5 );\n}\n```\n\n属性值十六进制数值能用简写的尽量用简写\n\n*推荐:*\n\n```\n.jdc {\n color: #fff;\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n color: #ffffff;\n}\n```\n\n不要为 `0` 指明单位\n\n*推荐:*\n\n```\n.jdc {\n margin: 0 10px;\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n margin: 0px 10px;\n}\n```\n\n##### 属性值引号\n\ncss属性值需要用到引号时,统一使用单引号\n\n```\n/* 推荐 */\n.jdc { \n\tfont-family: 'Hiragino Sans GB';\n}\n\n/* 不推荐 */\n.jdc { \n\tfont-family: \"Hiragino Sans GB\";\n}\n```\n\n##### 属性书写顺序\n\n建议遵循以下顺序:\n\n1. 布局定位属性:display / position / float / clear / visibility / overflow \n2. 自身属性:width / height / margin / padding / border / background\n3. 文本属性:color / font / text-decoration / text-align / vertical-align / white- space / break-word\n4. 其他属性(CSS3):content / cursor / border-radius / box-shadow / text-shadow / background:linear-gradient ...\n\n```\n.jdc {\n\tdisplay: block;\n\tposition: relative;\n\tfloat: left;\n\twidth: 100px;\n\theight: 100px;\n\tmargin: 0 10px;\n\tpadding: 20px 0;\n\tfont-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;\n\tcolor: #333;\n\tbackground: rgba(0,0,0,.5);\n\t-webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n\n\n[mozilla官方属性顺序推荐](https://www.mozilla.org/css/base/content.css)\n\n##### CSS3浏览器私有前缀写法\n\nCSS3 浏览器私有前缀在前,标准前缀在后\n\n```\n.jdc {\n -webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n更多关于浏览器私有前辍写法:[#Vendor-specific extensions](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#vendor-keywords)\n\n### 注释规范\n\n> Comments begin with the characters `/*` and end with the characters `*/`. They may occur anywhere outside other tokens, and their contents have no influence on the rendering. Comments may not be nested.\n\n* 注释以字符 `/*` 开始,以字符 `*/` 结束\n* 注释不能被嵌套\n\n```\n/*Comment Text*/\n```\n\n#### 团队约定 \n\n##### 单行注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,单独占一行,行与行之间相隔一行\n\n*推荐:*\n\n```\n/* Comment Text */\n.jdc{}\n\n/* Comment Text */\n.jdc{}\n```\n\n*不推荐:*\n\n```\n/*Comment Text*/\n.jdc{\n\tdisplay: block;\n}\n.jdc{\n\tdisplay: block;/*Comment Text*/\n}\n```\n\n##### 模块注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,`/*` 与 模块信息描述占一行,多个横线分隔符`-`与`*/`占一行,行与行之间相隔两行\n\n*推荐:*\n\n```\n/* Module A\n---------------------------------------------------------------- */\n.mod_a {}\n\n\n/* Module B\n---------------------------------------------------------------- */\n.mod_b {}\n```\n\n*不推荐:*\n\n```\n/* Module A ---------------------------------------------------- */\n.mod_a {}\n/* Module B ---------------------------------------------------- */\n.mod_b {}\n```\n\n##### 文件信息注释\n\n在样式文件编码声明 `@charset` 语句下面注明页面名称、作者、创建日期等信息\n\n```\n@charset \"UTF-8\";\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n```\n\n\n\n\n更多关于CSS注释:[#Comments](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#comments)\n\n\n### SASS规范\n\n#### 语法选用\n\nSASS有两种语法格式,一种是 SCSS (Sassy CSS),另一种是缩进格式(Indented Syntax),有时称之为 Sass。\n\n##### SCSS\n\nSCSS语法基于 CSS 语法扩展,每一个有效的 CSS 文件都是一个有效的具有相同含义的 SCSS 文件,换种说法就是 SCSS 能识别大多数的 CSS hacks 写法和浏览器前缀写法以及早期的 IE 滤镜写法,这种格式以 .scss 作为扩展名。\n\n##### Sass\n\nSass 使用 “缩进” 代替 “花括号” 表示属性属于某个选择器,用 “换行” 代替 “分号” 分隔属性,很多人认为这样做比 SCSS 更容易阅读,书写也更快速。缩进格式也可以使用 Sass 的全部功能,只是与 SCSS 相比个别地方采取了不同的表达方式,具体请查看 [the indented syntax reference](http://sass-lang.com/documentation/file.INDENTED_SYNTAX.html)。这种格式以 .sass 作为拓展名。\n\n更详细的用法请阅读 SASS 官网文档:[DOCUMENTATION](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n##### 团队约定\n\n考虑到 SCSS 语法对 CSS 语法友好的兼容性和扩展性,我们在使用 SASS 编写样式的时候,统一使用 SCSS 语法\n\n#### 编码格式\n\n> When running on Ruby 1.9 and later, Sass is aware of the character encoding of documents. Sass follows the CSS spec to determine the encoding of a stylesheet, and falls back to the Ruby string encoding. This means that it first checks the Unicode byte order mark, then the @charset declaration, then the Ruby string encoding. If none of these are set, it will assume the document is in UTF-8.\n\n当在 Ruby1.9或更新的版本运行的时候,SASS 能识辨文档的字符编码。SASS 遵循 CSS 规范去确定样式文件的编码,进而转回 Ruby 字符串编码。这意味着SASS编译的时候会首先检测 BOM,然后到 @charset 声明,再到 Ruby 字符串编码,如果以上都没有设置,SASS 会假定文档的编码为 UTF-8\n\n##### 团队约定\n\n严格遵守上面 “代码规范” 中的 “编码规范”\n\n更多关于 SASS 编码:[SASS Encodings](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n#### SASS注释规范\n\nSASS支持 CSS 标准的多行注释 `/* */`,同时也支持单行注释 `//`。\n\n* 多行注释在使用非 Compressed 模式进行编译后的输出文件中会保留下来,单行注释 `//` 侧会被移除\n* 多行注释和单行注释在 SASS 编译后输出的压缩 CSS 文件都会被移除\n* 当多行注释内容第一个字符是感叹号 “!” 的时候,即 `/*! */`,SASS 无论用哪一种编译方式编译注释都会保留\n* 注释内容可以加入 SASS 变量\n\n##### 团队约定\n\nSCSS 文件内\n\n* 全部遵循 CSS 注释规范\n* 不使用 `/*! */` 注释方式\n* 注释内不放 SASS 变量\n\n标准的注释规范如下:\n\n```\n@charset \"UTF-8\";\n\n/**\n * @desc File Info\n * @author liqinuo\n * @date 2015-10-10\n */\n\n/* Module A\n----------------------------------------------------------------*/\n.mod_a {}\n\n/* module A logo */\n.mod_a_logo {}\n\n/* module A nav */\n.mod_a_nav {}\n\n/* Module B\n----------------------------------------------------------------*/\n.mod_b {}\n\n/* module B logo */\n.mod_b_logo {}\n\n/* module B nav */\n.mod_b_nav {}\n```\n\n#### 嵌套规范\n\n##### 选择器嵌套\n\n```\n// CSS\n.jdc {}\nbody .jdc {}\n\n// SCSS\n.jdc {\n body & {}\n}\n```\n\n```\n// CSS\n.jdc {}\n.jdc_cover {}\n.jdc_info {}\n.jdc_info_name {}\n\n// SCSS\n.jdc {\n &_cover {}\n &_info {\n &_name {}\n }\n}\n```\n##### 属性嵌套\n\n```\n// CSS\n.jdc {\n background-color: red;\n background-repeat: no-repeat;\n background-image: url(/img/icon.png);\n background-position: 0 0;\n}\n\n// SCSS\n.jdc {\n background: {\n color: red;\n repeat: no-repeat;\n image: url(/img/icon.png);\n position: 0 0;\n }\n}\n```\n\n#### 变量\n\n可复用属性尽量抽离为页面变量,易于统一维护\n\n```\n// CSS\n.jdc {\n color: red;\n border-color: red;\n}\n\n// SCSS\n$color: red;\n.jdc {\n color: $color;\n border-color: $color;\n}\n```\n\n#### 混合(mixin)\n\n根据功能定义模块,然后在需要使用的地方通过 `@include` 调用,避免编码时重复输入代码段\n\n```\n// CSS\n.jdc_1 {\n -webkit-border-radius: 5px;\n border-radius: 5px;\n}\n.jdc_2 {\n -webkit-border-radius: 10px;\n border-radius: 10px;\n}\n\n// SCSS\n@mixin radius($radius:5px) {\n -webkit-border-radius: $radius;\n border-radius: $radius;\n}\n.jdc_1 {\n @include radius; //参数使用默认值\n}\n.jdc_2 {\n @include radius(10px);\n}\n```\n\n```\n// CSS\n.jdc_1 {\n background: url(/img/icon.png) no-repeat -10px 0;\n}\n.jdc_2 {\n background: url(/img/icon.png) no-repeat -20px 0;\n}\n\n// SCSS\n@mixin icon($x:0, $y:0) {\n background: url(/img/icon.png) no-repeat $x, $y;\n}\n.jdc_1 {\n @include icon(-10px, 0);\n}\n.jdc_2 {\n @include icon(-20px, 0);\n}\n```\t\n\n#### 占位选择器 %\n\n如果不调用则不会有任何多余的 css 文件,占位选择器以 `%` 标识定义,通过 `@extend` 调用\n\n```\n//scss\n%borderbox {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n.jdc {\n @extend %borderbox;\n}\n```\n\n#### @extend 继承\n\n```\n// CSS\n.jdc_1 {\n font-size: 12px;\n color: red;\n}\n.jdc_2 {\n font-size: 12px;\n color: red;\n font-weight: bold;\n}\n\n// SCSS\n.jdc_1 {\n font-size: 12px;\n color: red;\n}\n.jdc_2 {\n @extend .jdc_1;\n font-weight: bold;\n}\n\n// 或者\n%font_red {\n font-size: 12px;\n color: red;\n}\n.jdc_1 {\n @extend %font_red;\n}\n.jdc_2 {\n @extend %font_red;\n font-weight: bold;\n}\n```\n\n#### @for 循环\n\n```\n// CSS\n.jdc_1 {background-position: 0 -20px;}\n.jdc_2 {background-position: 0 -40px;}\n.jdc_3 {background-position: 0 -60px;}\n\n// SCSS\n@for $i from 1 through 3 {\n .jdc_#{$i} {\n background-position: 0 (-20px) * $i;\n }\n}\n```\n注意:`#{}` 是连接符,变量连接使用时需要依赖\n\n#### @each 循环\n\n```\n// CSS\n.jdc_list {\n background-image: url(/img/jdc_list.png);\n}\n.jdc_detail {\n background-image: url(/img/jdc_detail.png);\n}\n\n// SCSS\n@each $name in list, detail {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n }\n}\n```\n\n```\n// CSS\n.jdc_list {\n background-image: url(/img/jdc_list.png);\n background-color: red;\n}\n.jdc_detail {\n background-image: url(/img/jdc_detail.png);\n background-color: blue;\n}\n\n// SCSS\n@each $name, $color in (list, red), (detail, blue) {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n background-color: $color;\n }\n}\n```\n\n#### @function 函数\n\n```\n@function pxToRem($px) {\n @return $px / 10px * 1rem;\n}\n.jdc {\n font-size: pxToRem(12px);\n}\n```\n\n#### 运算规范\n\n运算符之间空出一个空格\n\n```\n.jdc {\n width: 100px - 50px;\n height: 30px / 5;\n}\n```\n\n注意运算单位,单位同时参与运算,所以 10px 不等于 10,乘除运算时需要特别注意\n\n```\n// 正确的运算格式\n.jdc {\n width: 100px - 50px;\n width: 100px + 50px;\n width: 100px * 2;\n width: 100px / 2;\n}\n```\n\n### 重置样式\n\n#### 移动端\n\n```\n* { -webkit-tap-highlight-color: transparent; outline: 0; margin: 0; padding: 0; vertical-align: baseline; }\nbody, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td { margin: 0; padding: 0; vertical-align: baseline; }\nimg { border: 0 none; vertical-align: top; }\ni, em { font-style: normal; }\nol, ul { list-style: none; }\ninput, select, button, h1, h2, h3, h4, h5, h6 { font-size: 100%; font-family: inherit; }\ntable { border-collapse: collapse; border-spacing: 0; }\na { text-decoration: none; color: #666; }\nbody { margin: 0 auto; min-width: 320px; max-width: 640px; height: 100%; font-size: 14px; font-family: Helvetica, STHeiti STXihei, Microsoft JhengHei, Microsoft YaHei, Arial; line-height: 1.5; color: #666; -webkit-text-size-adjust: 100% !important; text-size-adjust: 100% !important; }\ninput[type=\"text\"], textarea { -webkit-appearance: none; -moz-appearance: none; appearance: none; }\n```\n\n#### PC端\n\n```\nhtml, body, div, h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ol, ul, li, fieldset, form, label, input, legend, table, caption, tbody, tfoot, thead, tr, th, td, textarea, article, aside, audio, canvas, figure, footer, header, mark, menu, nav, section, time, video { margin: 0; padding: 0; }\nh1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal }\narticle, aside, dialog, figure, footer, header, hgroup, nav, section, blockquote { display: block; }\nul, ol { list-style: none; }\nimg { border: 0 none; vertical-align: top; }\nblockquote, q { quotes: none; }\nblockquote:before, blockquote:after, q:before, q:after { content: none; }\ntable { border-collapse: collapse; border-spacing: 0; }\nstrong, em, i { font-style: normal; font-weight: normal; }\nins { text-decoration: underline; }\ndel { text-decoration: line-through; }\nmark { background: none; }\ninput::-ms-clear { display: none !important; }\nbody { font: 12px/1.5 \\5FAE\\8F6F\\96C5\\9ED1, \\5B8B\\4F53, \"Hiragino Sans GB\", STHeiti, \"WenQuanYi Micro Hei\", \"Droid Sans Fallback\", SimSun, sans-serif; background: #fff; }\na { text-decoration: none; color: #333; }\na:hover { text-decoration: underline; }\n```\n\n### 媒体查询\n\n设备尺寸参考 :[Mobile devices](http://mydevice.io/devices/)\n\n媒体查询类型浏览器支持情况:[CSS3 Media Queries overview](http://cssmediaqueries.com/overview.html)\n\n#### 常用查询语句\n\n判断设备横竖屏\n\n```\n/* 横屏 */\n@media all and (orientation :landscape) {\n\n} \n\n/* 竖屏 */\n@media all and (orientation :portrait) {\n\n}\n```\n\n判断设备宽高\n\n```\n/* 设备宽度大于 320px 小于 640px */\n@media all and (min-width:320px) and (max-width:640px) {\n \n} \n```\n\n判断设备像素比\n\n```\n/* 设备像素比为 1 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1), only screen and (min-device-pixel-ratio: 1) {\n \n}\n\n/* 设备像素比为 1.5 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {\n \n}\n\n/* 设备像素比为 2 */\n@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {\n \n}\n```\n\n#### 常用设备设置\n\n##### iPhones\n\n```\n/* ----------- iPhone 4 and 4S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 5 and 5S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 6 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) { \n\n}\n\n/* ----------- iPhone 6+ ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: landscape) { \n\n}\n```\n\n##### Galaxy Phones\n\n```\n/* ----------- Galaxy S3 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S4 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S5 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n##### HTC Phones\n\n```\n/* ----------- HTC One ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n##### iPads\n\n```\n/* ----------- iPad mini ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 1 and 2 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 3 and 4 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n```","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-02T07:17:09.000Z","path":"docs/css/jdc_fd_guide_css.html","title":"","comments":1,"layout":"page","_id":"cihvwnknh000o1xfymgwvq01v"},{"title":"代码规范","_content":"\n## 编码规范\n\nCSS样式表是一个序列通用字符集,传输和存储过程中,这些字符必须由支持 US-ASCII(例如 UTF-8, ISO 8859-x, SHIFT JIS 等)字符编码方式编译\n\n### 文档内嵌样式表编码\n\n> When a style sheet is embedded in another document, such as in the STYLE element or \"style\" attribute of HTML, the style sheet shares the character encoding of the whole document.\n\n当样式出现在其它文档,如 HTML 的 STYLE 标签或标签属性 \"style\",样式的编码由文档的决定。\n\n### 文档外链样式表编码\n\n> When a style sheet resides in a separate file, user agents must observe the following priorities when determining a style sheet's character encoding (from highest priority to lowest):\n\n> 1. An HTTP \"charset\" parameter in a \"Content-Type\" field (or similar parameters in other protocols)\n> 2. BOM and/or @charset \n> 3. or other metadata from the linking mechanism (if any)\n> 4. charset of referring style sheet or document (if any)\n> 5. Assume UTF-8\n\n文档外链样式表的编码可以由以下各项按照由高到低的优先级顺序决定:\n\n1. HTTP “Content-Type” 字段参数 “charset”(或其它协议相似的参数)\n2. BOM(byte-order mark)和(或)@charset\n3. Link 中的元数据设置(如果有的话)\n4. 引用样式表字符集或文档编码(如果有的话)\n5. 假定为 UTF-8 编码\n\n### 关于 @charset\n\n> Authors using an @charset rule must place the rule at the very beginning of the style sheet, preceded by no characters. (If a byte order mark is appropriate for the encoding used, it may precede the @charset rule.)\n\n> @charset must be written literally, i.e., the 10 characters '@charset \"' (lowercase, no backslash escapes), followed by the encoding name, followed by '\";'.\n\n\n* @charset规则一定要在样式文件的第一行首个字符位置开始,否则的话就会有机会让 BOM 设置生效(如果有设置 BOM 的话)而优于 @charset 作为样式表的编码\n* `@charset \"\";` 一定要写上,并且用小写字母,不能出现转义符\n\n### 团队约定\n\n* 样式文件必须写上 @charset 规则,并且一定要在样式文件的第一行首个字符位置开始写,编码名用 “UTF-8”\n* 字符 `@charset \"\";` 都用小写字母,不能出现转义符,编码名允许大小混写\n* 考虑到在使用“UTF-8”编码情况下 BOM 对代码的污染和编码显示的问题,在可控范围下,坚决不使用 BOM。(更多关于 BOM 可参考 [BOM的介绍](https://zh.wikipedia.org/wiki/%E4%BD%8D%E5%85%83%E7%B5%84%E9%A0%86%E5%BA%8F%E8%A8%98%E8%99%9F) 和 [「带 BOM 的 UTF-8」和「无 BOM 的 UTF-8」有什么区别?](http://www.zhihu.com/question/20167122) )\n\n*推荐:*\n\n```css\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n*不推荐:*\n\n```css\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n \n/* @charset规则不在文件首行首个字符开始 */\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n```css\n@CHARSET \"UTF-8\";\n/* @charset规则没有用小写 */\n\n.jdc{}\n```\n\n```css\n/* 无@charset规则 */\n.jdc{}\n```\n\n更多关于样式编码:[CSS style sheet representation](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#charset)\n\n## 代码风格\n\n### 代码格式化\n\n样式书写一般有两种:一种是紧凑格式 (Compact)\n\n```css\n.jdc{ display: block;width: 50px;}\n```\n\n一种是展开格式(Expanded)\n\n```css\n.jdc{\n display: block;\n width: 50px;\n}\n```\n\n**团队约定**\n\n统一使用展开格式书写样式\n\n\n\n### 代码大小写\n\n样式选择器,属性名,属性值关键字全部使用小写字母书写,属性字符串允许使用大小写。\n\t\n\t/* 推荐 */\n\t.jdc{\n\t\tdisplay:block;\n\t}\n\t\n\t/* 不推荐 */\n\t.JDC{\n\t\tDISPLAY:BLOCK;\n\t}\n\n### 选择器\n\n* 尽量少用通用选择器 `*`\n* 不使用 ID 选择器\n* 不使用无具体语义定义的标签选择器\n \n```\n/* 推荐 */\n.jdc {...}\n.jdc li {...}\n.jdc li p{...}\n\n/* 不推荐 */\n*{...}\n#jdc {...}\n.jdc div{...}\n```\n\t\n### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n```css\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n### 分号\n\n每个属性声明末尾都要加分号;\n\n```css\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n### 代码易读性\n\n左括号与类名之间一个空格,冒号与属性值之间一个空格\n\n*推荐:*\n\n```css\n.jdc { \n width: 100%; \n} \n```\n\n*不推荐:*\n\n```css\n.jdc{ \n width:100%;\n} \n```\n\n\n逗号分隔的取值,逗号之后一个空格\n\n*推荐:*\n\n```css\n.jdc {\n box-shadow: 1px 1px 1px #333, 2px 2px 2px #ccc;\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n box-shadow: 1px 1px 1px #333,2px 2px 2px #ccc;\n}\n```\n\n为单个css选择器或新申明开启新行\n\n*推荐:*\n\n```css\n.jdc, \n.jdc_logo, \n.jdc_hd {\n color: #ff0;\n}\n.nav{\n color: #fff;\n}\n```\n\n*不推荐:*\n\n``` css\n.jdc,jdc_logo,.jdc_hd {\n color: #ff0;\n}.nav{\n color: #fff;\n}\n```\n\n颜色值 `rgb()` `rgba()` `hsl()` `hsla()` `rect()` 中不需有空格,且取值不要带有不必要的 0\n\n*推荐:*\n\n```css\n.jdc {\n color: rgba(255,255,255,.5);\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n color: rgba( 255, 255, 255, 0.5 );\n}\n```\n\n属性值十六进制数值能用简写的尽量用简写\n\n*推荐:*\n\n```css\n.jdc {\n color: #fff;\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n color: #ffffff;\n}\n```\n\n不要为 `0` 指明单位\n\n*推荐:*\n\n```css\n.jdc {\n margin: 0 10px;\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n margin: 0px 10px;\n}\n```\n\n### 属性值引号\n\ncss属性值需要用到引号时,统一使用单引号\n\n```css\n/* 推荐 */\n.jdc { \n\tfont-family: 'Hiragino Sans GB';\n}\n\n/* 不推荐 */\n.jdc { \n\tfont-family: \"Hiragino Sans GB\";\n}\n```\n\n### 属性书写顺序\n\n建议遵循以下顺序:\n\n1. 布局定位属性:display / position / float / clear / visibility / overflow \n2. 自身属性:width / height / margin / padding / border / background\n3. 文本属性:color / font / text-decoration / text-align / vertical-align / white- space / break-word\n4. 其他属性(CSS3):content / cursor / border-radius / box-shadow / text-shadow / background:linear-gradient ...\n\n```css\n.jdc {\n display: block;\n position: relative;\n float: left;\n width: 100px;\n height: 100px;\n margin: 0 10px;\n padding: 20px 0;\n font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;\n color: #333;\n background: rgba(0,0,0,.5);\n -webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n\n\n[mozilla官方属性顺序推荐](https://www.mozilla.org/css/base/content.css)\n\n### CSS3浏览器私有前缀写法\n\nCSS3 浏览器私有前缀在前,标准前缀在后\n\n```css\n.jdc {\n -webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n更多关于浏览器私有前辍写法:[#Vendor-specific extensions](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#vendor-keywords)\n","source":"docs/css/code.md","raw":"title: 代码规范\n---\n\n## 编码规范\n\nCSS样式表是一个序列通用字符集,传输和存储过程中,这些字符必须由支持 US-ASCII(例如 UTF-8, ISO 8859-x, SHIFT JIS 等)字符编码方式编译\n\n### 文档内嵌样式表编码\n\n> When a style sheet is embedded in another document, such as in the STYLE element or \"style\" attribute of HTML, the style sheet shares the character encoding of the whole document.\n\n当样式出现在其它文档,如 HTML 的 STYLE 标签或标签属性 \"style\",样式的编码由文档的决定。\n\n### 文档外链样式表编码\n\n> When a style sheet resides in a separate file, user agents must observe the following priorities when determining a style sheet's character encoding (from highest priority to lowest):\n\n> 1. An HTTP \"charset\" parameter in a \"Content-Type\" field (or similar parameters in other protocols)\n> 2. BOM and/or @charset \n> 3. or other metadata from the linking mechanism (if any)\n> 4. charset of referring style sheet or document (if any)\n> 5. Assume UTF-8\n\n文档外链样式表的编码可以由以下各项按照由高到低的优先级顺序决定:\n\n1. HTTP “Content-Type” 字段参数 “charset”(或其它协议相似的参数)\n2. BOM(byte-order mark)和(或)@charset\n3. Link 中的元数据设置(如果有的话)\n4. 引用样式表字符集或文档编码(如果有的话)\n5. 假定为 UTF-8 编码\n\n### 关于 @charset\n\n> Authors using an @charset rule must place the rule at the very beginning of the style sheet, preceded by no characters. (If a byte order mark is appropriate for the encoding used, it may precede the @charset rule.)\n\n> @charset must be written literally, i.e., the 10 characters '@charset \"' (lowercase, no backslash escapes), followed by the encoding name, followed by '\";'.\n\n\n* @charset规则一定要在样式文件的第一行首个字符位置开始,否则的话就会有机会让 BOM 设置生效(如果有设置 BOM 的话)而优于 @charset 作为样式表的编码\n* `@charset \"\";` 一定要写上,并且用小写字母,不能出现转义符\n\n### 团队约定\n\n* 样式文件必须写上 @charset 规则,并且一定要在样式文件的第一行首个字符位置开始写,编码名用 “UTF-8”\n* 字符 `@charset \"\";` 都用小写字母,不能出现转义符,编码名允许大小混写\n* 考虑到在使用“UTF-8”编码情况下 BOM 对代码的污染和编码显示的问题,在可控范围下,坚决不使用 BOM。(更多关于 BOM 可参考 [BOM的介绍](https://zh.wikipedia.org/wiki/%E4%BD%8D%E5%85%83%E7%B5%84%E9%A0%86%E5%BA%8F%E8%A8%98%E8%99%9F) 和 [「带 BOM 的 UTF-8」和「无 BOM 的 UTF-8」有什么区别?](http://www.zhihu.com/question/20167122) )\n\n*推荐:*\n\n```css\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n*不推荐:*\n\n```css\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n \n/* @charset规则不在文件首行首个字符开始 */\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n```css\n@CHARSET \"UTF-8\";\n/* @charset规则没有用小写 */\n\n.jdc{}\n```\n\n```css\n/* 无@charset规则 */\n.jdc{}\n```\n\n更多关于样式编码:[CSS style sheet representation](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#charset)\n\n## 代码风格\n\n### 代码格式化\n\n样式书写一般有两种:一种是紧凑格式 (Compact)\n\n```css\n.jdc{ display: block;width: 50px;}\n```\n\n一种是展开格式(Expanded)\n\n```css\n.jdc{\n display: block;\n width: 50px;\n}\n```\n\n**团队约定**\n\n统一使用展开格式书写样式\n\n\n\n### 代码大小写\n\n样式选择器,属性名,属性值关键字全部使用小写字母书写,属性字符串允许使用大小写。\n\t\n\t/* 推荐 */\n\t.jdc{\n\t\tdisplay:block;\n\t}\n\t\n\t/* 不推荐 */\n\t.JDC{\n\t\tDISPLAY:BLOCK;\n\t}\n\n### 选择器\n\n* 尽量少用通用选择器 `*`\n* 不使用 ID 选择器\n* 不使用无具体语义定义的标签选择器\n \n```\n/* 推荐 */\n.jdc {...}\n.jdc li {...}\n.jdc li p{...}\n\n/* 不推荐 */\n*{...}\n#jdc {...}\n.jdc div{...}\n```\n\t\n### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n```css\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n### 分号\n\n每个属性声明末尾都要加分号;\n\n```css\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n### 代码易读性\n\n左括号与类名之间一个空格,冒号与属性值之间一个空格\n\n*推荐:*\n\n```css\n.jdc { \n width: 100%; \n} \n```\n\n*不推荐:*\n\n```css\n.jdc{ \n width:100%;\n} \n```\n\n\n逗号分隔的取值,逗号之后一个空格\n\n*推荐:*\n\n```css\n.jdc {\n box-shadow: 1px 1px 1px #333, 2px 2px 2px #ccc;\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n box-shadow: 1px 1px 1px #333,2px 2px 2px #ccc;\n}\n```\n\n为单个css选择器或新申明开启新行\n\n*推荐:*\n\n```css\n.jdc, \n.jdc_logo, \n.jdc_hd {\n color: #ff0;\n}\n.nav{\n color: #fff;\n}\n```\n\n*不推荐:*\n\n``` css\n.jdc,jdc_logo,.jdc_hd {\n color: #ff0;\n}.nav{\n color: #fff;\n}\n```\n\n颜色值 `rgb()` `rgba()` `hsl()` `hsla()` `rect()` 中不需有空格,且取值不要带有不必要的 0\n\n*推荐:*\n\n```css\n.jdc {\n color: rgba(255,255,255,.5);\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n color: rgba( 255, 255, 255, 0.5 );\n}\n```\n\n属性值十六进制数值能用简写的尽量用简写\n\n*推荐:*\n\n```css\n.jdc {\n color: #fff;\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n color: #ffffff;\n}\n```\n\n不要为 `0` 指明单位\n\n*推荐:*\n\n```css\n.jdc {\n margin: 0 10px;\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n margin: 0px 10px;\n}\n```\n\n### 属性值引号\n\ncss属性值需要用到引号时,统一使用单引号\n\n```css\n/* 推荐 */\n.jdc { \n\tfont-family: 'Hiragino Sans GB';\n}\n\n/* 不推荐 */\n.jdc { \n\tfont-family: \"Hiragino Sans GB\";\n}\n```\n\n### 属性书写顺序\n\n建议遵循以下顺序:\n\n1. 布局定位属性:display / position / float / clear / visibility / overflow \n2. 自身属性:width / height / margin / padding / border / background\n3. 文本属性:color / font / text-decoration / text-align / vertical-align / white- space / break-word\n4. 其他属性(CSS3):content / cursor / border-radius / box-shadow / text-shadow / background:linear-gradient ...\n\n```css\n.jdc {\n display: block;\n position: relative;\n float: left;\n width: 100px;\n height: 100px;\n margin: 0 10px;\n padding: 20px 0;\n font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;\n color: #333;\n background: rgba(0,0,0,.5);\n -webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n\n\n[mozilla官方属性顺序推荐](https://www.mozilla.org/css/base/content.css)\n\n### CSS3浏览器私有前缀写法\n\nCSS3 浏览器私有前缀在前,标准前缀在后\n\n```css\n.jdc {\n -webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n更多关于浏览器私有前辍写法:[#Vendor-specific extensions](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#vendor-keywords)\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-02T09:13:44.000Z","path":"docs/css/code.html","comments":1,"layout":"page","_id":"cihvwnkni000p1xfyie3qctvj"},{"title":"贡献","_content":"## 完善\n\n[凹凸实验室](http://aotu.io) 的宗旨是 `面向开放 - Open Oriented`,所以十分欢迎大家一起参与完善我们的`全栈MAC装机指南`。本文档将帮助大家了解参与的具体过程。\n\n### 开始之前\n\n本指南使用[hexo](https://hexo.io)作为静态站点引擎,请先安装hexo的本地环境。\n\n``` bash\nnpm i -g hexo-cli\n```\n\n### 如何做?\n\n1. Fork 源码[o2team/mac].\n2. 克隆Fork后的仓库至你的电脑,安装依赖包。\n\n {% code %}\n $ git clone https://github.com//mac.git\n $ cd mac\n $ npm install\n {% endcode %}\n\n3. 创建一个特性分支.\n\n {% code %}\n $ git checkout -b new_feature\n {% endcode %}\n\n4. 启动hexo服务,预览文档\n\n ``` bash\n hexo s -watch\n ```\n\n 关于hexo更多的用法,请参考hexo官网。\n \n5. 用你喜爱的编辑器在本地电脑进行文档的修改.\n6. 提交分支:\n\n {% code %}\n $ git push origin new_feature\n {% endcode %}\n \n7. 创建PR(pull request) 并描述具体的改动.\n\n\n### 注意事项\n\n- 别修改 `package.json` 中的版本号.\n- 我们在收到PR时会第一时间审核并Merge你的改动,请确保改动的地方不存在排版等问题。\n\n\n## 问题反馈\n\n在使用`全栈MAC装机指南`过程中碰到任何问题,可以到 [GitHub](https://github.com/o2team/mac/issues) 上留言提问。\n\n[o2team/mac]: https://github.com/o2team/mac\n\n## 贡献者\n\n排名不分先后。\n\n- [mamboer](https://github.com/mamboer)\n- [cnt1992](https://github.com/cnt1992)\n","source":"docs/contributing.md","raw":"title: 贡献\n---\n## 完善\n\n[凹凸实验室](http://aotu.io) 的宗旨是 `面向开放 - Open Oriented`,所以十分欢迎大家一起参与完善我们的`全栈MAC装机指南`。本文档将帮助大家了解参与的具体过程。\n\n### 开始之前\n\n本指南使用[hexo](https://hexo.io)作为静态站点引擎,请先安装hexo的本地环境。\n\n``` bash\nnpm i -g hexo-cli\n```\n\n### 如何做?\n\n1. Fork 源码[o2team/mac].\n2. 克隆Fork后的仓库至你的电脑,安装依赖包。\n\n {% code %}\n $ git clone https://github.com//mac.git\n $ cd mac\n $ npm install\n {% endcode %}\n\n3. 创建一个特性分支.\n\n {% code %}\n $ git checkout -b new_feature\n {% endcode %}\n\n4. 启动hexo服务,预览文档\n\n ``` bash\n hexo s -watch\n ```\n\n 关于hexo更多的用法,请参考hexo官网。\n \n5. 用你喜爱的编辑器在本地电脑进行文档的修改.\n6. 提交分支:\n\n {% code %}\n $ git push origin new_feature\n {% endcode %}\n \n7. 创建PR(pull request) 并描述具体的改动.\n\n\n### 注意事项\n\n- 别修改 `package.json` 中的版本号.\n- 我们在收到PR时会第一时间审核并Merge你的改动,请确保改动的地方不存在排版等问题。\n\n\n## 问题反馈\n\n在使用`全栈MAC装机指南`过程中碰到任何问题,可以到 [GitHub](https://github.com/o2team/mac/issues) 上留言提问。\n\n[o2team/mac]: https://github.com/o2team/mac\n\n## 贡献者\n\n排名不分先后。\n\n- [mamboer](https://github.com/mamboer)\n- [cnt1992](https://github.com/cnt1992)\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-11-22T16:20:34.000Z","path":"docs/contributing.html","comments":1,"layout":"page","_id":"cihvwnknj000q1xfyqysqtdhp"},{"title":"通用设置","_content":"如没有特别的标明`开发者适用`,通用设置部分内容适用于所有使用MAC工作的朋友。\n\n\n\n\n","source":"docs/common.md","raw":"title: 通用设置\n---\n如没有特别的标明`开发者适用`,通用设置部分内容适用于所有使用MAC工作的朋友。\n\n\n\n\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-12-02T07:02:20.000Z","path":"docs/common.html","comments":1,"layout":"page","_id":"cihvwnknk000r1xfy15zpan7z"},{"title":"Markdown手册","_content":"\n> 本手册参考自 [a Gist](https://gist.github.com/jonschlinkert/5854601)。 \n\n\n# Typography \n\n## Headings\n\nHeadings from `h1` through `h6` are constructed with a `#` for each level:\n\n``` markdown\n# h1 Heading\n## h2 Heading\n### h3 Heading\n#### h4 Heading\n##### h5 Heading\n###### h6 Heading\n```\n\nRenders to:\n\n# h1 Heading\n## h2 Heading\n### h3 Heading\n#### h4 Heading\n##### h5 Heading\n###### h6 Heading\n\nHTML:\n\n``` html\n

h1 Heading

\n

h2 Heading

\n

h3 Heading

\n

h4 Heading

\n
h5 Heading
\n
h6 Heading
\n```\n\n
\n
\n
\n\n\n## Horizontal Rules\n\nThe HTML `
` element is for creating a \"thematic break\" between paragraph-level elements. In markdown, you can create a `
` with any of the following:\n\n* `___`: three consecutive underscores\n* `---`: three consecutive dashes\n* `***`: three consecutive asterisks\n\nrenders to:\n\n___\n\n---\n\n***\n\n\n
\n
\n
\n\n\n## Body Copy \n\nBody copy written as normal, plain text will be wrapped with `

` tags in the rendered HTML.\n\nSo this body copy:\n\n``` markdown\nLorem ipsum dolor sit amet, graecis denique ei vel, at duo primis mandamus. Et legere ocurreret pri, animal tacimates complectitur ad cum. Cu eum inermis inimicus efficiendi. Labore officiis his ex, soluta officiis concludaturque ei qui, vide sensibus vim ad.\n```\nrenders to this HTML:\n\n``` html\n

Lorem ipsum dolor sit amet, graecis denique ei vel, at duo primis mandamus. Et legere ocurreret pri, animal tacimates complectitur ad cum. Cu eum inermis inimicus efficiendi. Labore officiis his ex, soluta officiis concludaturque ei qui, vide sensibus vim ad.

\n```\n\n\n
\n
\n
\n\n\n## Emphasis\n\n### Bold\nFor emphasizing a snippet of text with a heavier font-weight.\n\nThe following snippet of text is **rendered as bold text**.\n\n``` markdown\n**rendered as bold text**\n```\nrenders to:\n\n**rendered as bold text**\n\nand this HTML\n\n``` html\nrendered as bold text\n```\n\n### Italics\nFor emphasizing a snippet of text with italics.\n\nThe following snippet of text is _rendered as italicized text_.\n\n``` markdown\n_rendered as italicized text_\n```\n\nrenders to:\n\n_rendered as italicized text_\n\nand this HTML:\n\n``` html\nrendered as italicized text\n```\n\n\n### strikethrough\nIn GFM you can do strickthroughs. \n\n``` markdown\n~~Strike through this text.~~\n```\nWhich renders to:\n\n~~Strike through this text.~~\n\n\n
\n
\n
\n\n\n## Blockquotes\nFor quoting blocks of content from another source within your document.\n\nAdd `>` before any text you want to quote. \n\n``` markdown\nAdd `>` before any text you want to quote. \n```\n\nRenders to:\n\n> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.\n\nand this HTML:\n\n``` html\n
\n

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.

\n
\n```\n\nBlockquotes can also be nested:\n\n``` markdown\n> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n>> Sed adipiscing elit vitae augue consectetur a gravida nunc vehicula. Donec auctor \nodio non est accumsan facilisis. Aliquam id turpis in dolor tincidunt mollis ac eu diam.\n>>> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n```\n\nRenders to:\n\n> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n>> Sed adipiscing elit vitae augue consectetur a gravida nunc vehicula. Donec auctor \nodio non est accumsan facilisis. Aliquam id turpis in dolor tincidunt mollis ac eu diam.\n>>> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n\n\n
\n
\n
\n\n\n## Lists\n\n### Unordered\nA list of items in which the order of the items does not explicitly matter.\n\nYou may use any of the following symbols to denote bullets for each list item:\n\n```markdown\n* valid bullet\n- valid bullet\n+ valid bullet\n```\n\nFor example\n\n``` markdown\n+ Lorem ipsum dolor sit amet\n+ Consectetur adipiscing elit\n+ Integer molestie lorem at massa\n+ Facilisis in pretium nisl aliquet\n+ Nulla volutpat aliquam velit\n - Phasellus iaculis neque\n - Purus sodales ultricies\n - Vestibulum laoreet porttitor sem\n - Ac tristique libero volutpat at\n+ Faucibus porta lacus fringilla vel\n+ Aenean sit amet erat nunc\n+ Eget porttitor lorem\n```\nRenders to:\n\n+ Lorem ipsum dolor sit amet\n+ Consectetur adipiscing elit\n+ Integer molestie lorem at massa\n+ Facilisis in pretium nisl aliquet\n+ Nulla volutpat aliquam velit\n - Phasellus iaculis neque\n - Purus sodales ultricies\n - Vestibulum laoreet porttitor sem\n - Ac tristique libero volutpat at\n+ Faucibus porta lacus fringilla vel\n+ Aenean sit amet erat nunc\n+ Eget porttitor lorem\n\nAnd this HTML\n\n``` html\n
    \n
  • Lorem ipsum dolor sit amet
  • \n
  • Consectetur adipiscing elit
  • \n
  • Integer molestie lorem at massa
  • \n
  • Facilisis in pretium nisl aliquet
  • \n
  • Nulla volutpat aliquam velit\n
      \n
    • Phasellus iaculis neque
    • \n
    • Purus sodales ultricies
    • \n
    • Vestibulum laoreet porttitor sem
    • \n
    • Ac tristique libero volutpat at
    • \n
    \n
  • \n
  • Faucibus porta lacus fringilla vel
  • \n
  • Aenean sit amet erat nunc
  • \n
  • Eget porttitor lorem
  • \n
\n```\n\n### Ordered\n\nA list of items in which the order of items does explicitly matter.\n\n``` markdown\n1. Lorem ipsum dolor sit amet\n2. Consectetur adipiscing elit\n3. Integer molestie lorem at massa\n4. Facilisis in pretium nisl aliquet\n5. Nulla volutpat aliquam velit\n6. Faucibus porta lacus fringilla vel\n7. Aenean sit amet erat nunc\n8. Eget porttitor lorem\n```\nRenders to:\n\n1. Lorem ipsum dolor sit amet\n2. Consectetur adipiscing elit\n3. Integer molestie lorem at massa\n4. Facilisis in pretium nisl aliquet\n5. Nulla volutpat aliquam velit\n6. Faucibus porta lacus fringilla vel\n7. Aenean sit amet erat nunc\n8. Eget porttitor lorem\n\nAnd this HTML:\n\n``` html\n
    \n
  1. Lorem ipsum dolor sit amet
  2. \n
  3. Consectetur adipiscing elit
  4. \n
  5. Integer molestie lorem at massa
  6. \n
  7. Facilisis in pretium nisl aliquet
  8. \n
  9. Nulla volutpat aliquam velit
  10. \n
  11. Faucibus porta lacus fringilla vel
  12. \n
  13. Aenean sit amet erat nunc
  14. \n
  15. Eget porttitor lorem
  16. \n
\n```\n\n**TIP**: If you just use `1.` for each number, GitHub will automatically number each item. For example:\n\n``` markdown\n1. Lorem ipsum dolor sit amet\n1. Consectetur adipiscing elit\n1. Integer molestie lorem at massa\n1. Facilisis in pretium nisl aliquet\n1. Nulla volutpat aliquam velit\n1. Faucibus porta lacus fringilla vel\n1. Aenean sit amet erat nunc\n1. Eget porttitor lorem\n```\n\nRenders to:\n\n1. Lorem ipsum dolor sit amet\n2. Consectetur adipiscing elit\n3. Integer molestie lorem at massa\n4. Facilisis in pretium nisl aliquet\n5. Nulla volutpat aliquam velit\n6. Faucibus porta lacus fringilla vel\n7. Aenean sit amet erat nunc\n8. Eget porttitor lorem\n\n\n
\n
\n
\n\n\n## Code\n\n### Inline code\nWrap inline snippets of code with `` ` ``.\n\nFor example, `
` should be wrapped as \"inline\".\n\n``` html\nFor example, `
` should be wrapped as \"inline\".\n```\n\n\n### Indented code\n\nOr indent several lines of code by at least four spaces, as in:\n\n``` js\n // Some comments\n line 1 of code\n line 2 of code\n line 3 of code\n```\n\n // Some comments\n line 1 of code\n line 2 of code\n line 3 of code\n\n\n### Block code \"fences\"\n\nUse \"fences\" ```` ``` ```` to block in multiple lines of code. \n\n
\n``` html\nSample text here...\n```\n
\n\n\n```\nSample text here...\n```\n\nHTML:\n\n``` html\n
\n  

Sample text here...

\n
\n```\n\n### Syntax highlighting\n\nGFM, or \"GitHub Flavored Markdown\" also supports syntax highlighting. To activate it, simply add the file extension of the language you want to use directly after the first code \"fence\", ` ``` js `, and syntax highlighting will automatically be applied in the rendered HTML. For example, to apply syntax highlighting to JavaScript code:\n\n
\n``` javascript\ngrunt.initConfig({\n  assemble: {\n    options: {\n      assets: 'docs/assets',\n      data: 'src/data/*.{json,yml}',\n      helpers: 'src/custom-helpers.js',\n      partials: ['src/partials/**/*.{hbs,md}']\n    },\n    pages: {\n      options: {\n        layout: 'default.hbs'\n      },\n      files: {\n        './': ['src/templates/pages/index.hbs']\n      }\n    }\n  }\n};\n```\n
\n\nRenders to:\n\n``` javascript\ngrunt.initConfig({\n assemble: {\n options: {\n assets: 'docs/assets',\n data: 'src/data/*.{json,yml}',\n helpers: 'src/custom-helpers.js',\n partials: ['src/partials/**/*.{hbs,md}']\n },\n pages: {\n options: {\n layout: 'default.hbs'\n },\n files: {\n './': ['src/templates/pages/index.hbs']\n }\n }\n }\n};\n```\n\nAnd this complicated HTML:\n\n``` xml\n
grunt.initConfig({\n  assemble: {\n    options: {\n      assets: 'docs/assets',\n      data: 'src/data/*.{json,yml}',\n      helpers: 'src/custom-helpers.js',\n      partials: ['src/partials/**/*.{hbs,md}']\n    },\n    pages: {\n      options: {\n        layout: 'default.hbs'\n      },\n      files: {\n        './': ['src/templates/pages/index.hbs']\n      }\n    }\n  }\n};\n
\n```\n\n\n
\n
\n
\n\n\n\n## Tables\nTables are created by adding pipes as dividers between each cell, and by adding a line of dashes (also separated by bars) beneath the header. Note that the pipes do not need to be vertically aligned.\n\n\n``` markdown\n| Option | Description |\n| ------ | ----------- |\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n```\n\nRenders to:\n\n| Option | Description |\n| ------ | ----------- |\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n\nAnd this HTML:\n\n``` html\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
OptionDescription
datapath to data files to supply the data that will be passed into templates.
engineengine to be used for processing templates. Handlebars is the default.
extextension to be used for dest files.
\n```\n\n### Right aligned text\n\nAdding a colon on the right side of the dashes below any heading will right align text for that column.\n\n``` markdown\n| Option | Description |\n| ------:| -----------:|\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n```\n\n| Option | Description |\n| ------:| -----------:|\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n\n\n
\n
\n
\n\n\n## Links\n\n### Basic link\n\n``` markdown\n[Assemble](http://assemble.io)\n```\n\nRenders to (hover over the link, there is no tooltip):\n\n[Assemble](http://assemble.io)\n\nHTML:\n\n``` html\nAssemble\n```\n\n\n### Add a title\n\n``` markdown\n[Upstage](https://github.com/upstage/ \"Visit Upstage!\")\n```\n\nRenders to (hover over the link, there should be a tooltip):\n\n[Upstage](https://github.com/upstage/ \"Visit Upstage!\")\n\nHTML:\n\n``` html\nUpstage\n```\n\n### Named Anchors\n\nNamed anchors enable you to jump to the specified anchor point on the same page. For example, each of these chapters:\n\n```markdown\n# Table of Contents\n * [Chapter 1](#chapter-1)\n * [Chapter 2](#chapter-2)\n * [Chapter 3](#chapter-3)\n```\nwill jump to these sections:\n\n```markdown\n## Chapter 1 \nContent for chapter one.\n\n## Chapter 2 \nContent for chapter one.\n\n## Chapter 3 \nContent for chapter one.\n```\n**NOTE** that specific placement of the anchor tag seems to be arbitrary. They are placed inline here since it seems to be unobtrusive, and it works.\n\n\n
\n
\n
\n\n\n## Images\nImages have a similar syntax to links but include a preceding exclamation point.\n\n``` markdown\n![Minion](http://octodex.github.com/images/minion.png)\n```\n![Minion](http://octodex.github.com/images/minion.png)\n\nor\n``` markdown\n![Alt text](http://octodex.github.com/images/stormtroopocat.jpg \"The Stormtroopocat\")\n```\n![Alt text](http://octodex.github.com/images/stormtroopocat.jpg \"The Stormtroopocat\")\n\nLike links, Images also have a footnote style syntax\n\n``` markdown\n![Alt text][id]\n```\n![Alt text][id]\n\nWith a reference later in the document defining the URL location:\n\n[id]: http://octodex.github.com/images/dojocat.jpg \"The Dojocat\"\n\n\n [id]: http://octodex.github.com/images/dojocat.jpg \"The Dojocat\"\n\n","source":"docs/common/markdown.md","raw":"title: Markdown手册 \n---\n\n> 本手册参考自 [a Gist](https://gist.github.com/jonschlinkert/5854601)。 \n\n\n# Typography \n\n## Headings\n\nHeadings from `h1` through `h6` are constructed with a `#` for each level:\n\n``` markdown\n# h1 Heading\n## h2 Heading\n### h3 Heading\n#### h4 Heading\n##### h5 Heading\n###### h6 Heading\n```\n\nRenders to:\n\n# h1 Heading\n## h2 Heading\n### h3 Heading\n#### h4 Heading\n##### h5 Heading\n###### h6 Heading\n\nHTML:\n\n``` html\n

h1 Heading

\n

h2 Heading

\n

h3 Heading

\n

h4 Heading

\n
h5 Heading
\n
h6 Heading
\n```\n\n
\n
\n
\n\n\n## Horizontal Rules\n\nThe HTML `
` element is for creating a \"thematic break\" between paragraph-level elements. In markdown, you can create a `
` with any of the following:\n\n* `___`: three consecutive underscores\n* `---`: three consecutive dashes\n* `***`: three consecutive asterisks\n\nrenders to:\n\n___\n\n---\n\n***\n\n\n
\n
\n
\n\n\n## Body Copy \n\nBody copy written as normal, plain text will be wrapped with `

` tags in the rendered HTML.\n\nSo this body copy:\n\n``` markdown\nLorem ipsum dolor sit amet, graecis denique ei vel, at duo primis mandamus. Et legere ocurreret pri, animal tacimates complectitur ad cum. Cu eum inermis inimicus efficiendi. Labore officiis his ex, soluta officiis concludaturque ei qui, vide sensibus vim ad.\n```\nrenders to this HTML:\n\n``` html\n

Lorem ipsum dolor sit amet, graecis denique ei vel, at duo primis mandamus. Et legere ocurreret pri, animal tacimates complectitur ad cum. Cu eum inermis inimicus efficiendi. Labore officiis his ex, soluta officiis concludaturque ei qui, vide sensibus vim ad.

\n```\n\n\n
\n
\n
\n\n\n## Emphasis\n\n### Bold\nFor emphasizing a snippet of text with a heavier font-weight.\n\nThe following snippet of text is **rendered as bold text**.\n\n``` markdown\n**rendered as bold text**\n```\nrenders to:\n\n**rendered as bold text**\n\nand this HTML\n\n``` html\nrendered as bold text\n```\n\n### Italics\nFor emphasizing a snippet of text with italics.\n\nThe following snippet of text is _rendered as italicized text_.\n\n``` markdown\n_rendered as italicized text_\n```\n\nrenders to:\n\n_rendered as italicized text_\n\nand this HTML:\n\n``` html\nrendered as italicized text\n```\n\n\n### strikethrough\nIn GFM you can do strickthroughs. \n\n``` markdown\n~~Strike through this text.~~\n```\nWhich renders to:\n\n~~Strike through this text.~~\n\n\n
\n
\n
\n\n\n## Blockquotes\nFor quoting blocks of content from another source within your document.\n\nAdd `>` before any text you want to quote. \n\n``` markdown\nAdd `>` before any text you want to quote. \n```\n\nRenders to:\n\n> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.\n\nand this HTML:\n\n``` html\n
\n

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.

\n
\n```\n\nBlockquotes can also be nested:\n\n``` markdown\n> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n>> Sed adipiscing elit vitae augue consectetur a gravida nunc vehicula. Donec auctor \nodio non est accumsan facilisis. Aliquam id turpis in dolor tincidunt mollis ac eu diam.\n>>> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n```\n\nRenders to:\n\n> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n>> Sed adipiscing elit vitae augue consectetur a gravida nunc vehicula. Donec auctor \nodio non est accumsan facilisis. Aliquam id turpis in dolor tincidunt mollis ac eu diam.\n>>> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n\n\n
\n
\n
\n\n\n## Lists\n\n### Unordered\nA list of items in which the order of the items does not explicitly matter.\n\nYou may use any of the following symbols to denote bullets for each list item:\n\n```markdown\n* valid bullet\n- valid bullet\n+ valid bullet\n```\n\nFor example\n\n``` markdown\n+ Lorem ipsum dolor sit amet\n+ Consectetur adipiscing elit\n+ Integer molestie lorem at massa\n+ Facilisis in pretium nisl aliquet\n+ Nulla volutpat aliquam velit\n - Phasellus iaculis neque\n - Purus sodales ultricies\n - Vestibulum laoreet porttitor sem\n - Ac tristique libero volutpat at\n+ Faucibus porta lacus fringilla vel\n+ Aenean sit amet erat nunc\n+ Eget porttitor lorem\n```\nRenders to:\n\n+ Lorem ipsum dolor sit amet\n+ Consectetur adipiscing elit\n+ Integer molestie lorem at massa\n+ Facilisis in pretium nisl aliquet\n+ Nulla volutpat aliquam velit\n - Phasellus iaculis neque\n - Purus sodales ultricies\n - Vestibulum laoreet porttitor sem\n - Ac tristique libero volutpat at\n+ Faucibus porta lacus fringilla vel\n+ Aenean sit amet erat nunc\n+ Eget porttitor lorem\n\nAnd this HTML\n\n``` html\n
    \n
  • Lorem ipsum dolor sit amet
  • \n
  • Consectetur adipiscing elit
  • \n
  • Integer molestie lorem at massa
  • \n
  • Facilisis in pretium nisl aliquet
  • \n
  • Nulla volutpat aliquam velit\n
      \n
    • Phasellus iaculis neque
    • \n
    • Purus sodales ultricies
    • \n
    • Vestibulum laoreet porttitor sem
    • \n
    • Ac tristique libero volutpat at
    • \n
    \n
  • \n
  • Faucibus porta lacus fringilla vel
  • \n
  • Aenean sit amet erat nunc
  • \n
  • Eget porttitor lorem
  • \n
\n```\n\n### Ordered\n\nA list of items in which the order of items does explicitly matter.\n\n``` markdown\n1. Lorem ipsum dolor sit amet\n2. Consectetur adipiscing elit\n3. Integer molestie lorem at massa\n4. Facilisis in pretium nisl aliquet\n5. Nulla volutpat aliquam velit\n6. Faucibus porta lacus fringilla vel\n7. Aenean sit amet erat nunc\n8. Eget porttitor lorem\n```\nRenders to:\n\n1. Lorem ipsum dolor sit amet\n2. Consectetur adipiscing elit\n3. Integer molestie lorem at massa\n4. Facilisis in pretium nisl aliquet\n5. Nulla volutpat aliquam velit\n6. Faucibus porta lacus fringilla vel\n7. Aenean sit amet erat nunc\n8. Eget porttitor lorem\n\nAnd this HTML:\n\n``` html\n
    \n
  1. Lorem ipsum dolor sit amet
  2. \n
  3. Consectetur adipiscing elit
  4. \n
  5. Integer molestie lorem at massa
  6. \n
  7. Facilisis in pretium nisl aliquet
  8. \n
  9. Nulla volutpat aliquam velit
  10. \n
  11. Faucibus porta lacus fringilla vel
  12. \n
  13. Aenean sit amet erat nunc
  14. \n
  15. Eget porttitor lorem
  16. \n
\n```\n\n**TIP**: If you just use `1.` for each number, GitHub will automatically number each item. For example:\n\n``` markdown\n1. Lorem ipsum dolor sit amet\n1. Consectetur adipiscing elit\n1. Integer molestie lorem at massa\n1. Facilisis in pretium nisl aliquet\n1. Nulla volutpat aliquam velit\n1. Faucibus porta lacus fringilla vel\n1. Aenean sit amet erat nunc\n1. Eget porttitor lorem\n```\n\nRenders to:\n\n1. Lorem ipsum dolor sit amet\n2. Consectetur adipiscing elit\n3. Integer molestie lorem at massa\n4. Facilisis in pretium nisl aliquet\n5. Nulla volutpat aliquam velit\n6. Faucibus porta lacus fringilla vel\n7. Aenean sit amet erat nunc\n8. Eget porttitor lorem\n\n\n
\n
\n
\n\n\n## Code\n\n### Inline code\nWrap inline snippets of code with `` ` ``.\n\nFor example, `
` should be wrapped as \"inline\".\n\n``` html\nFor example, `
` should be wrapped as \"inline\".\n```\n\n\n### Indented code\n\nOr indent several lines of code by at least four spaces, as in:\n\n``` js\n // Some comments\n line 1 of code\n line 2 of code\n line 3 of code\n```\n\n // Some comments\n line 1 of code\n line 2 of code\n line 3 of code\n\n\n### Block code \"fences\"\n\nUse \"fences\" ```` ``` ```` to block in multiple lines of code. \n\n
\n``` html\nSample text here...\n```\n
\n\n\n```\nSample text here...\n```\n\nHTML:\n\n``` html\n
\n  

Sample text here...

\n
\n```\n\n### Syntax highlighting\n\nGFM, or \"GitHub Flavored Markdown\" also supports syntax highlighting. To activate it, simply add the file extension of the language you want to use directly after the first code \"fence\", ` ``` js `, and syntax highlighting will automatically be applied in the rendered HTML. For example, to apply syntax highlighting to JavaScript code:\n\n
\n``` javascript\ngrunt.initConfig({\n  assemble: {\n    options: {\n      assets: 'docs/assets',\n      data: 'src/data/*.{json,yml}',\n      helpers: 'src/custom-helpers.js',\n      partials: ['src/partials/**/*.{hbs,md}']\n    },\n    pages: {\n      options: {\n        layout: 'default.hbs'\n      },\n      files: {\n        './': ['src/templates/pages/index.hbs']\n      }\n    }\n  }\n};\n```\n
\n\nRenders to:\n\n``` javascript\ngrunt.initConfig({\n assemble: {\n options: {\n assets: 'docs/assets',\n data: 'src/data/*.{json,yml}',\n helpers: 'src/custom-helpers.js',\n partials: ['src/partials/**/*.{hbs,md}']\n },\n pages: {\n options: {\n layout: 'default.hbs'\n },\n files: {\n './': ['src/templates/pages/index.hbs']\n }\n }\n }\n};\n```\n\nAnd this complicated HTML:\n\n``` xml\n
grunt.initConfig({\n  assemble: {\n    options: {\n      assets: 'docs/assets',\n      data: 'src/data/*.{json,yml}',\n      helpers: 'src/custom-helpers.js',\n      partials: ['src/partials/**/*.{hbs,md}']\n    },\n    pages: {\n      options: {\n        layout: 'default.hbs'\n      },\n      files: {\n        './': ['src/templates/pages/index.hbs']\n      }\n    }\n  }\n};\n
\n```\n\n\n
\n
\n
\n\n\n\n## Tables\nTables are created by adding pipes as dividers between each cell, and by adding a line of dashes (also separated by bars) beneath the header. Note that the pipes do not need to be vertically aligned.\n\n\n``` markdown\n| Option | Description |\n| ------ | ----------- |\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n```\n\nRenders to:\n\n| Option | Description |\n| ------ | ----------- |\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n\nAnd this HTML:\n\n``` html\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
OptionDescription
datapath to data files to supply the data that will be passed into templates.
engineengine to be used for processing templates. Handlebars is the default.
extextension to be used for dest files.
\n```\n\n### Right aligned text\n\nAdding a colon on the right side of the dashes below any heading will right align text for that column.\n\n``` markdown\n| Option | Description |\n| ------:| -----------:|\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n```\n\n| Option | Description |\n| ------:| -----------:|\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n\n\n
\n
\n
\n\n\n## Links\n\n### Basic link\n\n``` markdown\n[Assemble](http://assemble.io)\n```\n\nRenders to (hover over the link, there is no tooltip):\n\n[Assemble](http://assemble.io)\n\nHTML:\n\n``` html\nAssemble\n```\n\n\n### Add a title\n\n``` markdown\n[Upstage](https://github.com/upstage/ \"Visit Upstage!\")\n```\n\nRenders to (hover over the link, there should be a tooltip):\n\n[Upstage](https://github.com/upstage/ \"Visit Upstage!\")\n\nHTML:\n\n``` html\nUpstage\n```\n\n### Named Anchors\n\nNamed anchors enable you to jump to the specified anchor point on the same page. For example, each of these chapters:\n\n```markdown\n# Table of Contents\n * [Chapter 1](#chapter-1)\n * [Chapter 2](#chapter-2)\n * [Chapter 3](#chapter-3)\n```\nwill jump to these sections:\n\n```markdown\n## Chapter 1 \nContent for chapter one.\n\n## Chapter 2 \nContent for chapter one.\n\n## Chapter 3 \nContent for chapter one.\n```\n**NOTE** that specific placement of the anchor tag seems to be arbitrary. They are placed inline here since it seems to be unobtrusive, and it works.\n\n\n
\n
\n
\n\n\n## Images\nImages have a similar syntax to links but include a preceding exclamation point.\n\n``` markdown\n![Minion](http://octodex.github.com/images/minion.png)\n```\n![Minion](http://octodex.github.com/images/minion.png)\n\nor\n``` markdown\n![Alt text](http://octodex.github.com/images/stormtroopocat.jpg \"The Stormtroopocat\")\n```\n![Alt text](http://octodex.github.com/images/stormtroopocat.jpg \"The Stormtroopocat\")\n\nLike links, Images also have a footnote style syntax\n\n``` markdown\n![Alt text][id]\n```\n![Alt text][id]\n\nWith a reference later in the document defining the URL location:\n\n[id]: http://octodex.github.com/images/dojocat.jpg \"The Dojocat\"\n\n\n [id]: http://octodex.github.com/images/dojocat.jpg \"The Dojocat\"\n\n","date":"2015-12-06T14:48:49.000Z","updated":"2015-11-22T16:20:34.000Z","path":"docs/common/markdown.html","comments":1,"layout":"page","_id":"cihvwnknl000s1xfy7f4tcis9"},{"title":"Webkit属性","_content":"\n待补充","source":"docs/css/webkit.md","raw":"title: Webkit属性\n---\n\n待补充","date":"2015-12-17T06:26:46.000Z","updated":"2015-12-17T06:26:46.000Z","path":"docs/css/webkit.html","_id":"cii9v5uad0001n8fy73b7vr8w","comments":1,"layout":"page"}],"Post":[{"title":"V1.0.0 Beta Released","layout":"post","_content":"\n`MAC全栈开发环境搭建指南` 中英双语V1.0.0 Beta版本发布。感谢各位开源贡献人员。\n\n## 特性\n\n- 中文双语版本\n\n 英文为简版,6级刚刚及格抱歉了~\n 欢迎英文达人参与 `MAC全栈开发环境搭建指南` 的维护。\n\n- 修复了配置站点根目录为网站子目录时切换语言404的bug。\n- 去掉了retinajs的特性,现在srcset支持不错,没必要使用retinajs做响应式图片加载。\n","source":"_posts/2015-11-15-beta-released.md","raw":"title: V1.0.0 Beta Released\nlayout: post\n---\n\n`MAC全栈开发环境搭建指南` 中英双语V1.0.0 Beta版本发布。感谢各位开源贡献人员。\n\n## 特性\n\n- 中文双语版本\n\n 英文为简版,6级刚刚及格抱歉了~\n 欢迎英文达人参与 `MAC全栈开发环境搭建指南` 的维护。\n\n- 修复了配置站点根目录为网站子目录时切换语言404的bug。\n- 去掉了retinajs的特性,现在srcset支持不错,没必要使用retinajs做响应式图片加载。\n","slug":"beta-released","published":1,"date":"2015-11-15T00:00:00.000Z","updated":"2015-11-22T16:20:34.000Z","comments":1,"photos":[],"link":"","_id":"cihvwnkno000t1xfybpfaters"},{"title":"V1.0.0 Preview (预览版)","layout":"post","_content":"\n`MAC全栈开发环境搭建指南` 中文预览版发布。感谢各位开源贡献人员。\n\n## 特性\n\n- **[HEXO](https://github.com/hexojs/hexo)**: 使用hexo作为指南的静态站点引擎。\n- 按照工作角色将指南分为通用、交互、视觉、前端开发、后台开发等几个部分。\n- 修复了hexo文档大纲的bug。\n","source":"_posts/2015-11-13-first-released.md","raw":"title: V1.0.0 Preview (预览版)\nlayout: post\n---\n\n`MAC全栈开发环境搭建指南` 中文预览版发布。感谢各位开源贡献人员。\n\n## 特性\n\n- **[HEXO](https://github.com/hexojs/hexo)**: 使用hexo作为指南的静态站点引擎。\n- 按照工作角色将指南分为通用、交互、视觉、前端开发、后台开发等几个部分。\n- 修复了hexo文档大纲的bug。\n","slug":"first-released","published":1,"date":"2015-11-13T00:00:00.000Z","updated":"2015-11-22T16:20:34.000Z","comments":1,"photos":[],"link":"","_id":"cihvwnknv000u1xfyiu29efq3"}],"PostAsset":[],"PostCategory":[],"PostTag":[],"Tag":[]}} \ No newline at end of file +{"meta":{"version":1,"warehouse":"1.0.3"},"models":{"Asset":[{"_id":"source/robots.txt","path":"robots.txt","modified":0},{"_id":"themes/navy/source/js/toc.js","path":"js/toc.js","modified":0},{"_id":"themes/navy/source/js/plugins.js","path":"js/plugins.js","modified":0},{"_id":"themes/navy/source/js/mobile_nav.js","path":"js/mobile_nav.js","modified":0},{"_id":"themes/navy/source/js/lunr.js","path":"js/lunr.js","modified":0},{"_id":"themes/navy/source/js/lang_select.js","path":"js/lang_select.js","modified":0},{"_id":"themes/navy/source/js/jquery.js","path":"js/jquery.js","modified":0},{"_id":"themes/navy/source/js/hammer.js","path":"js/hammer.js","modified":0},{"_id":"themes/navy/source/img/yandex-browser-manifest.json","path":"img/yandex-browser-manifest.json","modified":0},{"_id":"themes/navy/source/img/yandex-browser-50x50.png","path":"img/yandex-browser-50x50.png","modified":0},{"_id":"themes/navy/source/img/twitter.png","path":"img/twitter.png","modified":0},{"_id":"themes/navy/source/img/open-graph.png","path":"img/open-graph.png","modified":0},{"_id":"themes/navy/source/img/mstile-70x70.png","path":"img/mstile-70x70.png","modified":0},{"_id":"themes/navy/source/img/mstile-310x310.png","path":"img/mstile-310x310.png","modified":0},{"_id":"themes/navy/source/img/mstile-310x150.png","path":"img/mstile-310x150.png","modified":0},{"_id":"themes/navy/source/img/mstile-150x150.png","path":"img/mstile-150x150.png","modified":0},{"_id":"themes/navy/source/img/mstile-144x144.png","path":"img/mstile-144x144.png","modified":0},{"_id":"themes/navy/source/img/manifest.webapp","path":"img/manifest.webapp","modified":0},{"_id":"themes/navy/source/img/manifest.json","path":"img/manifest.json","modified":0},{"_id":"themes/navy/source/img/logo.png","path":"img/logo.png","modified":0},{"_id":"themes/navy/source/img/firefox_app_60x60.png","path":"img/firefox_app_60x60.png","modified":0},{"_id":"themes/navy/source/img/firefox_app_512x512.png","path":"img/firefox_app_512x512.png","modified":0},{"_id":"themes/navy/source/img/firefox_app_128x128.png","path":"img/firefox_app_128x128.png","modified":0},{"_id":"themes/navy/source/img/favicon.ico","path":"img/favicon.ico","modified":0},{"_id":"themes/navy/source/img/favicon-96x96.png","path":"img/favicon-96x96.png","modified":0},{"_id":"themes/navy/source/img/favicon-32x32.png","path":"img/favicon-32x32.png","modified":0},{"_id":"themes/navy/source/img/favicon-230x230.png","path":"img/favicon-230x230.png","modified":0},{"_id":"themes/navy/source/img/favicon-16x16.png","path":"img/favicon-16x16.png","modified":0},{"_id":"themes/navy/source/img/coast-228x228.png","path":"img/coast-228x228.png","modified":0},{"_id":"themes/navy/source/img/browserconfig.xml","path":"img/browserconfig.xml","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-768x1004.png","path":"img/apple-touch-startup-image-768x1004.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-750x1294.png","path":"img/apple-touch-startup-image-750x1294.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-748x1024.png","path":"img/apple-touch-startup-image-748x1024.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-640x920.png","path":"img/apple-touch-startup-image-640x920.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-640x1096.png","path":"img/apple-touch-startup-image-640x1096.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-320x460.png","path":"img/apple-touch-startup-image-320x460.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-1536x2008.png","path":"img/apple-touch-startup-image-1536x2008.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-1496x2048.png","path":"img/apple-touch-startup-image-1496x2048.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-1242x2148.png","path":"img/apple-touch-startup-image-1242x2148.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-startup-image-1182x2208.png","path":"img/apple-touch-startup-image-1182x2208.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon.png","path":"img/apple-touch-icon.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-precomposed.png","path":"img/apple-touch-icon-precomposed.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-76x76.png","path":"img/apple-touch-icon-76x76.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-72x72.png","path":"img/apple-touch-icon-72x72.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-60x60.png","path":"img/apple-touch-icon-60x60.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-57x57.png","path":"img/apple-touch-icon-57x57.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-180x180.png","path":"img/apple-touch-icon-180x180.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-152x152.png","path":"img/apple-touch-icon-152x152.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-144x144.png","path":"img/apple-touch-icon-144x144.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-120x120.png","path":"img/apple-touch-icon-120x120.png","modified":0},{"_id":"themes/navy/source/img/apple-touch-icon-114x114.png","path":"img/apple-touch-icon-114x114.png","modified":0},{"_id":"themes/navy/source/img/android-chrome-96x96.png","path":"img/android-chrome-96x96.png","modified":0},{"_id":"themes/navy/source/img/android-chrome-72x72.png","path":"img/android-chrome-72x72.png","modified":0},{"_id":"themes/navy/source/img/android-chrome-48x48.png","path":"img/android-chrome-48x48.png","modified":0},{"_id":"themes/navy/source/img/android-chrome-36x36.png","path":"img/android-chrome-36x36.png","modified":0},{"_id":"themes/navy/source/img/android-chrome-192x192.png","path":"img/android-chrome-192x192.png","modified":0},{"_id":"themes/navy/source/img/android-chrome-144x144.png","path":"img/android-chrome-144x144.png","modified":0},{"_id":"themes/navy/source/fonts/lato/v11/rZPI2gHXi8zxUjnybc2ZQFKPGs1ZzpMvnHX-7fPOuAc.woff2","path":"fonts/lato/v11/rZPI2gHXi8zxUjnybc2ZQFKPGs1ZzpMvnHX-7fPOuAc.woff2","modified":0},{"_id":"themes/navy/source/fonts/lato/v11/MgNNr5y1C_tIEuLEmicLmwLUuEpTyoUstqEm5AMlJo4.woff2","path":"fonts/lato/v11/MgNNr5y1C_tIEuLEmicLmwLUuEpTyoUstqEm5AMlJo4.woff2","modified":0},{"_id":"themes/navy/source/fonts/lato/v11/MDadn8DQ_3oT6kvnUq_2r_esZW2xOQ-xsNqO47m55DA.woff2","path":"fonts/lato/v11/MDadn8DQ_3oT6kvnUq_2r_esZW2xOQ-xsNqO47m55DA.woff2","modified":0},{"_id":"themes/navy/source/fonts/lato/v11/IY9HZVvI1cMoAHxvl0w9LVKPGs1ZzpMvnHX-7fPOuAc.woff2","path":"fonts/lato/v11/IY9HZVvI1cMoAHxvl0w9LVKPGs1ZzpMvnHX-7fPOuAc.woff2","modified":0},{"_id":"themes/navy/source/fonts/lato/v11/8qcEw_nrk_5HEcCpYdJu8BTbgVql8nDJpwnrE27mub0.woff2","path":"fonts/lato/v11/8qcEw_nrk_5HEcCpYdJu8BTbgVql8nDJpwnrE27mub0.woff2","modified":0},{"_id":"themes/navy/source/fonts/lato/v11/22JRxvfANxSmnAhzbFH8PgLUuEpTyoUstqEm5AMlJo4.woff2","path":"fonts/lato/v11/22JRxvfANxSmnAhzbFH8PgLUuEpTyoUstqEm5AMlJo4.woff2","modified":0},{"_id":"themes/navy/source/fonts/fontawesome-webfont.woff2","path":"fonts/fontawesome-webfont.woff2","modified":0},{"_id":"themes/navy/source/fonts/fontawesome-webfont.woff","path":"fonts/fontawesome-webfont.woff","modified":0},{"_id":"themes/navy/source/fonts/fontawesome-webfont.ttf","path":"fonts/fontawesome-webfont.ttf","modified":0},{"_id":"themes/navy/source/fonts/fontawesome-webfont.svg","path":"fonts/fontawesome-webfont.svg","modified":0},{"_id":"themes/navy/source/fonts/fontawesome-webfont.eot","path":"fonts/fontawesome-webfont.eot","modified":0},{"_id":"themes/navy/source/fonts/FontAwesome.otf","path":"fonts/FontAwesome.otf","modified":0},{"_id":"themes/navy/source/css/navy.styl","path":"css/navy.styl","modified":0},{"_id":"themes/navy/source/assets/bootstrap/js/npm.js","path":"assets/bootstrap/js/npm.js","modified":0},{"_id":"themes/navy/source/assets/bootstrap/js/bootstrap.min.js","path":"assets/bootstrap/js/bootstrap.min.js","modified":0},{"_id":"themes/navy/source/assets/bootstrap/js/bootstrap.js","path":"assets/bootstrap/js/bootstrap.js","modified":0},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.woff2","path":"assets/bootstrap/fonts/glyphicons-halflings-regular.woff2","modified":0},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.woff","path":"assets/bootstrap/fonts/glyphicons-halflings-regular.woff","modified":0},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.ttf","path":"assets/bootstrap/fonts/glyphicons-halflings-regular.ttf","modified":0},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.svg","path":"assets/bootstrap/fonts/glyphicons-halflings-regular.svg","modified":0},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.eot","path":"assets/bootstrap/fonts/glyphicons-halflings-regular.eot","modified":0},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap.min.css","path":"assets/bootstrap/css/bootstrap.min.css","modified":0},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap.css.map","path":"assets/bootstrap/css/bootstrap.css.map","modified":0},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap.css","path":"assets/bootstrap/css/bootstrap.css","modified":0},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap-theme.min.css","path":"assets/bootstrap/css/bootstrap-theme.min.css","modified":0},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap-theme.css.map","path":"assets/bootstrap/css/bootstrap-theme.css.map","modified":0},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap-theme.css","path":"assets/bootstrap/css/bootstrap-theme.css","modified":0},{"_id":"source/favicon.ico","path":"favicon.ico","modified":0},{"_id":"source/browserconfig.xml","path":"browserconfig.xml","modified":0}],"Cache":[{"_id":"source/_data/languages.yml","shasum":"e7236479d958a4443f8becd7287c20bc815ef8b6","modified":1450259346000},{"_id":"source/_data/menu.yml","shasum":"7b7141b1bf34b75b168e7d0db3bec4f35be42135","modified":1450259346000},{"_id":"source/_data/plugins.yml","shasum":"ae9f4b2292c303ac0efd4719c16b1dccb11ae466","modified":1450259346000},{"_id":"source/_data/sidebar.yml","shasum":"70cc4d9b50560f3c9506a335e74ec95a2f0a4d41","modified":1450259346000},{"_id":"source/_data/themes.yml","shasum":"03e3807c4f6f38f686b9cfcfd5ea301b89de5fe5","modified":1450259346000},{"_id":"source/_posts/2015-11-15-beta-released.md","shasum":"3966a91622907adee43de1359450eb045d9eda38","modified":1450259346000},{"_id":"source/browserconfig.xml","shasum":"f54412705ab9eb69b544f438c9a1e15ae57f27c0","modified":1450259346000},{"_id":"source/_posts/2015-11-13-first-released.md","shasum":"47e392c43c3580f1b9e903f1788795b57cb5acfa","modified":1450259346000},{"_id":"source/docs/contributing.md","shasum":"9ce63f664799d5084c39287be4fef74e9f87fb8a","modified":1450259346000},{"_id":"source/docs/css/code.md","shasum":"bfe67330609aa87fac923513adcdeece88bc4f07","modified":1450259346000},{"_id":"source/docs/common.md","shasum":"ad4e22abef23c7f82a2cb7647d2daf11ee54c3a0","modified":1450259346000},{"_id":"source/docs/common/markdown.md","shasum":"c7eacb1258ac0759b0c67422e6fa42908f143d4a","modified":1450259346000},{"_id":"source/docs/css/note.md","shasum":"f18b53f146dfdcb9ae3647189f6e0c45f7b59b7e","modified":1450259346000},{"_id":"source/docs/css/query.md","shasum":"4f23e4b8fb42f9b0703d60a3634142ba8ba7be33","modified":1450259346000},{"_id":"source/docs/css/sass.md","shasum":"30c0c54e09e19b31c2dc15d5822ff51dc3b2d304","modified":1450259346000},{"_id":"source/docs/css/webkit.md","shasum":"a74554ef05c21daf9e6945c62cd81ffedd5b41e1","modified":1450333608000},{"_id":"source/docs/css/reset.md","shasum":"b84aeb91fa2272f8b1f3c561d6aeacc9e7663df1","modified":1450259346000},{"_id":"source/docs/html/code.md","shasum":"90e3b52ff2bc4c010ce5ec63d9921d750be1f8e6","modified":1450259346000},{"_id":"source/docs/css/jdc_fd_guide_css.md","shasum":"085d1e7abc1796a5e6f91c504b23ead6e87e0383","modified":1450259346000},{"_id":"source/docs/html/note.md","shasum":"c0ae02042e196f92022672ecc9dd4420b68ba31a","modified":1450259346000},{"_id":"source/docs/html/webapp.md","shasum":"899f1c2a03f85e7162c7ab60788ea227423028a7","modified":1450259346000},{"_id":"source/docs/html/template.md","shasum":"0bb957f97e52f1912204348ad30ff089fb95745d","modified":1450259346000},{"_id":"source/docs/html/jdc_fd_web_final_2.md","shasum":"d22358bfa7ff34beb85b8110f56891c5bd40d5b1","modified":1450259346000},{"_id":"source/docs/image/import.md","shasum":"627c59cb64fd3215f9045b8160fa5250eb3a162e","modified":1450259346000},{"_id":"source/docs/image/format.md","shasum":"a11bd0fbb49a3489e778116c8099b017f191915f","modified":1450259346000},{"_id":"source/docs/image/quality.md","shasum":"47d2094b5414d17ecb92b9d735e55a5c14deda17","modified":1450259346000},{"_id":"source/docs/image/size.md","shasum":"e467d93ef8579cf33a2f409d2f5eb9b7c6ad2ab3","modified":1450259346000},{"_id":"source/docs/index.md","shasum":"30e863725b1e66ec38b1a693001b06c65a59e1c4","modified":1450259346000},{"_id":"source/docs/image/jdc_fd_guide_image.md","shasum":"313bf7e43599f07ff978735f8dcb45e3353f70e1","modified":1450259346000},{"_id":"source/docs/name/dir.md","shasum":"1b05f84302aa9b4d523e354480db3f1b2785e19c","modified":1450259346000},{"_id":"source/docs/issues.md","shasum":"a0a71958bb2955e2024aa756e7254cbcecf64b87","modified":1450259346000},{"_id":"source/docs/name/classname.md","shasum":"29d380629ffb0a8ba203c21bce80f760f1fd0d9d","modified":1450259346000},{"_id":"source/docs/name/htmlcss.md","shasum":"67e093477248eb2e485e752a9306569a44f0fa7f","modified":1450259346000},{"_id":"source/index.jade","shasum":"9430f540afc58e743e6ef0c93b4764f8b24c0326","modified":1450259346000},{"_id":"source/docs/name/jdc_fd_guide_name.md","shasum":"e6c0ac73a7f5d3b443b428ecd4e93f1e89ebd9e9","modified":1450259346000},{"_id":"source/favicon.ico","shasum":"6b4f249bbfe90f3ad41aa774e255d3a69f700b62","modified":1450259346000},{"_id":"source/docs/name/image.md","shasum":"c3afa8d3162a07f49f1a3ec6ffa62c71dafc7d59","modified":1450259346000},{"_id":"source/robots.txt","shasum":"55107e568647402d4e0d108be00fce6bded104d8","modified":1450259346000},{"_id":"source/plugins/index.md","shasum":"3559a5b18670ac4bbf333c74aa4ad3577eeec9f6","modified":1450259346000},{"_id":"source/themes/index.md","shasum":"202fe8ff6c5b1b371407ab5ba723453e006a043b","modified":1450259346000},{"_id":"themes/navy/layout/index.swig","shasum":"246a0f9848ea6d28e4526e5c78ffeb18e359397f","modified":1450259346000},{"_id":"themes/navy/languages/en.yml","shasum":"2417319d04afbffb266c677d3754cc20ed58e9c7","modified":1450259346000},{"_id":"themes/navy/layout/archive.swig","shasum":"bcb5c940345095739fb79f87979c9046cf18b385","modified":1450259346000},{"_id":"themes/navy/languages/zh-cn.yml","shasum":"3fdd21f55c6631c642879bd430da708075134058","modified":1450259346000},{"_id":"themes/navy/layout/layout.swig","shasum":"556d73ee4f4d7d6b58b1b203c67d96602f672823","modified":1450259346000},{"_id":"themes/navy/layout/page.swig","shasum":"1c7de86d9a6580cd4bf6a445bcc37701e7dd9bdb","modified":1450259346000},{"_id":"themes/navy/layout/partial/after_footer.swig","shasum":"ffa7db07f68dc9fd219986ae28a52f61b39f4ee7","modified":1450259346000},{"_id":"themes/navy/layout/partial/baidu_analytics.swig","shasum":"e6a31df988a0e98c65f2c8b9f0343ac6360a5a5d","modified":1450259346000},{"_id":"themes/navy/layout/partial/comment.swig","shasum":"759a0d900a089e904501b8e6b27a0c74e671228a","modified":1450259346000},{"_id":"themes/navy/layout/partial/google_analytics.swig","shasum":"eb4791e9e0627be70b4bc9d086110f9313cd1d2c","modified":1450259346000},{"_id":"themes/navy/layout/partial/footer.swig","shasum":"92bc12738b2ab5831d65a466457bee66ba949fc3","modified":1450259346000},{"_id":"themes/navy/layout/partial/head.swig","shasum":"0f1489db0c6ed7f03e896d4606405029693daaac","modified":1450259346000},{"_id":"themes/navy/layout/partial/mobile_nav.swig","shasum":"b6815b0ef47d851964792cf97dbc0635d53e1cdd","modified":1450259346000},{"_id":"themes/navy/layout/partial/post.swig","shasum":"4772c721d4f046687629685239eed8badd6de546","modified":1450259346000},{"_id":"themes/navy/layout/partial/plugin.swig","shasum":"17b6c6945e4b1b41dbb10d851f85ca10100c28ea","modified":1450259346000},{"_id":"themes/navy/layout/partial/header.swig","shasum":"50c55caca5213b2b3f68f8a500e1415ab6134c89","modified":1450259346000},{"_id":"themes/navy/layout/partial/theme.swig","shasum":"5810d9d2bb7858e51ba42a5db3d1dc756ae5161f","modified":1450259346000},{"_id":"themes/navy/layout/plugins.swig","shasum":"fc73b77c3802a3492777398500f5d39bd1f3cac0","modified":1450259346000},{"_id":"themes/navy/layout/partial/sidebar.swig","shasum":"620854b84bbc4ec16c752a54892e139293b3408b","modified":1450259346000},{"_id":"themes/navy/layout/partial/share.swig","shasum":"ec1f470eb105538753bfafa8bd050948f0cdb504","modified":1450259346000},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap-theme.css","shasum":"ecf2245dd39ea3b17ccb4bea42cda46356376078","modified":1450259346000},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap-theme.css.map","shasum":"abc2e3a1163de52378c71bb92d007c22abb0a393","modified":1450259346000},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap-theme.min.css","shasum":"4c936da026b2fb2e6b63d3d4ddbc3d9beb658d17","modified":1450259346000},{"_id":"themes/navy/layout/post.swig","shasum":"a5552b9622acbacd04363b9125705874b10b8624","modified":1450259346000},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.eot","shasum":"86b6f62b7853e67d3e635f6512a5a5efc58ea3c3","modified":1450259346000},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.woff","shasum":"278e49a86e634da6f2a02f3b47dd9d2a8f26210f","modified":1450259346000},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.ttf","shasum":"44bc1850f570972267b169ae18f1cb06b611ffa2","modified":1450259346000},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.woff2","shasum":"ca35b697d99cae4d1b60f2d60fcd37771987eb07","modified":1450259346000},{"_id":"themes/navy/source/css/_partial/archive.styl","shasum":"f7ff7e9eb92f6786ccbf79bb4193a81ab8b49f8b","modified":1450259346000},{"_id":"themes/navy/source/css/_partial/base.styl","shasum":"0256b429200fe382d4c2720fa087008a66d9542e","modified":1450259346000},{"_id":"themes/navy/source/css/_partial/fonts.css","shasum":"361cefd7f47fc5d5e97369c436101d20dbbe4989","modified":1450259346000},{"_id":"themes/navy/source/css/_partial/footer.styl","shasum":"cf03e141fb0db12785d6b6e61a24872568b20dac","modified":1450259346000},{"_id":"themes/navy/source/css/_partial/header.styl","shasum":"8af066ae099682fef020d42e85161960244dcca8","modified":1450259346000},{"_id":"themes/navy/source/css/_partial/highlight.styl","shasum":"91225de69acb1d1ebc7b59724a8ed4ae1203eeba","modified":1450259346000},{"_id":"themes/navy/source/css/_partial/font-awesome.css","shasum":"3b87c2560832748cd06f9bfd2fd6ea8edbdae8c7","modified":1450259346000},{"_id":"themes/navy/source/css/_partial/index.styl","shasum":"ba92a0f1204cbf069fe25302eb34f3e9cb9cdc56","modified":1450259346000},{"_id":"themes/navy/source/css/_partial/mobile_nav.styl","shasum":"d521ff48a48b753e47029b59574b3994bcd6223b","modified":1450259346000},{"_id":"themes/navy/source/css/_partial/plugins.styl","shasum":"e69ad06200a86c856d7c361be9289b5931593ab8","modified":1450259346000},{"_id":"themes/navy/source/css/_partial/page.styl","shasum":"d0e24fd7b6d72407cc168aafa96a34de5a927dfe","modified":1450259346000},{"_id":"themes/navy/source/css/_partial/sidebar.styl","shasum":"39451aef60afca98aa757eb76690a9e3e32cffbb","modified":1450259346000},{"_id":"themes/navy/source/css/_partial/tables.styl","shasum":"df7692229897a9412efe26a807ff26e088781b67","modified":1450259346000},{"_id":"themes/navy/source/css/_variables.styl","shasum":"e8eb22747910dc5af13b5cfd04768554eb727d6f","modified":1450259346000},{"_id":"themes/navy/source/css/navy.styl","shasum":"55e86db7eae90d41bcc594426a4e988c0e67608d","modified":1450259346000},{"_id":"themes/navy/source/css/_partial/post.styl","shasum":"037864b22a7775df5086f8977c51d86dd7053625","modified":1450259346000},{"_id":"themes/navy/source/assets/bootstrap/js/npm.js","shasum":"e2b7590d6ec1fdac66b01fdf66ae0879f53b1262","modified":1450259346000},{"_id":"themes/navy/source/assets/bootstrap/js/bootstrap.min.js","shasum":"6c264e0e0026ab5ece49350c6a8812398e696cbb","modified":1450259346000},{"_id":"themes/navy/source/fonts/lato/v11/22JRxvfANxSmnAhzbFH8PgLUuEpTyoUstqEm5AMlJo4.woff2","shasum":"d1073c4f095c7aa7553961d5efeec12064b6bb5d","modified":1450259346000},{"_id":"themes/navy/source/fonts/fontawesome-webfont.woff2","shasum":"574ea2698c03ae9477db2ea3baf460ee32f1a7ea","modified":1450259346000},{"_id":"themes/navy/source/fonts/lato/v11/MDadn8DQ_3oT6kvnUq_2r_esZW2xOQ-xsNqO47m55DA.woff2","shasum":"a5cfa4cd1753af990a314ff01f9581f87bf23886","modified":1450259346000},{"_id":"themes/navy/source/fonts/lato/v11/MgNNr5y1C_tIEuLEmicLmwLUuEpTyoUstqEm5AMlJo4.woff2","shasum":"2f20f3742a685029769490a2972ee962e094c951","modified":1450259346000},{"_id":"themes/navy/source/fonts/lato/v11/8qcEw_nrk_5HEcCpYdJu8BTbgVql8nDJpwnrE27mub0.woff2","shasum":"d044761c283e3d66872a0ef4c0e940b6e4adcbf7","modified":1450259346000},{"_id":"themes/navy/source/fonts/lato/v11/IY9HZVvI1cMoAHxvl0w9LVKPGs1ZzpMvnHX-7fPOuAc.woff2","shasum":"beeec1ecad44bf2cbc833c520ad7a8a936946bf9","modified":1450259346000},{"_id":"themes/navy/source/fonts/lato/v11/rZPI2gHXi8zxUjnybc2ZQFKPGs1ZzpMvnHX-7fPOuAc.woff2","shasum":"c64a029d9c9bea55aaa52f4ba52c686c43c49132","modified":1450259346000},{"_id":"themes/navy/source/img/android-chrome-144x144.png","shasum":"c3ea6ed5b70c98e9b98233574785f47dff379865","modified":1450259346000},{"_id":"themes/navy/source/img/android-chrome-36x36.png","shasum":"eb6c47174c6da399ea63a10d1b473b36c5a9b465","modified":1450259346000},{"_id":"themes/navy/source/img/android-chrome-192x192.png","shasum":"eda6e2ba40e09f3d87dff04190264c1330069f56","modified":1450259346000},{"_id":"themes/navy/source/img/android-chrome-48x48.png","shasum":"5e68398c1b141225e636ab69ecc5340e4e7c9bf2","modified":1450259346000},{"_id":"themes/navy/source/img/android-chrome-72x72.png","shasum":"abd419afc89dd5a4964cfc916f58725b04e0246b","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-icon-114x114.png","shasum":"6d0ca2b1532b29f34f62328cf3c1a0555815f29a","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-icon-120x120.png","shasum":"364df3b3a09df2132a012d1ec3785fedfad55715","modified":1450259346000},{"_id":"themes/navy/source/img/android-chrome-96x96.png","shasum":"265b10f4650054bbc1afe1ba50b38684921ed298","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-icon-152x152.png","shasum":"2abd845199cf957e856100162de73ba21a7862b8","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-icon-57x57.png","shasum":"fa5e53dbb668c7f21fb9dc37561870eab177a3a0","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-icon-180x180.png","shasum":"d0c936a215d195f8448baac0baf2b1be2dd5b9aa","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-icon-144x144.png","shasum":"c3ea6ed5b70c98e9b98233574785f47dff379865","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-icon-72x72.png","shasum":"abd419afc89dd5a4964cfc916f58725b04e0246b","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-icon-60x60.png","shasum":"eb1f745fe7ce4e4ab86ad2ed97dba316eeee0aaa","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-icon-76x76.png","shasum":"97e002bcb357052bc0f3493cc4f621158a3b3a87","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-icon-precomposed.png","shasum":"d0c936a215d195f8448baac0baf2b1be2dd5b9aa","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-icon.png","shasum":"d0c936a215d195f8448baac0baf2b1be2dd5b9aa","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-startup-image-1242x2148.png","shasum":"9a3c6e77752c5ca0f3476c2e4a9a1f3c538d12f5","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-startup-image-1182x2208.png","shasum":"f151d282e3381505dea5bfa271cbb46c9bd00ad1","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-startup-image-320x460.png","shasum":"caffc2f6ec27770d3ec704e2e63fe767984391d2","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-startup-image-748x1024.png","shasum":"edd4c6387bb19e34de129f5ad1e5813785ed40e9","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-startup-image-640x920.png","shasum":"3973726c5af454e493b13e4156446a80968c78ee","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-startup-image-640x1096.png","shasum":"0bf4dbe095dc857bdebcc0df6f0d13922ec72aab","modified":1450259346000},{"_id":"themes/navy/source/img/coast-228x228.png","shasum":"50eeb073ec0a3943cc2b56676db02448b7f33327","modified":1450259346000},{"_id":"themes/navy/source/img/browserconfig.xml","shasum":"8f9e34d1c9b8391cf038c4ae55c7610d25436ebd","modified":1450259346000},{"_id":"themes/navy/source/img/favicon-16x16.png","shasum":"94b8e867ec38d3d3bae01f83097d34b0d240f049","modified":1450259346000},{"_id":"themes/navy/source/img/favicon-32x32.png","shasum":"7eec6371d23dd9c9786aef033252c2a353f3f98f","modified":1450259346000},{"_id":"themes/navy/source/img/favicon-96x96.png","shasum":"265b10f4650054bbc1afe1ba50b38684921ed298","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-startup-image-750x1294.png","shasum":"1550a15db383f426c8bb9b46002ec5d15778c311","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-startup-image-768x1004.png","shasum":"e022daf682e4ce74b98930a8047c8347614f8ad9","modified":1450259346000},{"_id":"themes/navy/source/img/favicon-230x230.png","shasum":"7daf64d008c0f8fd830ac84b9fc283fe0b4fc0cf","modified":1450259346000},{"_id":"themes/navy/source/img/favicon.ico","shasum":"94b8e867ec38d3d3bae01f83097d34b0d240f049","modified":1450259346000},{"_id":"themes/navy/source/img/logo.png","shasum":"6cf9be4e311e225bc3772cb41e618cb2882dabf0","modified":1450259346000},{"_id":"themes/navy/source/img/firefox_app_128x128.png","shasum":"52cf9b30a9d703be16b40477aaae705c53019a80","modified":1450259346000},{"_id":"themes/navy/source/img/firefox_app_512x512.png","shasum":"00b248747c0ff3ff9c6fedefc58c032648c4d47d","modified":1450259346000},{"_id":"themes/navy/source/img/manifest.json","shasum":"0e478d6be6537161cf774842132ce68ba2f12ba4","modified":1450259346000},{"_id":"themes/navy/source/img/firefox_app_60x60.png","shasum":"eb1f745fe7ce4e4ab86ad2ed97dba316eeee0aaa","modified":1450259346000},{"_id":"themes/navy/source/img/manifest.webapp","shasum":"f16117c69a0bf12ff35a23a68b0d0e344c59ca24","modified":1450259346000},{"_id":"themes/navy/source/img/mstile-144x144.png","shasum":"c3ea6ed5b70c98e9b98233574785f47dff379865","modified":1450259346000},{"_id":"themes/navy/source/img/mstile-310x150.png","shasum":"586ce926ffa25143f0b819cf7d98932bc71bccaf","modified":1450259346000},{"_id":"themes/navy/source/img/mstile-70x70.png","shasum":"52cf9b30a9d703be16b40477aaae705c53019a80","modified":1450259346000},{"_id":"themes/navy/source/img/mstile-150x150.png","shasum":"0ee14c21e429f76f1d5c870ef05a0c4e8d5f2670","modified":1450259346000},{"_id":"themes/navy/source/img/yandex-browser-50x50.png","shasum":"ea1729043231f84dcdaeebe29d617f35cec7ff69","modified":1450259346000},{"_id":"themes/navy/source/img/twitter.png","shasum":"4c30f273260756d595c64a5273bb1e19e9f8476e","modified":1450259346000},{"_id":"themes/navy/source/img/mstile-310x310.png","shasum":"e0883419c338e922877185fe34865bedfd4b73df","modified":1450259346000},{"_id":"themes/navy/source/img/yandex-browser-manifest.json","shasum":"25b8b79a92bf77a075db335e68940f6316e18393","modified":1450259346000},{"_id":"themes/navy/source/js/lang_select.js","shasum":"df65fbfea63def302361db0851800e7fc67b7872","modified":1450259346000},{"_id":"themes/navy/source/js/mobile_nav.js","shasum":"d84cd8f1bf7915c38633ac2c0059e6938c630b27","modified":1450259346000},{"_id":"themes/navy/source/js/toc.js","shasum":"368b59f0dd64e9c67df5427b54af4ab700bca374","modified":1450259346000},{"_id":"themes/navy/source/js/plugins.js","shasum":"c1cf96b2d852b5803228a34d99014b005623bc06","modified":1450259346000},{"_id":"themes/navy/source/js/lunr.js","shasum":"2fd1fa4c8730aca8cce285c8c37b14840622fc23","modified":1450259346000},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap.min.css","shasum":"08df9a96752852f2cbd310c30facd934e348c2c5","modified":1450259346000},{"_id":"themes/navy/source/assets/bootstrap/js/bootstrap.js","shasum":"bbf55e20f1ebb6368522799f29db39830a08ef93","modified":1450259346000},{"_id":"themes/navy/source/assets/bootstrap/fonts/glyphicons-halflings-regular.svg","shasum":"de51a8494180a6db074af2dee2383f0a363c5b08","modified":1450259346000},{"_id":"themes/navy/source/fonts/fontawesome-webfont.eot","shasum":"b3c2f08e73320135b69c23a3908b87a12053a2f6","modified":1450259346000},{"_id":"themes/navy/source/fonts/FontAwesome.otf","shasum":"0112e96f327d413938d37c1693806f468ffdbace","modified":1450259346000},{"_id":"themes/navy/source/fonts/fontawesome-webfont.woff","shasum":"507970402e328b2baeb05bde73bf9ded4e2c3a2d","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-startup-image-1536x2008.png","shasum":"470c11050971f41e03cb30148bfd9165bac1bf3f","modified":1450259346000},{"_id":"themes/navy/source/img/apple-touch-startup-image-1496x2048.png","shasum":"070a0d3ac0cbfec661fe0353fa32372ae94921ff","modified":1450259346000},{"_id":"themes/navy/source/js/hammer.js","shasum":"836cd4bc35ccebf5091e4d277b16443145e359be","modified":1450259346000},{"_id":"themes/navy/source/img/open-graph.png","shasum":"04d6e0421b464a8288369e1125c8fad168dfb28c","modified":1450259346000},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap.css","shasum":"6987e3bdad7a3a5d143ddf2453e29782dbd99c29","modified":1450259346000},{"_id":"themes/navy/source/fonts/fontawesome-webfont.ttf","shasum":"27cf1f2ec59aece6938c7bb2feb0e287ea778ff9","modified":1450259346000},{"_id":"themes/navy/source/js/jquery.js","shasum":"0fed45ad7a48ace869bc725ca474ad86a1ef1562","modified":1450259346000},{"_id":"themes/navy/source/assets/bootstrap/css/bootstrap.css.map","shasum":"16506513c5f3d95982e73fb6820cf3c4c58d6897","modified":1450259346000},{"_id":"themes/navy/source/fonts/fontawesome-webfont.svg","shasum":"2b3c8ba7008cc014d8fb37abc6f9f49aeda83824","modified":1450259346000},{"_id":"public/robots.txt","modified":1451543677449,"shasum":"55107e568647402d4e0d108be00fce6bded104d8"},{"_id":"public/js/toc.js","modified":1451543677454,"shasum":"368b59f0dd64e9c67df5427b54af4ab700bca374"},{"_id":"public/js/plugins.js","modified":1451543677457,"shasum":"c1cf96b2d852b5803228a34d99014b005623bc06"},{"_id":"public/js/mobile_nav.js","modified":1451543677459,"shasum":"d84cd8f1bf7915c38633ac2c0059e6938c630b27"},{"_id":"public/js/lunr.js","modified":1451543677462,"shasum":"2fd1fa4c8730aca8cce285c8c37b14840622fc23"},{"_id":"public/js/lang_select.js","modified":1451543677464,"shasum":"df65fbfea63def302361db0851800e7fc67b7872"},{"_id":"public/js/jquery.js","modified":1451543677467,"shasum":"0fed45ad7a48ace869bc725ca474ad86a1ef1562"},{"_id":"public/js/hammer.js","modified":1451543677472,"shasum":"836cd4bc35ccebf5091e4d277b16443145e359be"},{"_id":"public/img/yandex-browser-manifest.json","modified":1451543677476,"shasum":"4000ea7e0b7c1b5a3c26137ae2e8ea3dfd102dbe"},{"_id":"public/img/yandex-browser-50x50.png","modified":1451543677482,"shasum":"ea1729043231f84dcdaeebe29d617f35cec7ff69"},{"_id":"public/img/twitter.png","modified":1451543677483,"shasum":"4c30f273260756d595c64a5273bb1e19e9f8476e"},{"_id":"public/img/open-graph.png","modified":1451543677485,"shasum":"04d6e0421b464a8288369e1125c8fad168dfb28c"},{"_id":"public/img/mstile-70x70.png","modified":1451543677489,"shasum":"52cf9b30a9d703be16b40477aaae705c53019a80"},{"_id":"public/img/mstile-310x310.png","modified":1451543677490,"shasum":"e0883419c338e922877185fe34865bedfd4b73df"},{"_id":"public/img/mstile-310x150.png","modified":1451543677493,"shasum":"586ce926ffa25143f0b819cf7d98932bc71bccaf"},{"_id":"public/img/mstile-150x150.png","modified":1451543677497,"shasum":"0ee14c21e429f76f1d5c870ef05a0c4e8d5f2670"},{"_id":"public/img/mstile-144x144.png","modified":1451543677499,"shasum":"c3ea6ed5b70c98e9b98233574785f47dff379865"},{"_id":"public/img/manifest.webapp","modified":1451543677504,"shasum":"f16117c69a0bf12ff35a23a68b0d0e344c59ca24"},{"_id":"public/img/manifest.json","modified":1451543677509,"shasum":"0bff43ff61a378d3dee99adae142ec564071c20a"},{"_id":"public/img/logo.png","modified":1451543677511,"shasum":"6cf9be4e311e225bc3772cb41e618cb2882dabf0"},{"_id":"public/img/firefox_app_60x60.png","modified":1451543677515,"shasum":"eb1f745fe7ce4e4ab86ad2ed97dba316eeee0aaa"},{"_id":"public/img/firefox_app_512x512.png","modified":1451543677517,"shasum":"00b248747c0ff3ff9c6fedefc58c032648c4d47d"},{"_id":"public/img/firefox_app_128x128.png","modified":1451543677519,"shasum":"52cf9b30a9d703be16b40477aaae705c53019a80"},{"_id":"public/img/favicon.ico","modified":1451543677522,"shasum":"94b8e867ec38d3d3bae01f83097d34b0d240f049"},{"_id":"public/img/favicon-96x96.png","modified":1451543677525,"shasum":"265b10f4650054bbc1afe1ba50b38684921ed298"},{"_id":"public/img/favicon-32x32.png","modified":1451543677529,"shasum":"7eec6371d23dd9c9786aef033252c2a353f3f98f"},{"_id":"public/img/favicon-230x230.png","modified":1451543677532,"shasum":"7daf64d008c0f8fd830ac84b9fc283fe0b4fc0cf"},{"_id":"public/img/favicon-16x16.png","modified":1451543677538,"shasum":"94b8e867ec38d3d3bae01f83097d34b0d240f049"},{"_id":"public/img/coast-228x228.png","modified":1451543677543,"shasum":"50eeb073ec0a3943cc2b56676db02448b7f33327"},{"_id":"public/img/browserconfig.xml","modified":1451543677546,"shasum":"8f9e34d1c9b8391cf038c4ae55c7610d25436ebd"},{"_id":"public/img/apple-touch-startup-image-768x1004.png","modified":1451543677567,"shasum":"e022daf682e4ce74b98930a8047c8347614f8ad9"},{"_id":"public/img/apple-touch-startup-image-750x1294.png","modified":1451543677576,"shasum":"1550a15db383f426c8bb9b46002ec5d15778c311"},{"_id":"public/img/apple-touch-startup-image-748x1024.png","modified":1451543677579,"shasum":"edd4c6387bb19e34de129f5ad1e5813785ed40e9"},{"_id":"public/img/apple-touch-startup-image-640x920.png","modified":1451543677581,"shasum":"3973726c5af454e493b13e4156446a80968c78ee"},{"_id":"public/img/apple-touch-startup-image-640x1096.png","modified":1451543677583,"shasum":"0bf4dbe095dc857bdebcc0df6f0d13922ec72aab"},{"_id":"public/img/apple-touch-startup-image-320x460.png","modified":1451543677587,"shasum":"caffc2f6ec27770d3ec704e2e63fe767984391d2"},{"_id":"public/img/apple-touch-startup-image-1536x2008.png","modified":1451543677590,"shasum":"470c11050971f41e03cb30148bfd9165bac1bf3f"},{"_id":"public/img/apple-touch-startup-image-1496x2048.png","modified":1451543677593,"shasum":"070a0d3ac0cbfec661fe0353fa32372ae94921ff"},{"_id":"public/img/apple-touch-startup-image-1242x2148.png","modified":1451543677597,"shasum":"9a3c6e77752c5ca0f3476c2e4a9a1f3c538d12f5"},{"_id":"public/img/apple-touch-startup-image-1182x2208.png","modified":1451543677601,"shasum":"f151d282e3381505dea5bfa271cbb46c9bd00ad1"},{"_id":"public/img/apple-touch-icon.png","modified":1451543677606,"shasum":"d0c936a215d195f8448baac0baf2b1be2dd5b9aa"},{"_id":"public/img/apple-touch-icon-precomposed.png","modified":1451543677612,"shasum":"d0c936a215d195f8448baac0baf2b1be2dd5b9aa"},{"_id":"public/img/apple-touch-icon-76x76.png","modified":1451543677614,"shasum":"97e002bcb357052bc0f3493cc4f621158a3b3a87"},{"_id":"public/img/apple-touch-icon-72x72.png","modified":1451543677616,"shasum":"abd419afc89dd5a4964cfc916f58725b04e0246b"},{"_id":"public/img/apple-touch-icon-60x60.png","modified":1451543677618,"shasum":"eb1f745fe7ce4e4ab86ad2ed97dba316eeee0aaa"},{"_id":"public/img/apple-touch-icon-57x57.png","modified":1451543677620,"shasum":"fa5e53dbb668c7f21fb9dc37561870eab177a3a0"},{"_id":"public/img/apple-touch-icon-180x180.png","modified":1451543677624,"shasum":"d0c936a215d195f8448baac0baf2b1be2dd5b9aa"},{"_id":"public/img/apple-touch-icon-152x152.png","modified":1451543677627,"shasum":"2abd845199cf957e856100162de73ba21a7862b8"},{"_id":"public/img/apple-touch-icon-144x144.png","modified":1451543677629,"shasum":"c3ea6ed5b70c98e9b98233574785f47dff379865"},{"_id":"public/img/apple-touch-icon-120x120.png","modified":1451543677631,"shasum":"364df3b3a09df2132a012d1ec3785fedfad55715"},{"_id":"public/img/apple-touch-icon-114x114.png","modified":1451543677633,"shasum":"6d0ca2b1532b29f34f62328cf3c1a0555815f29a"},{"_id":"public/img/android-chrome-96x96.png","modified":1451543677636,"shasum":"265b10f4650054bbc1afe1ba50b38684921ed298"},{"_id":"public/img/android-chrome-72x72.png","modified":1451543677639,"shasum":"abd419afc89dd5a4964cfc916f58725b04e0246b"},{"_id":"public/img/android-chrome-48x48.png","modified":1451543677641,"shasum":"5e68398c1b141225e636ab69ecc5340e4e7c9bf2"},{"_id":"public/img/android-chrome-36x36.png","modified":1451543677643,"shasum":"eb6c47174c6da399ea63a10d1b473b36c5a9b465"},{"_id":"public/img/android-chrome-192x192.png","modified":1451543677646,"shasum":"eda6e2ba40e09f3d87dff04190264c1330069f56"},{"_id":"public/img/android-chrome-144x144.png","modified":1451543677649,"shasum":"c3ea6ed5b70c98e9b98233574785f47dff379865"},{"_id":"public/fonts/lato/v11/rZPI2gHXi8zxUjnybc2ZQFKPGs1ZzpMvnHX-7fPOuAc.woff2","modified":1451543677659,"shasum":"c64a029d9c9bea55aaa52f4ba52c686c43c49132"},{"_id":"public/fonts/lato/v11/MgNNr5y1C_tIEuLEmicLmwLUuEpTyoUstqEm5AMlJo4.woff2","modified":1451543677662,"shasum":"2f20f3742a685029769490a2972ee962e094c951"},{"_id":"public/fonts/lato/v11/MDadn8DQ_3oT6kvnUq_2r_esZW2xOQ-xsNqO47m55DA.woff2","modified":1451543677666,"shasum":"a5cfa4cd1753af990a314ff01f9581f87bf23886"},{"_id":"public/fonts/lato/v11/IY9HZVvI1cMoAHxvl0w9LVKPGs1ZzpMvnHX-7fPOuAc.woff2","modified":1451543677668,"shasum":"beeec1ecad44bf2cbc833c520ad7a8a936946bf9"},{"_id":"public/fonts/lato/v11/8qcEw_nrk_5HEcCpYdJu8BTbgVql8nDJpwnrE27mub0.woff2","modified":1451543677670,"shasum":"d044761c283e3d66872a0ef4c0e940b6e4adcbf7"},{"_id":"public/fonts/lato/v11/22JRxvfANxSmnAhzbFH8PgLUuEpTyoUstqEm5AMlJo4.woff2","modified":1451543677672,"shasum":"d1073c4f095c7aa7553961d5efeec12064b6bb5d"},{"_id":"public/fonts/fontawesome-webfont.woff2","modified":1451543677675,"shasum":"574ea2698c03ae9477db2ea3baf460ee32f1a7ea"},{"_id":"public/fonts/fontawesome-webfont.woff","modified":1451543677679,"shasum":"507970402e328b2baeb05bde73bf9ded4e2c3a2d"},{"_id":"public/fonts/fontawesome-webfont.ttf","modified":1451543677682,"shasum":"27cf1f2ec59aece6938c7bb2feb0e287ea778ff9"},{"_id":"public/fonts/fontawesome-webfont.svg","modified":1451543677695,"shasum":"2b3c8ba7008cc014d8fb37abc6f9f49aeda83824"},{"_id":"public/fonts/fontawesome-webfont.eot","modified":1451543677701,"shasum":"b3c2f08e73320135b69c23a3908b87a12053a2f6"},{"_id":"public/fonts/FontAwesome.otf","modified":1451543677704,"shasum":"0112e96f327d413938d37c1693806f468ffdbace"},{"_id":"public/css/navy.css","modified":1451543678262,"shasum":"2ba6d2e23be749fe32b2a62e1594b801b82026a8"},{"_id":"public/assets/bootstrap/js/npm.js","modified":1451543678454,"shasum":"e2b7590d6ec1fdac66b01fdf66ae0879f53b1262"},{"_id":"public/assets/bootstrap/js/bootstrap.min.js","modified":1451543678456,"shasum":"6c264e0e0026ab5ece49350c6a8812398e696cbb"},{"_id":"public/assets/bootstrap/js/bootstrap.js","modified":1451543678457,"shasum":"bbf55e20f1ebb6368522799f29db39830a08ef93"},{"_id":"public/assets/bootstrap/fonts/glyphicons-halflings-regular.woff2","modified":1451543678459,"shasum":"ca35b697d99cae4d1b60f2d60fcd37771987eb07"},{"_id":"public/assets/bootstrap/fonts/glyphicons-halflings-regular.woff","modified":1451543678461,"shasum":"278e49a86e634da6f2a02f3b47dd9d2a8f26210f"},{"_id":"public/assets/bootstrap/fonts/glyphicons-halflings-regular.ttf","modified":1451543678463,"shasum":"44bc1850f570972267b169ae18f1cb06b611ffa2"},{"_id":"public/assets/bootstrap/fonts/glyphicons-halflings-regular.svg","modified":1451543678465,"shasum":"de51a8494180a6db074af2dee2383f0a363c5b08"},{"_id":"public/assets/bootstrap/fonts/glyphicons-halflings-regular.eot","modified":1451543678467,"shasum":"86b6f62b7853e67d3e635f6512a5a5efc58ea3c3"},{"_id":"public/assets/bootstrap/css/bootstrap.min.css","modified":1451543678470,"shasum":"08df9a96752852f2cbd310c30facd934e348c2c5"},{"_id":"public/assets/bootstrap/css/bootstrap.css.map","modified":1451543678475,"shasum":"16506513c5f3d95982e73fb6820cf3c4c58d6897"},{"_id":"public/assets/bootstrap/css/bootstrap.css","modified":1451543678484,"shasum":"6987e3bdad7a3a5d143ddf2453e29782dbd99c29"},{"_id":"public/assets/bootstrap/css/bootstrap-theme.min.css","modified":1451543678486,"shasum":"4c936da026b2fb2e6b63d3d4ddbc3d9beb658d17"},{"_id":"public/assets/bootstrap/css/bootstrap-theme.css.map","modified":1451543678488,"shasum":"abc2e3a1163de52378c71bb92d007c22abb0a393"},{"_id":"public/assets/bootstrap/css/bootstrap-theme.css","modified":1451543678491,"shasum":"ecf2245dd39ea3b17ccb4bea42cda46356376078"},{"_id":"public/favicon.ico","modified":1451543678493,"shasum":"6b4f249bbfe90f3ad41aa774e255d3a69f700b62"},{"_id":"public/browserconfig.xml","modified":1451543678495,"shasum":"f54412705ab9eb69b544f438c9a1e15ae57f27c0"},{"_id":"public/themes/index.html","modified":1451543678625,"shasum":"7e11df619625126c572ee138f15e921944a9a72e"},{"_id":"public/plugins/index.html","modified":1451543678769,"shasum":"42fe36cc78db07c52df8f5fd7cb6c67eeb6f631c"},{"_id":"public/index.html","modified":1451543678794,"shasum":"3964a434abd4591ce0e78e774807181abf8b8cd3"},{"_id":"public/docs/name/jdc_fd_guide_name.html","modified":1451543678848,"shasum":"ab856dbedbd1e1541da4d5728e0b71a9ccbc6439"},{"_id":"public/docs/name/image.html","modified":1451543678866,"shasum":"3304de5ee93d1f4ff0b2d8498ffffec326733243"},{"_id":"public/docs/name/htmlcss.html","modified":1451543678880,"shasum":"6e94956059472f090c4e383bf6e17be16ce5ce4e"},{"_id":"public/docs/name/dir.html","modified":1451543678910,"shasum":"27f63f26bd9d94fe1f8cb7291a90d89c37d2cf3c"},{"_id":"public/docs/name/classname.html","modified":1451543678942,"shasum":"e9bf0d6f7cb4b96bb107f03a8dd9f920b20d546b"},{"_id":"public/docs/issues.html","modified":1451543678961,"shasum":"0919d6b848bb46186ef641c27704b256e6850489"},{"_id":"public/docs/index.html","modified":1451543678983,"shasum":"21f72c3a614866402d850517d96a165a75390821"},{"_id":"public/docs/image/size.html","modified":1451543679011,"shasum":"c380d50afb42638cf6bb848e573ab82289e86ef4"},{"_id":"public/docs/image/quality.html","modified":1451543679041,"shasum":"8d6308d69f5759a3fd6f035ae053cfafe9e0b991"},{"_id":"public/docs/image/jdc_fd_guide_image.html","modified":1451543679080,"shasum":"34be1d41cd263e22b1c8850115e9c00378d3ea0c"},{"_id":"public/docs/image/import.html","modified":1451543679099,"shasum":"2f738105235d4c93ecff0ee66fe83d493423039d"},{"_id":"public/docs/image/format.html","modified":1451543679117,"shasum":"ff1214228ca50dd0a4ae460b27e2d8ae6986bee7"},{"_id":"public/docs/html/webapp.html","modified":1451543679140,"shasum":"3d006d05305a2a0ef875aca9182d7dafc1b9fd59"},{"_id":"public/docs/html/template.html","modified":1451543679169,"shasum":"bad7e47eab52ddfaec08ae39bc8f172de180c4aa"},{"_id":"public/docs/html/note.html","modified":1451543679185,"shasum":"a03967f96fe6af336a0eaa979143aa15c00ecaa8"},{"_id":"public/docs/html/jdc_fd_web_final_2.html","modified":1451543679215,"shasum":"a832d63d5a49932982cf46b1cfc93fcbeae6925d"},{"_id":"public/docs/html/code.html","modified":1451543679251,"shasum":"4b4e24854366f8b71cdb7303fbd3bf5f8566fbd2"},{"_id":"public/docs/css/webkit.html","modified":1451543679272,"shasum":"ecef96254b356db99520deb6bad8aac3a1ec02ba"},{"_id":"public/docs/css/sass.html","modified":1451543679304,"shasum":"67c6bc1d024746169759e3c7eb728c1d327a5390"},{"_id":"public/docs/css/reset.html","modified":1451543679329,"shasum":"75c8f1cceba84ec6d0f4f0cc051aede347d70f9d"},{"_id":"public/docs/css/query.html","modified":1451543679368,"shasum":"5cfdc3a4a11cb626a849e38c15e631b403384800"},{"_id":"public/docs/css/note.html","modified":1451543679402,"shasum":"7574a285ab4ed78528c5237bbdb71ab25039f3e7"},{"_id":"public/docs/css/jdc_fd_guide_css.html","modified":1451543679440,"shasum":"044f16fe9730a2b3984a9117a3d2043c08af4085"},{"_id":"public/docs/css/code.html","modified":1451543679474,"shasum":"a3d9a6b34db6c773ef872c4dd9181eb9a71460b0"},{"_id":"public/docs/contributing.html","modified":1451543679500,"shasum":"0ab148dd67d9400ed020ca5d40770df2f13978d2"},{"_id":"public/docs/common.html","modified":1451543679523,"shasum":"e5d0728122cabecd94f2ed57d519ce1f6a7cfa6b"},{"_id":"public/docs/common/markdown.html","modified":1451543679576,"shasum":"6636dcbef6bb8696323fbe523ac971f09182b799"},{"_id":"public/news/2015/11/15/beta-released/index.html","modified":1451543679595,"shasum":"10a73193e09972ec35893acd59b2151d5c37b1f8"},{"_id":"public/news/2015/11/13/first-released/index.html","modified":1451543679613,"shasum":"db51263293033cc065dc03587ab47cee60a8eef4"},{"_id":"public/news/index.html","modified":1451543679648,"shasum":"24a509a0cabedaecf0cbfafa537eda5fabe867f1"},{"_id":"public/news/2015/index.html","modified":1451543679671,"shasum":"baaaecbcd0d1d5c0d22e9bc6ce04a787cbfcc60d"},{"_id":"public/news/2015/11/index.html","modified":1451543679696,"shasum":"04d6e25d61ec43341b998fcc07adfbf9bd45d95b"},{"_id":"public/atom.xml","modified":1451543679700,"shasum":"c478d6d7320e7838ee6cc8757e238c648b1c28bd"},{"_id":"public/sitemap.xml","modified":1451543679701,"shasum":"64b0cb6d2b6a00b3269819dcab9d0ad80d3092a6"}],"Category":[],"Data":[{"_id":"languages","data":{"zh-cn":{"name":"简体中文","disqus_lang":"zh"},"en":"English"}},{"_id":"themes","data":[{"name":"landscape","description":"A brand new default theme for Hexo.","link":"https://github.com/hexojs/hexo-theme-landscape","preview":"http://hexo.io/hexo-theme-landscape","tags":["official","responsive","widget","two_column","one_column"]},{"name":"phase","description":"Feel the flow of time with Phase.","link":"https://github.com/hexojs/hexo-theme-phase","preview":"http://hexo.io/hexo-theme-phase","tags":["official","one_column"]},{"name":"light","description":"Default theme for Hexo.","link":"https://github.com/hexojs/hexo-theme-light","preview":"http://hexo.io/hexo-theme-light","tags":["official","responsive","two_column"]},{"name":"NexT","description":"NexT is an elegant theme for Hexo.","link":"https://github.com/iissnan/hexo-theme-next","preview":"http://notes.iissnan.com/","tags":["responsive","one_column","clean","white"]},{"name":"Icarus","description":"The blog theme you may fall in love with, coming to Hexo.","link":"https://github.com/ppoffice/hexo-theme-icarus","preview":"https://ppoffice.github.io/hexo-theme-icarus","tags":["responsive","three_column","clean","flat","light"]},{"name":"Hueman","description":"A redesign of Alx's wordpress theme Hueman, ported to Hexo.","link":"https://github.com/ppoffice/hexo-theme-hueman","preview":"https://ppoffice.github.io/hexo-theme-hueman","tags":["responsive","two_column","wordpress","elegant","hueman"]},{"name":"carbon","description":"Carbon is a simple theme using pjax for elegant loading.","link":"https://github.com/icylogic/carbon","preview":"https://blog.icylogic.net","tags":["simple","white & black","pjax"]},{"name":"hexadillax","description":"XadillaX built this theme with love and an otaku heart.","link":"https://github.com/XadillaX/hexadillax","preview":"https://xcoder.in/","tags":["bootstrap","simple","otaku"]},{"name":"Jacman","description":"A fresh looking and responsive theme for Hexo.","link":"https://github.com/wuchong/jacman","preview":"http://wuchong.me/jacman","tags":["responsive","two_column","blue","elegant"]},{"name":"Wixo","description":"Turn your Hexo into a Wiki!","link":"https://github.com/wzpan/hexo-theme-wixo","preview":"http://wzpan.github.io/hexo-theme-wixo/","tags":["wiki","responsive","simple","tag_plugins","bootstrap","modal"]},{"name":"Freemind","description":"Fully taking advantages of Bootstrap.","link":"https://github.com/wzpan/hexo-theme-freemind","preview":"http://wzpan.github.io/hexo-theme-freemind/","tags":["two_column","responsive","elegant","tag_plugins","bootstrap"]},{"name":"Simplest","description":"Very simple, written with swig & scss.","link":"https://github.com/dnxbf321/hexo-theme-simplest","preview":"https://dnxbf321.github.io","tags":["responsive","swig","scss","one_column"]},{"name":"hexoThemeKacper","description":"Suitable for products blog","link":"https://github.com/jaywcjlove/hexoThemeKacper","preview":"http://JSlite.io","tags":["bootstrap","tag_plugins","elegant"]},{"name":"Tranquilpeak","description":"A gorgeous responsive theme for Hexo blog framework","link":"https://github.com/LouisBarranqueiro/tranquilpeak-hexo-theme","preview":"http://louisbarranqueiro.github.io/tranquilpeak-hexo-theme","tags":["responsive","gorgeous","sidebar","two_column","one_column","tag_plugins"]},{"name":"Minos","description":"A simple and retro styled Hexo theme, concentrated more on your ideas.","link":"https://github.com/ppoffice/hexo-theme-minos","preview":"http://ppoffice.github.io/hexo-theme-minos","tags":["responsive","one_column","simple","retro","white"]},{"name":"Foundation","description":"A theme based on the Zurb Foundation 5 theme.","link":"https://github.com/chrisjlee/hexo-theme-zurb-foundation","preview":"http://chrisjlee.github.io/hexo-theme-zurb-foundation","tags":["responsive","mobile_first","simple","white"]},{"name":"simpleblock","description":"A simple theme inspired by Twenty Twelve.","link":"https://github.com/jysperm/hexo-theme-simpleblock","preview":"https://jysperm.me","tags":["responsive","two_column","simple","light"]},{"name":"yinwang","description":"Simplest View For Your Article Best.","link":"https://github.com/mickeyouyou/yinwang","preview":"http://www.fzb.me","tags":["responsive","simple","chinese"]},{"name":"zzoman2015","description":"Simplest Theme by ZZOMAN","link":"https://github.com/reumia/hexo-theme-zzoman2015","preview":"http://dev.zzoman.com","tags":["simple","responsive","one_column","korean"]},{"name":"Maupassant","description":"A simple Hexo template with great performance on different devices.","link":"https://github.com/tufu9441/maupassant-hexo","preview":"https://www.haomwei.com","tags":["simple","responsive","two_column","white","jade","scss"]},{"name":"ttstyle","description":"A three column theme for hexo.Responsive And SEO best.","link":"https://github.com/tangkunyin/hexo-theme-ttstyle","preview":"http://shuoit.net","tags":["responsive","simple","seo","chinese","three_column"]},{"name":"Jekyll","description":"A hexo theme inspire by jekyllrb.com.","link":"https://github.com/pinggod/hexo-theme-jekyll","preview":"http://pinggod.com","tags":["中文","jekyll","dark"]},{"name":"Yelee","description":"Another simple and elegant Hexo theme by MOxFIVE","link":"https://github.com/MOxFIVE/hexo-theme-yelee","preview":"http://moxfive.xyz","tags":["responsive","two_column","toc","elegant","simple","background_image"]}]},{"_id":"sidebar","data":{"docs":{"getting_started":{"overview":"index.html"},"html":{"html_code":"html/code.html","html_note":"html/note.html","html_template":"html/template.html","html_webapp":"html/webapp.html"},"image":{"image_format":"image/format.html","image_size":"image/size.html","image_quality":"image/quality.html","image_import":"image/import.html"},"css":{"css_code":"css/code.html","css_note":"css/note.html","css_sass":"css/sass.html","css_reset":"css/reset.html","css_query":"css/query.html","css_webkit":"css/webkit.html"},"name":{"name_dir":"name/dir.html","name_image":"name/image.html","name_htmlcss":"name/htmlcss.html","name_class":"name/classname.html"}}}},{"_id":"plugins","data":[{"name":"hexo-wordcount","description":"Word Count Plugin for Hexo.","link":"https://github.com/willin/hexo-wordcount","tags":["wordcount","count","words"]},{"name":"hexo-imagemin","description":"Minify images with imagemin.","link":"https://github.com/vseventer/hexo-imagemin","tags":["assets","filter","imagemin","images"]},{"name":"hexo-more-css","description":"Compress CSS with more-css.","link":"https://github.com/vseventer/hexo-more-css","tags":["css","filter","minify","more-css"]},{"name":"hexo-uncss","description":"Remove unused styles from CSS with uncss.","link":"https://github.com/vseventer/hexo-uncss","tags":["css","filter","html","uncss"]},{"name":"hexo-ruby-character","description":"Ruby charater tag for Hexo, like 博客 (bó kè) .","link":"https://github.com/JamesPan/hexo-ruby-character","tags":["tag","ruby-character","pinyin"]},{"name":"hexo-server","description":"Server module for Hexo.","link":"https://github.com/hexojs/hexo-server","tags":["official","server","console"]},{"name":"hexo-cli","description":"Command line interface for Hexo.","link":"https://github.com/hexojs/hexo-cli","tags":["official","console","cli"]},{"name":"hexo-browsersync","description":"BrowserSync plugin for Hexo.","link":"https://github.com/hexojs/hexo-browsersync","tags":["official","browsersync","server"]},{"name":"hexo-renderer-less","description":"Less renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-less","tags":["official","renderer","less","style","css"]},{"name":"hexo-generator-archive","description":"Archive generator plugin for Hexo.","link":"https://github.com/hexojs/hexo-generator-archive","tags":["official","generator","archive"]},{"name":"hexo-generator-category","description":"Category generator plugin for Hexo.","link":"https://github.com/hexojs/hexo-generator-category","tags":["official","generator","category"]},{"name":"hexo-generator-tag","description":"Tag generator plugin for Hexo.","link":"https://github.com/hexojs/hexo-generator-tag","tags":["official","generator","tag"]},{"name":"hexo-generator-index","description":"Index generator plugin for Hexo.","link":"https://github.com/hexojs/hexo-generator-index","tags":["official","generator","index"]},{"name":"hexo-generator-search","description":"Search data generator for Hexo.","link":"https://github.com/PaicHyperionDev/hexo-generator-search","tags":["generator","search"]},{"name":"hexo-renderer-marked","description":"Markdown renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-marked","tags":["official","renderer","markdown","marked"]},{"name":"hexo-autoprefixer","description":"Autoprefixer plugin for Hexo.","link":"https://github.com/hexojs/hexo-autoprefixer","tags":["official","filter","css","autoprefixer"]},{"name":"hexo-clean-css","description":"Minify CSS files with clean-css.","link":"https://github.com/hexojs/hexo-clean-css","tags":["official","filter","css","cleancss","minify"]},{"name":"hexo-html-minifier","description":"Minify HTML files with HTMLMinifier.","link":"https://github.com/hexojs/hexo-html-minifier","tags":["official","filter","html","minify"]},{"name":"hexo-uglify","description":"Minify JavaScript files with UglifyJS.","link":"https://github.com/hexojs/hexo-uglify","tags":["official","filter","js","uglify","minify"]},{"name":"hexo-notify","description":"Notification plugins for Hexo.","link":"https://github.com/hexojs/hexo-notify","tags":["official","notify"]},{"name":"hexo-deployer-openshift","description":"OpenShift deployer for Hexo.","link":"https://github.com/hexojs/hexo-deployer-openshift","tags":["official","deployer","openshift"]},{"name":"hexo-deployer-heroku","description":"Heroku deployer for Hexo.","link":"https://github.com/hexojs/hexo-deployer-heroku","tags":["official","deployer","heroku"]},{"name":"hexo-deployer-git","description":"Git deployer plugin for Hexo.","link":"https://github.com/hexojs/hexo-deployer-git","tags":["official","deployer","git"]},{"name":"hexo-deployer-rsync","description":"Rsync deployer plugin for Hexo.","link":"https://github.com/hexojs/hexo-deployer-rsync","tags":["official","deployer","rsync"]},{"name":"hexo-deployer-s3","description":"Amazon S3 deployer plugin for Hexo.","link":"https://github.com/nt3rp/hexo-deployer-s3","tags":["deployer","s3"]},{"name":"hexo-generator-sitemap","description":"Sitemap generator for Hexo.","link":"https://github.com/hexojs/hexo-generator-sitemap","tags":["official","generator","sitemap"]},{"name":"hexo-generator-seo-friendly-sitemap","description":"SEO friendly sitemap generator for Hexo. Generate separated sitemap files for pages, posts, categories, tags and add a XSL stylesheet.","link":"https://github.com/ludoviclefevre/hexo-generator-seo-friendly-sitemap","tags":["generator","sitemap","SEO"]},{"name":"hexo-generator-feed","description":"Feed generator for Hexo.","link":"https://github.com/hexojs/hexo-generator-feed","tags":["official","generator","feed","rss"]},{"name":"hexo-renderer-stylus","description":"Stylus renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-stylus","tags":["official","renderer","css","stylus"]},{"name":"hexo-filter-auto-spacing","description":"Add spaces between CJK characters and western characters.","link":"https://github.com/hexojs/hexo-filter-auto-spacing","tags":["official","filter","spacing"]},{"name":"hexo-yuidoc","description":"Generate YUIDoc with Hexo.","link":"https://github.com/hexojs/hexo-yuidoc","tags":["official","generator","yuidoc"]},{"name":"hexo-migrator-wordpress","description":"WordPress migrator for Hexo.","link":"https://github.com/hexojs/hexo-migrator-wordpress","tags":["official","migrator","wordpress"]},{"name":"hexo-migrator-rss","description":"RSS migrator for Hexo.","link":"https://github.com/hexojs/hexo-migrator-rss","tags":["official","migrator","rss"]},{"name":"hexo-migrator-github-issue","description":"Github issue migrator for Hexo.","link":"https://github.com/Yikun/hexo-migrator-github-issue","tags":["migrator","github","issue"]},{"name":"hexo-renderer-ejs","description":"EJS renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-ejs","tags":["official","renderer","ejs"]},{"name":"hexo-renderer-jade","description":"Jade renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-jade","tags":["official","renderer","jade"]},{"name":"hexo-renderer-haml","description":"Haml renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-haml","tags":["official","renderer","haml"]},{"name":"hexo-renderer-dot","description":"doT renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-dot","tags":["official","renderer","dot"]},{"name":"hexo-renderer-coffeescript","description":"CoffeeScript renderer for Hexo.","link":"https://github.com/hexojs/hexo-renderer-coffeescript","tags":["official","renderer","coffeescript","coffee"]},{"name":"hexo-livereload","description":"Livereload plugin for Hexo.","link":"https://github.com/hexojs/hexo-livereload","tags":["official","server","livereload"]},{"name":"hexo-generator-alias","description":"Generate alias pages for redirecting to post, pages or URL.","link":"https://github.com/hexojs/hexo-generator-alias","tags":["official","generator","alias","redirect"]},{"name":"hexo-deployer-ftpsync","description":"FTP deployer for Hexo.","link":"https://github.com/hexojs/hexo-deployer-ftpsync","tags":["official","deployer","ftp"]},{"name":"hexo-migrator-blogger","description":"Blogger(blogspot.com) migrator for Hexo.","link":"https://github.com/hr6r/hexo-migrator-blogger","tags":["migrator","blogger","blogspot"]},{"name":"hexo-renderer-markdown-it","description":"Very fast Markdown renderer with support for CommonMark, GFM and more.","link":"https://github.com/celsomiranda/hexo-renderer-markdown-it","tags":["renderer","markdown","markdown-it"]},{"name":"hexo-renderer-org","description":"Hexo renderer plugin for emacs org-mode.","link":"https://github.com/CodeFalling/hexo-renderer-org","tags":["renderer","orgmode"]},{"name":"hexo-renderer-bourbon","description":"An up-to-date node-sass wrapper for Hexo that includes Bourbon mixins.","link":"https://github.com/celsomiranda/hexo-renderer-bourbon","tags":["renderer","sass","libsass","bourbon"]},{"name":"hexo-migrator-joomla","description":"Joomla migrator for Hexo.","link":"https://github.com/welksonramos/hexo-migrator-joomla","tags":["official","joomla","migrator"]},{"name":"hexo-renderer-yasr","description":"A Stylus CSS renderer for Hexo that uses Nib, Axis, Rupture, Jeet and Autoprefixer with Sourcemaps.","link":"https://github.com/celsomiranda/hexo-renderer-yasr","tags":["renderer","css","stylus","nib","jeet","rupture","axis","sourcemaps"]},{"name":"hexo-renderer-pandoc","description":"A pandoc-flavored-markdown renderer for Hexo. Also supports rendering textile, reStructedText, etc.","link":"https://github.com/wzpan/hexo-renderer-pandoc","tags":["renderer","pandoc","markdown","textile","reStructedText"]},{"name":"hexo-renderer-restructuredtext","description":"Renderer for restructuredtext using Docutils","link":"https://gitlab.com/mcepl/hexo-renderer-restructuredtext.git","tags":["renderer","reStructedText","rst"]},{"name":"hexo-tag-bootstrap","description":"hexo-tag-bootstrap is a collections of Hexo tag plugins, which wraps most Twitter-Bootstrap 3.1.1 components in a uniformed way.","link":"https://github.com/wzpan/hexo-tag-bootstrap","tags":["tag_plugins","bootstrap"]},{"name":"hexo-tag-spotify","description":"Server module for Hexo.","link":"https://github.com/ivanovyordan/hexo-tag-spotify","tags":["tag","spotify","music","widget"]},{"name":"hexo-tag-plantuml","description":"hexo-tag-plantuml is a tag plugin of Hexo. It can work with plantuml to draw uml.","link":"https://github.com/oohcoder/hexo-tag-plantuml","tags":["tag_plugins","plantuml","uml"]},{"name":"hexo-toc","description":"Insert a markdown TOC(Table Of Content) before posts be rendered when and where a placeholer found.","link":"https://github.com/bubkoo/hexo-toc","tags":["toc","filter","markdown","placeholder"]},{"name":"hexo-filter-fenced-code","description":"Extend syntax for the native fenced code block. Use tag-plugins as fenced code block.","link":"https://github.com/bubkoo/hexo-filter-fenced-code","tags":["filter","code block","extend","syntax","markdown"]},{"name":"hexo-beautify","description":"Beautify Hexo generated HTML, CSS and JS files, using js-beautify.","link":"https://github.com/celsomiranda/hexo-beautify","tags":["filter","beautify","html","css","js"]},{"name":"hexo-qiniu-sync","description":"Sync static files to Qiniu CDN for you automatically","link":"https://github.com/gyk001/hexo-qiniu-sync","tags":["sync","qiniu","cdn","image","css","js"]},{"name":"hexo-front-matter-excerpt","description":"Write post excerpts using YAML front matter.","link":"https://github.com/lalunamel/hexo-front-matter-excerpt","tags":["excerpt","front-matter"]},{"name":"hexo-github","description":"Display a GitHub repositoy badge with timeline in your post to keep track of version difference.","link":"https://github.com/akfish/hexo-github","tags":["tag","timeline","badge","github","version control"]},{"name":"hexo-tag-googlemaps","description":"A hexo tag for google maps. Does much more than a simple embedded iFrame","link":"https://github.com/the-simian/hexo-tag-googlemaps","tags":["tag","googlemaps","map","latitude","longitude","markers"]},{"name":"hexo-tag-googlecharts","description":"A hexo tag for inserting google charts in your blog","link":"https://github.com/juampi92/hexo-tag-googlecharts","tags":["tag","googlecharts","chart"]},{"name":"hexo-tag-deezer","description":"Tag for showing Deezer track widget on page.","link":"https://github.com/OdinsHat/hexo-tag-deezer","tags":["tag","deezer","music","widget"]},{"name":"hexo-tag-flickr","description":"Allows you to embed Flickr photo on your blog posts.","link":"https://github.com/visioncan/hexo-tag-flickr","tags":["tag","flickr","photo","image"]},{"name":"hexo-tag-vine","description":"Embed your Vine videos in posts/pages.","link":"https://github.com/welksonramos/hexo-tag-vine","tags":["tag","vine","video","social"]},{"name":"hexo-tag-xvideos","description":"Embed xvideos player in your posts/pages.","link":"https://github.com/welksonramos/hexo-tag-xvideos","tags":["tag","xvideos","video"]},{"name":"hexo-hey","description":"An admin plugin for Hexo.","link":"https://github.com/nihgwu/hexo-hey","tags":["admin","dashboard","editor"]},{"name":"hexo-admin","description":"Edit your content in style with this integrating blogging environment.","link":"https://github.com/jaredly/hexo-admin","tags":["admin","interface","editor","IDE","preview","ghost","dashboard"]},{"name":"hexo-tag-bilibili","description":"Embed bilibili videos in Hexo posts/pages.","link":"https://github.com/Z4Tech/hexo-tag-bilibili","tags":["tag","bilibili","video"]},{"name":"hexo-generator-json-content","description":"Generate a JSON file for generic use or consumption with the contents of posts and pages. Useful for AJAX search or content API.","link":"https://github.com/alexbruno/hexo-generator-json-content","tags":["generator","content","json","data","search","api"]},{"name":"hexo-tag-niconico","description":"Embed NicoNico seiga/douga in Hexo posts/pages.","link":"https://github.com/kamiya555/hexo-tag-niconico","tags":["tag","niconico","video","image"]}]},{"_id":"menu","data":{"docs":"docs/","news":"news/"}}],"Page":[{"layout":"plugins","title":"Themes","data":"themes","partial":"theme","comments":0,"_content":"","source":"themes/index.md","raw":"layout: plugins\ntitle: Themes\ndata: themes\npartial: theme\ncomments: false\n---\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"themes/index.html","_id":"ciitvml2j00002ufykjwvovrj"},{"layout":"plugins","title":"Plugins","data":"plugins","partial":"plugin","comments":0,"_content":"","source":"plugins/index.md","raw":"layout: plugins\ntitle: Plugins\ndata: plugins\npartial: plugin\ncomments: false\n---\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"plugins/index.html","_id":"ciitvml2o00012ufyt5mgiqc7"},{"layout":"index","subtitle":"Front-End Coding Guidelines","slogan":"前端代码规范","description":"Best Coding Guidelines or Front-End Developer.","comments":0,"_content":"ul#intro-feature-list.intro-feature-list\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-code\n h3.intro-feature-title HTML规范\n p.intro-feature-desc 基于W3C、苹果开发者等官方文档,并结合团队日常业务需求以及团队在日常开发过程中总结提炼出的经验而约定。\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-picture-o\n h3.intro-feature-title 图片规范\n p.intro-feature-desc 了解各种图片格式特性,根据特性制定图片规范,包括但不限于图片的质量约定、图片引入方式、图片合并处理等。\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-pencil\n h3.intro-feature-title CSS规范\n p.intro-feature-desc 统一团队 CSS 代码书写和 SASS 预编译语言的语法风格,提供常用媒体查询语句和浏览器私有属性引用,并从业务层面统一规范常用模块的引用。\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-star\n h3.intro-feature-title 命名规范\n p.intro-feature-desc 从 `目录命名`、`图片命名`、`ClassName` 命名等层面约定规范团队的命名习惯,增强团队代码的可读性。\n","source":"index.jade","raw":"layout: index\nsubtitle: \"Front-End Coding Guidelines\"\nslogan: 前端代码规范\ndescription: \"Best Coding Guidelines or Front-End Developer.\"\ncomments: false\n---\nul#intro-feature-list.intro-feature-list\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-code\n h3.intro-feature-title HTML规范\n p.intro-feature-desc 基于W3C、苹果开发者等官方文档,并结合团队日常业务需求以及团队在日常开发过程中总结提炼出的经验而约定。\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-picture-o\n h3.intro-feature-title 图片规范\n p.intro-feature-desc 了解各种图片格式特性,根据特性制定图片规范,包括但不限于图片的质量约定、图片引入方式、图片合并处理等。\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-pencil\n h3.intro-feature-title CSS规范\n p.intro-feature-desc 统一团队 CSS 代码书写和 SASS 预编译语言的语法风格,提供常用媒体查询语句和浏览器私有属性引用,并从业务层面统一规范常用模块的引用。\n li.intro-feature-wrap\n .intro-feature\n .intro-feature-icon\n i.fa.fa-star\n h3.intro-feature-title 命名规范\n p.intro-feature-desc 从 `目录命名`、`图片命名`、`ClassName` 命名等层面约定规范团队的命名习惯,增强团队代码的可读性。\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"index.html","title":"","_id":"ciitvml3800022ufyeh793l1p"},{"_content":"## 命名规范\n\n由历史原因及个人习惯引起的 DOM 结构、命名不统一,导致不同成员在维护同一页面时,效率低下,迭代、维护成本极高。\n\n### 目录命名\n\n* 项目文件夹:your project name\n* 样式文件夹:css\n* 脚本文件夹:js\n* 样式类图片文件夹:images\n\n### HTML/CSS文件命名\n\n确保命名总是以字母开头而不是数字,且字母一律小写,以下划线连接\n\n\t\n\tjdc.html\n\tjdc_list.html\n\tjdc_detail.html\n\n\t\n\tjdc.scss\n\tjdc_list.scss\n\tjdc_detail.scss\n\t\n### 图片命名\n\n#### 命名顺序\n\n图片命名建议以以下顺序命名:\n\n**图片业务(可选) +(mod_) 图片功能类别(必选)+ 图片模块名称(可选) + 图片精度(可选)**\n\n* 图片业务:\n\t- pp_:拍拍\n\t- wx_:微信\n\t- sq_:手Q\n\t- jd_:京东商城\n\t- ...\n\n* 图片功能类别:\n\n\t- mod_:是否公共,可选\n\t- icon:模块类固化的图标\n\t- logo:LOGO类\n\t- spr:单页面各种元素合并集合\n\t- btn:按钮\n\t- bg:可平铺或者大背景\n\t- ...\n\t\n* 图片模块名称:\n\n\t- goodslist:商品列表 \n\t- goodsinfo:商品信息\n\t- userava\ttar:用户头像\n\t- ...\n\t\n* 图片精度:\n\n\t- 普清:@1x\n\t- Retina:@2x | @3x\n\t- ...\n\n\t\n如下面例子:\n\n\t公共模块:\n\twx_mod_btn_goodlist@2x.png\n\twx_mod_btn_goodlist.png\n\tmod_btn_goodlist.png \n\t\n\t非公共模块:\n\twx_btn_goodlist@2x.png\n\twx_btn_goodlist.png\n\tbtn_goodlist.png\n\n#### 交叉业务协作\n\n业务交叉协作的时候,为了避免图片命名冲突,建议图片名加上业务和模块前辍,如拍拍侧和手Q侧的业务交叉合作时,侧栏导航icon雪碧图命名:\n\n\t推荐:\n\tpp_icon_mod_sidenav.png\n\n\t不推荐:\n\ticon_mod_sidenav.png\n\n处理高清图片的时候,命名应该加上图片相应的精度说明\n\n\t推荐:\n\tjdc_logo@1x.png\n\tjdc_logo@2x.png\n\n\t不推荐:\n\tjdc_logo.png\n\tjdc_logo_retina.png\n\n\t\n### ClassName命名\n\nClassName的命名应该尽量精短、明确,必须以**字母开头命名**,且**全部字母为小写**,单词之间**统一使用下划线** “_” 连接\n\n#### 命名原则 \n\n基于姓氏命名法(继承 + 外来),如下图:\n\n![enter image description here](http://labs.qiang.it/ppguide/img/standard_jiapu.png)\n\n祖先模块不能出现下划线,除了是全站公用模块,如 `mod_` 系列的命名:\n\n**推荐:**\n\n\t
\n\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t...\n\t\t
\n\t
\n\t\n\t\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\n\t\n**不推荐:**\n\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\t\n\n在子孙模块数量可预测的情况下,严格继承祖先模块的命名前缀\n\n\t
\n \t
\n \t
\n\t
\n\t\t\n当子孙模块超过4级或以上的时候,可以考虑在祖先模块内具有识辨性的独立缩写作为新的子孙模块\n\n**推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n**不推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n#### 模块命名\n\n全站公共模块:以 `mod_` 开头\n\n\t
\n\n业务公共模块:以 `业务名_mod_` 开头\n\n\t
\n\n#### 常用命名推荐\n\n**注意**:ad,baaner 等有机会和广告挂勾的字眠不建议直接用来做 ClassName,因为有些浏览器插件(Chrome的广告拦截插件等)会直接过滤这些类名,因此 \n\n`
` 这种情况不应该出现\n\n另外,**敏感不和谐字眼**也不应该出现,如 \n\n\t
\n\t
\n\t
\n\t
\n\t
\n\t...\n\n| ClassName | 含义 |\n| ------------ | ------------- | \n| about | 关于 |\n| account | 账户 |\n| arrow | 箭头图标 |\n| article | 文章 |\n| aside | 边栏 |\n| audio | 音频 |\n| avatar | 头像 |\n| bg,background | 背景 |\n| bar | 栏(工具类)|\n| branding | 品牌化 |\n| crumb,breadcrumbs | 面包屑 |\n| btn,button | 按钮 | \n| caption | 标题,说明 |\n| category | 分类 |\n| chart | 图表 |\n| clearfix | 清除浮动 |\n| close | 关闭 |\n| col,column | 列 |\n| comment | 评论 | \n| community | 社区 |\n| container | 容器 |\n| content | 内容 | \n| copyright | 版权 | \n| current | 当前态,选中态 | \n| default | 默认 | \n| description | 描述 | \n| details | 细节 | \n| disabled | 不可用 | \n| entry | 文章,博文 | \n| error | 错误 | \n| even | 偶数,常用于多行列表或表格中 | \n| fail | 失败(提示) | \n| feature | 专题 | \n| fewer | 收起 | \n| field | 用于表单的输入区域 | \n| figure | 图 | \n| filter | 筛选 | \n| first | 第一个,常用于列表中 | \n| footer | 页脚 | \n| forum | 论坛 | \n| gallery | 画廊 | \n| group | 模块,清除浮动 | \n| header | 页头 | \n| help | 帮助 | \n| hide | 隐藏 | \n| hightlight | 高亮 | \n| home | 主页 | \n| icon | 图标 | \n| info,information | 信息 | \n| last | 最后一个,常用于列表中 | \n| links | 链接 | \n| login | 登录 | \n| logout | 退出 | \n| logo | 标志 | \n| main | 主体 | \n| menu | 菜单 | \n| meta | 作者、更新时间等信息栏,一般位于标题之下 | \n| module | 模块 | \n| more | 更多(展开) | \n| msg,message | 消息 | \n| nav,navigation | 导航 | \n| next | 下一页 | \n| nub | 小块 | \n| odd | 奇数,常用于多行列表或表格中 | \n| off | 鼠标离开 | \n| on | 鼠标移过 | \n| output | 输出 | \n| pagination | 分页 | \n| pop,popup | 弹窗 | \n| preview | 预览 | \n| previous | 上一页 | \n| primary | 主要 | \n| progress | 进度条 | \n| promotion | 促销 | \n| rcommd,recommendations | 推荐 | \n| reg,register | 注册 | \n| save | 保存 | \n| search | 搜索 | \n| secondary | 次要 | \n| section | 区块 | \n| selected | 已选 | \n| share | 分享 | \n| show | 显示 | \n| sidebar | 边栏,侧栏 | \n| slide | 幻灯片,图片切换 | \n| sort | 排序 | \n| sub | 次级的,子级的 | \n| submit | 提交 | \n| subscribe | 订阅 | \n| subtitle | 副标题 | \n| success | 成功(提示) | \n| summary | 摘要 | \n| tab | 标签页 | \n| table | 表格 | \n| txt,text | 文本 | \n| thumbnail | 缩略图 | \n| time | 时间 | \n| tips | 提示 | \n| title | 标题 | \n| video | 视频 | \n| wrap | 容器,包,一般用于最外层 | \n| wrapper | 容器,包,一般用于最外层 | \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n","source":"docs/name/jdc_fd_guide_name.md","raw":"## 命名规范\n\n由历史原因及个人习惯引起的 DOM 结构、命名不统一,导致不同成员在维护同一页面时,效率低下,迭代、维护成本极高。\n\n### 目录命名\n\n* 项目文件夹:your project name\n* 样式文件夹:css\n* 脚本文件夹:js\n* 样式类图片文件夹:images\n\n### HTML/CSS文件命名\n\n确保命名总是以字母开头而不是数字,且字母一律小写,以下划线连接\n\n\t\n\tjdc.html\n\tjdc_list.html\n\tjdc_detail.html\n\n\t\n\tjdc.scss\n\tjdc_list.scss\n\tjdc_detail.scss\n\t\n### 图片命名\n\n#### 命名顺序\n\n图片命名建议以以下顺序命名:\n\n**图片业务(可选) +(mod_) 图片功能类别(必选)+ 图片模块名称(可选) + 图片精度(可选)**\n\n* 图片业务:\n\t- pp_:拍拍\n\t- wx_:微信\n\t- sq_:手Q\n\t- jd_:京东商城\n\t- ...\n\n* 图片功能类别:\n\n\t- mod_:是否公共,可选\n\t- icon:模块类固化的图标\n\t- logo:LOGO类\n\t- spr:单页面各种元素合并集合\n\t- btn:按钮\n\t- bg:可平铺或者大背景\n\t- ...\n\t\n* 图片模块名称:\n\n\t- goodslist:商品列表 \n\t- goodsinfo:商品信息\n\t- userava\ttar:用户头像\n\t- ...\n\t\n* 图片精度:\n\n\t- 普清:@1x\n\t- Retina:@2x | @3x\n\t- ...\n\n\t\n如下面例子:\n\n\t公共模块:\n\twx_mod_btn_goodlist@2x.png\n\twx_mod_btn_goodlist.png\n\tmod_btn_goodlist.png \n\t\n\t非公共模块:\n\twx_btn_goodlist@2x.png\n\twx_btn_goodlist.png\n\tbtn_goodlist.png\n\n#### 交叉业务协作\n\n业务交叉协作的时候,为了避免图片命名冲突,建议图片名加上业务和模块前辍,如拍拍侧和手Q侧的业务交叉合作时,侧栏导航icon雪碧图命名:\n\n\t推荐:\n\tpp_icon_mod_sidenav.png\n\n\t不推荐:\n\ticon_mod_sidenav.png\n\n处理高清图片的时候,命名应该加上图片相应的精度说明\n\n\t推荐:\n\tjdc_logo@1x.png\n\tjdc_logo@2x.png\n\n\t不推荐:\n\tjdc_logo.png\n\tjdc_logo_retina.png\n\n\t\n### ClassName命名\n\nClassName的命名应该尽量精短、明确,必须以**字母开头命名**,且**全部字母为小写**,单词之间**统一使用下划线** “_” 连接\n\n#### 命名原则 \n\n基于姓氏命名法(继承 + 外来),如下图:\n\n![enter image description here](http://labs.qiang.it/ppguide/img/standard_jiapu.png)\n\n祖先模块不能出现下划线,除了是全站公用模块,如 `mod_` 系列的命名:\n\n**推荐:**\n\n\t
\n\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t...\n\t\t
\n\t
\n\t\n\t\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\n\t\n**不推荐:**\n\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\t\n\n在子孙模块数量可预测的情况下,严格继承祖先模块的命名前缀\n\n\t
\n \t
\n \t
\n\t
\n\t\t\n当子孙模块超过4级或以上的时候,可以考虑在祖先模块内具有识辨性的独立缩写作为新的子孙模块\n\n**推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n**不推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n#### 模块命名\n\n全站公共模块:以 `mod_` 开头\n\n\t
\n\n业务公共模块:以 `业务名_mod_` 开头\n\n\t
\n\n#### 常用命名推荐\n\n**注意**:ad,baaner 等有机会和广告挂勾的字眠不建议直接用来做 ClassName,因为有些浏览器插件(Chrome的广告拦截插件等)会直接过滤这些类名,因此 \n\n`
` 这种情况不应该出现\n\n另外,**敏感不和谐字眼**也不应该出现,如 \n\n\t
\n\t
\n\t
\n\t
\n\t
\n\t...\n\n| ClassName | 含义 |\n| ------------ | ------------- | \n| about | 关于 |\n| account | 账户 |\n| arrow | 箭头图标 |\n| article | 文章 |\n| aside | 边栏 |\n| audio | 音频 |\n| avatar | 头像 |\n| bg,background | 背景 |\n| bar | 栏(工具类)|\n| branding | 品牌化 |\n| crumb,breadcrumbs | 面包屑 |\n| btn,button | 按钮 | \n| caption | 标题,说明 |\n| category | 分类 |\n| chart | 图表 |\n| clearfix | 清除浮动 |\n| close | 关闭 |\n| col,column | 列 |\n| comment | 评论 | \n| community | 社区 |\n| container | 容器 |\n| content | 内容 | \n| copyright | 版权 | \n| current | 当前态,选中态 | \n| default | 默认 | \n| description | 描述 | \n| details | 细节 | \n| disabled | 不可用 | \n| entry | 文章,博文 | \n| error | 错误 | \n| even | 偶数,常用于多行列表或表格中 | \n| fail | 失败(提示) | \n| feature | 专题 | \n| fewer | 收起 | \n| field | 用于表单的输入区域 | \n| figure | 图 | \n| filter | 筛选 | \n| first | 第一个,常用于列表中 | \n| footer | 页脚 | \n| forum | 论坛 | \n| gallery | 画廊 | \n| group | 模块,清除浮动 | \n| header | 页头 | \n| help | 帮助 | \n| hide | 隐藏 | \n| hightlight | 高亮 | \n| home | 主页 | \n| icon | 图标 | \n| info,information | 信息 | \n| last | 最后一个,常用于列表中 | \n| links | 链接 | \n| login | 登录 | \n| logout | 退出 | \n| logo | 标志 | \n| main | 主体 | \n| menu | 菜单 | \n| meta | 作者、更新时间等信息栏,一般位于标题之下 | \n| module | 模块 | \n| more | 更多(展开) | \n| msg,message | 消息 | \n| nav,navigation | 导航 | \n| next | 下一页 | \n| nub | 小块 | \n| odd | 奇数,常用于多行列表或表格中 | \n| off | 鼠标离开 | \n| on | 鼠标移过 | \n| output | 输出 | \n| pagination | 分页 | \n| pop,popup | 弹窗 | \n| preview | 预览 | \n| previous | 上一页 | \n| primary | 主要 | \n| progress | 进度条 | \n| promotion | 促销 | \n| rcommd,recommendations | 推荐 | \n| reg,register | 注册 | \n| save | 保存 | \n| search | 搜索 | \n| secondary | 次要 | \n| section | 区块 | \n| selected | 已选 | \n| share | 分享 | \n| show | 显示 | \n| sidebar | 边栏,侧栏 | \n| slide | 幻灯片,图片切换 | \n| sort | 排序 | \n| sub | 次级的,子级的 | \n| submit | 提交 | \n| subscribe | 订阅 | \n| subtitle | 副标题 | \n| success | 成功(提示) | \n| summary | 摘要 | \n| tab | 标签页 | \n| table | 表格 | \n| txt,text | 文本 | \n| thumbnail | 缩略图 | \n| time | 时间 | \n| tips | 提示 | \n| title | 标题 | \n| video | 视频 | \n| wrap | 容器,包,一般用于最外层 | \n| wrapper | 容器,包,一般用于最外层 | \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/name/jdc_fd_guide_name.html","title":"","comments":1,"layout":"page","_id":"ciitvml3a00032ufy8q2356pr"},{"title":"图片命名","_content":"\n## 命名顺序\n\n图片命名建议以以下顺序命名:\n\n**图片业务(可选) +(mod_) 图片功能类别(必选)+ 图片模块名称(可选) + 图片精度(可选)**\n\n* 图片业务:\n\t- pp_:拍拍\n\t- wx_:微信\n\t- sq_:手Q\n\t- jd_:京东商城\n\t- ...\n\n\n* 图片功能类别:\n\n\t- mod_:是否公共,可选\n\t- icon:模块类固化的图标\n\t- logo:LOGO类\n\t- spr:单页面各种元素合并集合\n\t- btn:按钮\n\t- bg:可平铺或者大背景\n\t- ...\n\n\t\n* 图片模块名称:\n\n\t- goodslist:商品列表 \n\t- goodsinfo:商品信息\n\t- userava\ttar:用户头像\n\t- ...\n\t\n\t\n* 图片精度:\n\n\t- 普清:@1x\n\t- Retina:@2x | @3x\n\t- ...\n\n\t\n如下面例子:\n\n\t公共模块:\n\twx_mod_btn_goodlist@2x.png\n\twx_mod_btn_goodlist.png\n\tmod_btn_goodlist.png \n\t\n\t非公共模块:\n\twx_btn_goodlist@2x.png\n\twx_btn_goodlist.png\n\tbtn_goodlist.png\n\n## 交叉业务协作\n\n业务交叉协作的时候,为了避免图片命名冲突,建议图片名加上业务和模块前辍,如拍拍侧和手Q侧的业务交叉合作时,侧栏导航icon雪碧图命名:\n\n\t推荐:\n\tpp_icon_mod_sidenav.png\n\n\t不推荐:\n\ticon_mod_sidenav.png\n\n处理高清图片的时候,命名应该加上图片相应的精度说明\n\n\t推荐:\n\tjdc_logo@1x.png\n\tjdc_logo@2x.png\n\n\t不推荐:\n\tjdc_logo.png\n\tjdc_logo_retina.png\n","source":"docs/name/image.md","raw":"title: 图片命名\n---\n\n## 命名顺序\n\n图片命名建议以以下顺序命名:\n\n**图片业务(可选) +(mod_) 图片功能类别(必选)+ 图片模块名称(可选) + 图片精度(可选)**\n\n* 图片业务:\n\t- pp_:拍拍\n\t- wx_:微信\n\t- sq_:手Q\n\t- jd_:京东商城\n\t- ...\n\n\n* 图片功能类别:\n\n\t- mod_:是否公共,可选\n\t- icon:模块类固化的图标\n\t- logo:LOGO类\n\t- spr:单页面各种元素合并集合\n\t- btn:按钮\n\t- bg:可平铺或者大背景\n\t- ...\n\n\t\n* 图片模块名称:\n\n\t- goodslist:商品列表 \n\t- goodsinfo:商品信息\n\t- userava\ttar:用户头像\n\t- ...\n\t\n\t\n* 图片精度:\n\n\t- 普清:@1x\n\t- Retina:@2x | @3x\n\t- ...\n\n\t\n如下面例子:\n\n\t公共模块:\n\twx_mod_btn_goodlist@2x.png\n\twx_mod_btn_goodlist.png\n\tmod_btn_goodlist.png \n\t\n\t非公共模块:\n\twx_btn_goodlist@2x.png\n\twx_btn_goodlist.png\n\tbtn_goodlist.png\n\n## 交叉业务协作\n\n业务交叉协作的时候,为了避免图片命名冲突,建议图片名加上业务和模块前辍,如拍拍侧和手Q侧的业务交叉合作时,侧栏导航icon雪碧图命名:\n\n\t推荐:\n\tpp_icon_mod_sidenav.png\n\n\t不推荐:\n\ticon_mod_sidenav.png\n\n处理高清图片的时候,命名应该加上图片相应的精度说明\n\n\t推荐:\n\tjdc_logo@1x.png\n\tjdc_logo@2x.png\n\n\t不推荐:\n\tjdc_logo.png\n\tjdc_logo_retina.png\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/name/image.html","comments":1,"layout":"page","_id":"ciitvml3c00042ufyfppta5li"},{"title":"HTML/CSS文件命名","_content":"\n确保文件命名总是以字母开头而不是数字,且字母一律小写,以下划线连接且不带其他标点符号,如:\n\n``` html\n\t\n\tjdc.html\n\tjdc_list.html\n\tjdc_detail.html\n\n\t\n\tjdc.scss\n\tjdc_list.scss\n\tjdc_detail.scss\n```","source":"docs/name/htmlcss.md","raw":"title: HTML/CSS文件命名\n---\n\n确保文件命名总是以字母开头而不是数字,且字母一律小写,以下划线连接且不带其他标点符号,如:\n\n``` html\n\t\n\tjdc.html\n\tjdc_list.html\n\tjdc_detail.html\n\n\t\n\tjdc.scss\n\tjdc_list.scss\n\tjdc_detail.scss\n```","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/name/htmlcss.html","comments":1,"layout":"page","_id":"ciitvml3d00052ufy6swl43ev"},{"title":"命名规范","_content":"\n由历史原因及个人习惯引起的 DOM 结构、命名不统一,导致不同成员在维护同一页面时,效率低下,迭代、维护成本极高。\n\n### 目录命名\n\n* 项目文件夹:projectname\n* 样式文件夹:css\n* 脚本文件夹:js\n* 样式类图片文件夹:img\n","source":"docs/name/dir.md","raw":"title: 命名规范\n---\n\n由历史原因及个人习惯引起的 DOM 结构、命名不统一,导致不同成员在维护同一页面时,效率低下,迭代、维护成本极高。\n\n### 目录命名\n\n* 项目文件夹:projectname\n* 样式文件夹:css\n* 脚本文件夹:js\n* 样式类图片文件夹:img\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/name/dir.html","comments":1,"layout":"page","_id":"ciitvml3e00062ufyrl9za443"},{"title":"ClassName命名","_content":"\n\nClassName的命名应该尽量精短、明确,必须以**字母开头命名**,且**全部字母为小写**,单词之间**统一使用下划线** “_” 连接\n\n## 命名原则 \n\n基于姓氏命名法(继承 + 外来),如下图:\n\n![enter image description here](http://labs.qiang.it/ppguide/img/standard_jiapu.png)\n\n祖先模块不能出现下划线,除了是全站公用模块,如 `mod_` 系列的命名:\n\n**推荐:**\n\n\t
\n\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t...\n\t\t
\n\t
\n\t\n\t\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\n\t\n**不推荐:**\n\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\t\n\n在子孙模块数量可预测的情况下,严格继承祖先模块的命名前缀\n\n\t
\n \t
\n \t
\n\t
\n\t\t\n当子孙模块超过4级或以上的时候,可以考虑在祖先模块内具有识辨性的独立缩写作为新的子孙模块\n\n**推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n**不推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n## 模块命名\n\n全站公共模块:以 `mod_` 开头\n\n\t
\n\n业务公共模块:以 `业务名_mod_` 开头\n\n\t
\n\n## 常用命名推荐\n\n**注意**:ad、banner、gg、guanggao 等有机会和广告挂勾的字眠不建议直接用来做ClassName,因为有些浏览器插件(Chrome的广告拦截插件等)会直接过滤这些类名,因此 \n\n`
` 这种情况不应该出现\n\n另外,**敏感不和谐字眼**也不应该出现,如:\n\n\t
\n\t
\n\t
\n\t
\n\t
\n\t...\n\n| ClassName | 含义 |\n| ------------ | ------------- | \n| about | 关于 |\n| account | 账户 |\n| arrow | 箭头图标 |\n| article | 文章 |\n| aside | 边栏 |\n| audio | 音频 |\n| avatar | 头像 |\n| bg,background | 背景 |\n| bar | 栏(工具类)|\n| branding | 品牌化 |\n| crumb,breadcrumbs | 面包屑 |\n| btn,button | 按钮 | \n| caption | 标题,说明 |\n| category | 分类 |\n| chart | 图表 |\n| clearfix | 清除浮动 |\n| close | 关闭 |\n| col,column | 列 |\n| comment | 评论 | \n| community | 社区 |\n| container | 容器 |\n| content | 内容 | \n| copyright | 版权 | \n| current | 当前态,选中态 | \n| default | 默认 | \n| description | 描述 | \n| details | 细节 | \n| disabled | 不可用 | \n| entry | 文章,博文 | \n| error | 错误 | \n| even | 偶数,常用于多行列表或表格中 | \n| fail | 失败(提示) | \n| feature | 专题 | \n| fewer | 收起 | \n| field | 用于表单的输入区域 | \n| figure | 图 | \n| filter | 筛选 | \n| first | 第一个,常用于列表中 | \n| footer | 页脚 | \n| forum | 论坛 | \n| gallery | 画廊 | \n| group | 模块,清除浮动 | \n| header | 页头 | \n| help | 帮助 | \n| hide | 隐藏 | \n| hightlight | 高亮 | \n| home | 主页 | \n| icon | 图标 | \n| info,information | 信息 | \n| last | 最后一个,常用于列表中 | \n| links | 链接 | \n| login | 登录 | \n| logout | 退出 | \n| logo | 标志 | \n| main | 主体 | \n| menu | 菜单 | \n| meta | 作者、更新时间等信息栏,一般位于标题之下 | \n| module | 模块 | \n| more | 更多(展开) | \n| msg,message | 消息 | \n| nav,navigation | 导航 | \n| next | 下一页 | \n| nub | 小块 | \n| odd | 奇数,常用于多行列表或表格中 | \n| off | 鼠标离开 | \n| on | 鼠标移过 | \n| output | 输出 | \n| pagination | 分页 | \n| pop,popup | 弹窗 | \n| preview | 预览 | \n| previous | 上一页 | \n| primary | 主要 | \n| progress | 进度条 | \n| promotion | 促销 | \n| rcommd,recommendations | 推荐 | \n| reg,register | 注册 | \n| save | 保存 | \n| search | 搜索 | \n| secondary | 次要 | \n| section | 区块 | \n| selected | 已选 | \n| share | 分享 | \n| show | 显示 | \n| sidebar | 边栏,侧栏 | \n| slide | 幻灯片,图片切换 | \n| sort | 排序 | \n| sub | 次级的,子级的 | \n| submit | 提交 | \n| subscribe | 订阅 | \n| subtitle | 副标题 | \n| success | 成功(提示) | \n| summary | 摘要 | \n| tab | 标签页 | \n| table | 表格 | \n| txt,text | 文本 | \n| thumbnail | 缩略图 | \n| time | 时间 | \n| tips | 提示 | \n| title | 标题 | \n| video | 视频 | \n| wrap | 容器,包,一般用于最外层 | \n| wrapper | 容器,包,一般用于最外层 | \n\n\n","source":"docs/name/classname.md","raw":"title: ClassName命名\n---\n\n\nClassName的命名应该尽量精短、明确,必须以**字母开头命名**,且**全部字母为小写**,单词之间**统一使用下划线** “_” 连接\n\n## 命名原则 \n\n基于姓氏命名法(继承 + 外来),如下图:\n\n![enter image description here](http://labs.qiang.it/ppguide/img/standard_jiapu.png)\n\n祖先模块不能出现下划线,除了是全站公用模块,如 `mod_` 系列的命名:\n\n**推荐:**\n\n\t
\n\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t...\n\t\t
\n\t
\n\t\n\t\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\n\t\n**不推荐:**\n\n\t
\n\t\t
\n\t\t
\n\t\t...\t\t\n\t
\t\n\n在子孙模块数量可预测的情况下,严格继承祖先模块的命名前缀\n\n\t
\n \t
\n \t
\n\t
\n\t\t\n当子孙模块超过4级或以上的时候,可以考虑在祖先模块内具有识辨性的独立缩写作为新的子孙模块\n\n**推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n**不推荐:**\n\n\t
\n \t
\n \t
\n \t
\n \t\t
\n \t\t\t\"\"\n \t\t\t
\n \t\t\t
\n \t\t\t...\n \t\t
\n \t
\n \t
\n \t
\n\t
\n\t\n## 模块命名\n\n全站公共模块:以 `mod_` 开头\n\n\t
\n\n业务公共模块:以 `业务名_mod_` 开头\n\n\t
\n\n## 常用命名推荐\n\n**注意**:ad、banner、gg、guanggao 等有机会和广告挂勾的字眠不建议直接用来做ClassName,因为有些浏览器插件(Chrome的广告拦截插件等)会直接过滤这些类名,因此 \n\n`
` 这种情况不应该出现\n\n另外,**敏感不和谐字眼**也不应该出现,如:\n\n\t
\n\t
\n\t
\n\t
\n\t
\n\t...\n\n| ClassName | 含义 |\n| ------------ | ------------- | \n| about | 关于 |\n| account | 账户 |\n| arrow | 箭头图标 |\n| article | 文章 |\n| aside | 边栏 |\n| audio | 音频 |\n| avatar | 头像 |\n| bg,background | 背景 |\n| bar | 栏(工具类)|\n| branding | 品牌化 |\n| crumb,breadcrumbs | 面包屑 |\n| btn,button | 按钮 | \n| caption | 标题,说明 |\n| category | 分类 |\n| chart | 图表 |\n| clearfix | 清除浮动 |\n| close | 关闭 |\n| col,column | 列 |\n| comment | 评论 | \n| community | 社区 |\n| container | 容器 |\n| content | 内容 | \n| copyright | 版权 | \n| current | 当前态,选中态 | \n| default | 默认 | \n| description | 描述 | \n| details | 细节 | \n| disabled | 不可用 | \n| entry | 文章,博文 | \n| error | 错误 | \n| even | 偶数,常用于多行列表或表格中 | \n| fail | 失败(提示) | \n| feature | 专题 | \n| fewer | 收起 | \n| field | 用于表单的输入区域 | \n| figure | 图 | \n| filter | 筛选 | \n| first | 第一个,常用于列表中 | \n| footer | 页脚 | \n| forum | 论坛 | \n| gallery | 画廊 | \n| group | 模块,清除浮动 | \n| header | 页头 | \n| help | 帮助 | \n| hide | 隐藏 | \n| hightlight | 高亮 | \n| home | 主页 | \n| icon | 图标 | \n| info,information | 信息 | \n| last | 最后一个,常用于列表中 | \n| links | 链接 | \n| login | 登录 | \n| logout | 退出 | \n| logo | 标志 | \n| main | 主体 | \n| menu | 菜单 | \n| meta | 作者、更新时间等信息栏,一般位于标题之下 | \n| module | 模块 | \n| more | 更多(展开) | \n| msg,message | 消息 | \n| nav,navigation | 导航 | \n| next | 下一页 | \n| nub | 小块 | \n| odd | 奇数,常用于多行列表或表格中 | \n| off | 鼠标离开 | \n| on | 鼠标移过 | \n| output | 输出 | \n| pagination | 分页 | \n| pop,popup | 弹窗 | \n| preview | 预览 | \n| previous | 上一页 | \n| primary | 主要 | \n| progress | 进度条 | \n| promotion | 促销 | \n| rcommd,recommendations | 推荐 | \n| reg,register | 注册 | \n| save | 保存 | \n| search | 搜索 | \n| secondary | 次要 | \n| section | 区块 | \n| selected | 已选 | \n| share | 分享 | \n| show | 显示 | \n| sidebar | 边栏,侧栏 | \n| slide | 幻灯片,图片切换 | \n| sort | 排序 | \n| sub | 次级的,子级的 | \n| submit | 提交 | \n| subscribe | 订阅 | \n| subtitle | 副标题 | \n| success | 成功(提示) | \n| summary | 摘要 | \n| tab | 标签页 | \n| table | 表格 | \n| txt,text | 文本 | \n| thumbnail | 缩略图 | \n| time | 时间 | \n| tips | 提示 | \n| title | 标题 | \n| video | 视频 | \n| wrap | 容器,包,一般用于最外层 | \n| wrapper | 容器,包,一般用于最外层 | \n\n\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/name/classname.html","comments":1,"layout":"page","_id":"ciitvml3f00072ufyn99pxqh1"},{"title":"常见问题","_content":"\n> 问:CSV文件打开乱码\n> 答:有时候程序导出来的csv文件在mac下用excel打开会乱码,此时可以用Numbers试试。 \n\n> 问:把正在下载系统的mac放着充电,过了一天风扇很厉害强制关机,然后一直开不了\n> 答:估计是安装系统过程进入了休眠导致系统没有安装完,插入系统U盘一般可以解决。\n","source":"docs/issues.md","raw":"title: 常见问题\n---\n\n> 问:CSV文件打开乱码\n> 答:有时候程序导出来的csv文件在mac下用excel打开会乱码,此时可以用Numbers试试。 \n\n> 问:把正在下载系统的mac放着充电,过了一天风扇很厉害强制关机,然后一直开不了\n> 答:估计是安装系统过程进入了休眠导致系统没有安装完,插入系统U盘一般可以解决。\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/issues.html","comments":1,"layout":"page","_id":"ciitvml3i00082ufyvhgv2v9j"},{"title":"概述","_content":"欢迎使用`前端代码规范`,使用过程中如碰到问题,请到[Github](https://github.com/o2team/guide/issues)进行提问。\n\n\n## 关于\n\n`前端代码规范` 是由 [凹凸实验室](http://aotu.io) 整理的,基于 [W3C](http://www.w3.org/)、[苹果开发者](https://developer.apple.com/) 等官方文档,并结合团队日常业务需求以及团队在日常开发过程中总结提炼出的经验而制定。\n\n旨在增强团队开发协作、提高代码质量和打造开发基石的编码规范,\n\n以下规范是团队基本约定的内容,必须严格遵循。\n\n\n#### HTML规范\n\n基于 [W3C](http://www.w3.org/)、[苹果开发者](https://developer.apple.com/) 等官方文档,并结合团队业务和开发过程中总结的规范约定,让页面HTML代码更具语义性。\n\n#### 图片规范\n\n了解各种图片格式特性,根据特性制定图片规范,包括但不限于图片的质量约定、图片引入方式、图片合并处理等,旨在从图片层面优化页面性能。\n\n#### CSS规范\n\n统一规范团队 CSS 代码书写风格和使用 CSS 预编译语言语法风格,提供常用媒体查询语句和浏览器私有属性引用,并从业务层面统一规范常用模块的引用。\n\n#### 命名规范\n\n从 `目录`、`图片`、`HTML/CSS文件`、`ClassName` 的命名等层面约定规范团队的命名习惯,增强团队代码的可读性。\n\n\n\n","source":"docs/index.md","raw":"title: 概述\n---\n欢迎使用`前端代码规范`,使用过程中如碰到问题,请到[Github](https://github.com/o2team/guide/issues)进行提问。\n\n\n## 关于\n\n`前端代码规范` 是由 [凹凸实验室](http://aotu.io) 整理的,基于 [W3C](http://www.w3.org/)、[苹果开发者](https://developer.apple.com/) 等官方文档,并结合团队日常业务需求以及团队在日常开发过程中总结提炼出的经验而制定。\n\n旨在增强团队开发协作、提高代码质量和打造开发基石的编码规范,\n\n以下规范是团队基本约定的内容,必须严格遵循。\n\n\n#### HTML规范\n\n基于 [W3C](http://www.w3.org/)、[苹果开发者](https://developer.apple.com/) 等官方文档,并结合团队业务和开发过程中总结的规范约定,让页面HTML代码更具语义性。\n\n#### 图片规范\n\n了解各种图片格式特性,根据特性制定图片规范,包括但不限于图片的质量约定、图片引入方式、图片合并处理等,旨在从图片层面优化页面性能。\n\n#### CSS规范\n\n统一规范团队 CSS 代码书写风格和使用 CSS 预编译语言语法风格,提供常用媒体查询语句和浏览器私有属性引用,并从业务层面统一规范常用模块的引用。\n\n#### 命名规范\n\n从 `目录`、`图片`、`HTML/CSS文件`、`ClassName` 的命名等层面约定规范团队的命名习惯,增强团队代码的可读性。\n\n\n\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/index.html","comments":1,"layout":"page","_id":"ciitvml3l00092ufymcxg2eze"},{"title":"图片大小","_content":"\n## 图片大小\n\n### 全国网速现状\n\n#### 固定网络\n\n据文章 [《2015年Q3中国宽带速率状况报告》](http://www.199it.com/archives/399272.html),2015第三季全国平均速度整体情况:\n\n![image](http://labs.qiang.it/h5/guide/2015q3speed.jpg)\n\n\n\n中国固定宽带互联网网络平均网络下载速率达到7.90 Mbit/s,用户进行网页浏览的平均首屏呈现时间为2.18s,平均视频下载速率为6.41Mbit/s\n\n#### 移动网络\n\n\n3G网络传输速率理论峰值在3.5Mbps,4G网络传输速率理论上可达到20Mbps,最高可以达到100Mbps。根据 `128KB/s=128×8(Kb/s)=1024Kb/s=1Mb/s` 的转换来算,3G网络的理论传输速率可达到450KB/s,4G网络的理论传输速率可达到 2.5MB/s ~ 12.5MB/s\n\n受用户计算机性能、网络设备质量、资源使用情况、网络高峰期、网站服务能力、线路衰耗、信号衰减等多因素影响,3G和4G的实际平均传输速率约为:\n\n* 3G:最高值100KB/s,平均值40~50KB/s\n* 4G:最高值2.75MB/s,平均500~1000KB/s\n\n\n\n### 3G/4G用户占比\n\n\n2015年8月移动宽带(3G/4G)用户占比各省分布情况:\n\n![image](http://labs.qiang.it/h5/guide/Img421935146.jpg)\n\n据文章 [《工信部:2015年7月底中国4G用户累计超过2.5亿》](http://www.199it.com/archives/393838.html) 介绍:\n\n> 截至2015年7月底,中国4G用户累计超过2.5亿(全球LTE用户超过7.9亿,全球TD-LTE用户超过2.78亿),已建设4G基站超过153万个,其中完成TD-LTE基站建设超过100万个,多载波聚合等TD-LTE演进技术逐步商用,4G智能手机已经占到国内智能手机市场的82.7%。\n\n\n## 团队约定\n\n中国普通家庭的宽带基本能达到8Mbps,实际速率大约为500---900KB/s,全国3G/4G用户占有比超过了50%,为了保证图片能更好地加载展示给用户看,团队约定:\n\n**PC平台单张的图片的大小不应大于 200KB。**\n\n**移动平台单张的图片的大小不应大于 100KB。**\n\n*(图片的大小约定标准随全国网速的改变而改变)*","source":"docs/image/size.md","raw":"title: 图片大小\n---\n\n## 图片大小\n\n### 全国网速现状\n\n#### 固定网络\n\n据文章 [《2015年Q3中国宽带速率状况报告》](http://www.199it.com/archives/399272.html),2015第三季全国平均速度整体情况:\n\n![image](http://labs.qiang.it/h5/guide/2015q3speed.jpg)\n\n\n\n中国固定宽带互联网网络平均网络下载速率达到7.90 Mbit/s,用户进行网页浏览的平均首屏呈现时间为2.18s,平均视频下载速率为6.41Mbit/s\n\n#### 移动网络\n\n\n3G网络传输速率理论峰值在3.5Mbps,4G网络传输速率理论上可达到20Mbps,最高可以达到100Mbps。根据 `128KB/s=128×8(Kb/s)=1024Kb/s=1Mb/s` 的转换来算,3G网络的理论传输速率可达到450KB/s,4G网络的理论传输速率可达到 2.5MB/s ~ 12.5MB/s\n\n受用户计算机性能、网络设备质量、资源使用情况、网络高峰期、网站服务能力、线路衰耗、信号衰减等多因素影响,3G和4G的实际平均传输速率约为:\n\n* 3G:最高值100KB/s,平均值40~50KB/s\n* 4G:最高值2.75MB/s,平均500~1000KB/s\n\n\n\n### 3G/4G用户占比\n\n\n2015年8月移动宽带(3G/4G)用户占比各省分布情况:\n\n![image](http://labs.qiang.it/h5/guide/Img421935146.jpg)\n\n据文章 [《工信部:2015年7月底中国4G用户累计超过2.5亿》](http://www.199it.com/archives/393838.html) 介绍:\n\n> 截至2015年7月底,中国4G用户累计超过2.5亿(全球LTE用户超过7.9亿,全球TD-LTE用户超过2.78亿),已建设4G基站超过153万个,其中完成TD-LTE基站建设超过100万个,多载波聚合等TD-LTE演进技术逐步商用,4G智能手机已经占到国内智能手机市场的82.7%。\n\n\n## 团队约定\n\n中国普通家庭的宽带基本能达到8Mbps,实际速率大约为500---900KB/s,全国3G/4G用户占有比超过了50%,为了保证图片能更好地加载展示给用户看,团队约定:\n\n**PC平台单张的图片的大小不应大于 200KB。**\n\n**移动平台单张的图片的大小不应大于 100KB。**\n\n*(图片的大小约定标准随全国网速的改变而改变)*","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/image/size.html","comments":1,"layout":"page","_id":"ciitvml3m000a2ufy4pmzyocv"},{"title":"图片质量","_content":"\n* 上线的图片都应该经过压缩处理,压缩后的图片不应该出现肉眼可感知的失真区域\n* 60质量的JPEG格式图片与质量大于60的相比,肉眼已看不出明显的区别,因此保存 JPEG 图的时候,质量一般控制在60,若保真度要求高的图片可适量提高到 80,图片大小控制在 200KB 以内","source":"docs/image/quality.md","raw":"title: 图片质量\n---\n\n* 上线的图片都应该经过压缩处理,压缩后的图片不应该出现肉眼可感知的失真区域\n* 60质量的JPEG格式图片与质量大于60的相比,肉眼已看不出明显的区别,因此保存 JPEG 图的时候,质量一般控制在60,若保真度要求高的图片可适量提高到 80,图片大小控制在 200KB 以内","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/image/quality.html","comments":1,"layout":"page","_id":"ciitvml3u000b2ufy08gjqmf3"},{"_content":"## 图片规范\n\n### 图片格式\n\n常见的图片格式有 GIF、PNG8、PNG24、JPEG、WEBP,根据图片格式的特性和场景需要选取适合的图片格式\n\n\n#### GIF\n\n> GIF图象是基于颜色列表的(存储的数据是该点的颜色对应于颜色列表的索引值),最多只支持8位(256色)。GIF文件内部分成许多存储块,用来存储多幅图象或者是决定图象表现行为的控制块,用以实现动画和交互式应用。GIF文件还通过LZW压缩算法压缩图象数据来减少图象尺寸\n\n##### 特性\n\n* 优秀的压缩算法使其在一定程度上保证图像质量的同时将体积变得很小。\n* 可插入多帧,从而实现动画效果。\n* 可设置透明色以产生对象浮现于背景之上的效果。\n* 由于采用了8位压缩,最多只能处理256种颜色,故不宜应用于真彩色图片。\n\n更多关于GIF:\n\n[维基百科 - PNG](https://zh.wikipedia.org/wiki/GIF)\n\n[GIF文档](http://dev.gameres.com/Program/Visual/Other/GIFDoc.htm)\n\n#### PNG\n\n> PNG是20世纪90年代中期开始开发的图像文件存储格式,其目的是企图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。流式网络图形格式(Portable Network Graphic Format,PNG)名称来源于非官方的“PNG's Not GIF”,是一种位图文件(bitmap file)存储格式,读成“ping”。PNG用来存储灰度图像时,灰度图像的深度可多到16位,存储彩色图像时,彩色图像的深度可多到48位,并且还可存储多到16位的α通道数据。PNG使用从LZ77派生的无损数据压缩算法。\n\n##### 特性\n\n* 支持256色调色板技术,文件体积小。\n* 无损压缩\n* 最高支持48位真彩色图像以及16位灰度图像。\n* 支持Alpha通道的透明/半透明特性。\n* 支持图像亮度的Gamma校准信息。\n* 支持存储附加文本信息,以保留图像名称、作者、版权、创作时间、注释等信息。\n* 渐近显示和流式读写,适合在网络传输中快速显示预览效果后再展示全貌。\n* 使用CRC防止文件出错。\n* 最新的PNG标准允许在一个文件内存储多幅图像。\n\n更多关于PNG:\n\n[PNG官方站 - PNG General Information\n](http://www.libpng.org/pub/png/)\n\n[PNG格式](http://dev.gameres.com/Program/Visual/Other/PNGFormat.htm)\n\n[维基百科 - PNG](https://zh.wikipedia.org/wiki/PNG)\n\n#### JPEG\n\n> JPEG是一种针对照片视频而广泛使用的一种有损压缩标准方法。这个名称代表Joint Photographic Experts Group(联合图像专家小组)。此团队创立于公元1986年,1992年发布了JPEG的标准而在1994年获得了ISO 10918-1的认定\n\n##### 特性\n\n* 适用于储存24位元全采影像\n* 采取的压缩方式通常为有损压缩\n* 不支持透明或动画\n* 压缩比越高影像耗损越大,失真越严重\n* 压缩比在10左右肉眼无法\b辨出压缩图与原图的差别\n\n更多关于JPEG:\n\n[维基百科 - JPEG](https://zh.wikipedia.org/wiki/JPEG)\n\n#### WEBP\n\n> WebP,是一种同时提供了有损压缩与无损压缩的图片文件格式,派生自视频编码格式 VP8,是由Google在购买On2 Technologies后发展出来。WebP最初在2010年发布,2011年11月8日,Google开始让WebP支持无损压缩和透明色的功能,而在2012年8月16日的参考实做libwebp 0.2.0中正式支持\n\n##### 特性\n\n* 同时提供有损压缩和无损压缩两种图片文件格式\n* 文件体积小,无损压缩后,比 PNG 文件少了 45% 的文件大小;有损压缩后,比 JPEG 文件少了 25% - 34% 文件大小\n* 浏览器兼容差,目前只支持客户端 Chrome 和 Opera 浏览器以及安卓原生浏览器(Andriod 4.0+),[WebP兼容性](https://developers.google.com/speed/webp/faq#which_web_browsers_natively_support_webp)\n\n更多关于WebB:\n\n[维基百科](https://zh.wikipedia.org/wiki/WebP)\n\n[WebP探寻之路](http://isux.tencent.com/introduction-of-webp.html)\n\n\n#### 团队约定 \n\n##### 内容图\n\n内容图多以商品图等照片类图片形式存在,颜色较为丰富,文件体积较大\n\n* 优先考虑 JPEG 格式,条件允许的话优先考虑 WebP 格式\n* 尽量不使用PNG格式,PNG8 色位太低,PNG24 压缩率低,文件体积大\n\n##### 背景图\n\n背景图多为图标等颜色比较简单、文件体积不大、起修饰作用的图片\n\n* PNG 与 GIF 格式,优先考虑使用 PNG 格式,PNG格式允许更多的颜色并提供更好的压缩率\n* 图像颜色比较简单的,如纯色块线条图标,优先考虑使用 PNG8 格式,避免不使用 JPEG 格式\n* 图像颜色丰富而且图片文件不太大的(40KB 以下)或有半透明效果的优先考虑 PNG24 格式\n* 图像颜色丰富而且文件比较大的(40KB - 200KB)优先考虑 JPEG 格式\n* 条件允许的,优先考虑 WebP 代替 PNG 和 JPEG 格式\n\n### 图片大小\n\n#### 全国网速现状\n\n##### 固定网络\n\n据文章 [《2015年Q3中国宽带速率状况报告》](http://www.199it.com/archives/399272.html),2015第三季全国平均速度整体情况:\n\n![image](http://labs.qiang.it/h5/guide/2015q3speed.jpg)\n\n\n\n中国固定宽带互联网网络平均网络下载速率达到7.90 Mbit/s,用户进行网页浏览的平均首屏呈现时间为2.18s,平均视频下载速率为6.41Mbit/s\n\n##### 移动网络\n\n\n3G网络传输速率理论峰值在3.5Mbps,4G网络传输速率理论上可达到20Mbps,最高可以达到100Mbps。根据 `128KB/s=128×8(Kb/s)=1024Kb/s=1Mb/s` 的转换来算,3G网络的理论传输速率可达到450KB/s,4G网络的理论传输速率可达到 2.5MB/s ~ 12.5MB/s\n\n受用户计算机性能、网络设备质量、资源使用情况、网络高峰期、网站服务能力、线路衰耗、信号衰减等多因素影响,3G和4G的实际平均传输速率约为:\n\n* 3G:最高值100KB/s,平均值40~50KB/s\n* 4G:最高值2.75MB/s,平均500~1000KB/s\n\n\n\n#### 3G/4G用户占比\n\n\n2015年8月移动宽带(3G/4G)用户占比各省分布情况:\n\n![image](http://labs.qiang.it/h5/guide/Img421935146.jpg)\n\n据文章 [《工信部:2015年7月底中国4G用户累计超过2.5亿》](http://www.199it.com/archives/393838.html) 介绍:\n\n> 截至2015年7月底,中国4G用户累计超过2.5亿(全球LTE用户超过7.9亿,全球TD-LTE用户超过2.78亿),已建设4G基站超过153万个,其中完成TD-LTE基站建设超过100万个,多载波聚合等TD-LTE演进技术逐步商用,4G智能手机已经占到国内智能手机市场的82.7%。\n\n\n\n#### 团队约定\n\n中国普通家庭的宽带基本能达到8Mbps,实际速率大约为500---900KB/s,全国3G/4G用户占有比超过了50%,为了保证图片能更好地加载展示给用户看,团队约定:\n\n**PC平台单张的图片的大小不应大于 200KB。**\n\n**移动平台单张的图片的大小不应大于 100KB。**\n\n*(图片的大小约定标准随全国网速的改变而改变)*\n\n\n### 图片质量\n\n* 上线的图片都应该经过压缩处理,压缩后的图片不应该出现肉眼可感知的失真区域\n* 60质量的JPEG格式图片与质量大于60的相比,肉眼已看不出明显的区别,因此保存 JPEG 图的时候,质量一般控制在60,若保真度要求高的图片可适量提高到 80,图片大小控制在 200KB 以内\n\n### 图片引入\n\n测试内容图应该写上表明图片尺寸的占位图,可以用线上占位图生成服务,如:\n\n```\nhttp://placeholder.qiniudn.com/300x200\n```\n\n![image](http://placeholder.qiniudn.com/300x200)\n\n\n\nHTML 中图片引入不需添加 width、height 属性,alt 属性应该写上\n\n*推荐:*\n\n```\n\"\"\n```\n\n*不推荐:*\n\n```\n\n```\n\nCSS 中图片引入不需要引号\n\n```\n.jdc {\n background-image: url(icon.png);\n}\n```\n\n### CSS Sprites VS Data URIs\n\n#### CSS Sprites特点\n\n* 减少请求数\n* 加速图片的显示\n* 维护更新成本大\n* 更多的内存消耗,特别是大体积或有过多空白的 Sprites 图 \n* 图片渗漏,相邻的不需展示的图片有可能出现在展示元素中,特别是在高清设备移动设备上\n\n#### Data URIs(base64编码)\n\n* 减少请求数\n* 转换文件体积大,大约比原始的二进制大33%\n* IE6 / IE7 不支持\n* 图片显示相对较慢,需要更多的CPU消耗\n\n\n\n更多关于 CSS Sprites 和 Data URIs 可以阅读:\n\n[《When to Base64 Encode Images (and When Not To)》](http://davidbcalhoun.com/2011/when-to-base64-encode-images-and-when-not-to/)\n\n[《Data URI 最佳实践》](http://madscript.com/html5/datauri-best-practice/)\n\n[《Data URI&MHTML: 用还是不用?》](http://www.99css.com/492/)\n\n[CSS Sprites vs. Data URIs: Which is Faster on Mobile?](http://www.mobify.com/blog/css-sprites-vs-data-uris-which-is-faster-on-mobile/)\n\n#### 团队约定\n\n##### CSS Sprites 使用建议\n\n* 适合使用频率高更新频率低的小图标\n* 尽量不留太多的空白\n* 体积较大的图片不合并\n* 确保要合并的小图坐标数值和合并后的 Sprites 图尺寸均为偶数\n\n\n##### Data URIs(base64编码)使用建议\n\n* 合适更新频率高的小图片,如某些具备自定义功能的标题icon等\n* 转换成 Base64 编码的图片应小于 2KB\n* 移动端不使用 Base64 编码 \n* 要兼容 IE6/IE7 的不使用\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n","source":"docs/image/jdc_fd_guide_image.md","raw":"## 图片规范\n\n### 图片格式\n\n常见的图片格式有 GIF、PNG8、PNG24、JPEG、WEBP,根据图片格式的特性和场景需要选取适合的图片格式\n\n\n#### GIF\n\n> GIF图象是基于颜色列表的(存储的数据是该点的颜色对应于颜色列表的索引值),最多只支持8位(256色)。GIF文件内部分成许多存储块,用来存储多幅图象或者是决定图象表现行为的控制块,用以实现动画和交互式应用。GIF文件还通过LZW压缩算法压缩图象数据来减少图象尺寸\n\n##### 特性\n\n* 优秀的压缩算法使其在一定程度上保证图像质量的同时将体积变得很小。\n* 可插入多帧,从而实现动画效果。\n* 可设置透明色以产生对象浮现于背景之上的效果。\n* 由于采用了8位压缩,最多只能处理256种颜色,故不宜应用于真彩色图片。\n\n更多关于GIF:\n\n[维基百科 - PNG](https://zh.wikipedia.org/wiki/GIF)\n\n[GIF文档](http://dev.gameres.com/Program/Visual/Other/GIFDoc.htm)\n\n#### PNG\n\n> PNG是20世纪90年代中期开始开发的图像文件存储格式,其目的是企图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。流式网络图形格式(Portable Network Graphic Format,PNG)名称来源于非官方的“PNG's Not GIF”,是一种位图文件(bitmap file)存储格式,读成“ping”。PNG用来存储灰度图像时,灰度图像的深度可多到16位,存储彩色图像时,彩色图像的深度可多到48位,并且还可存储多到16位的α通道数据。PNG使用从LZ77派生的无损数据压缩算法。\n\n##### 特性\n\n* 支持256色调色板技术,文件体积小。\n* 无损压缩\n* 最高支持48位真彩色图像以及16位灰度图像。\n* 支持Alpha通道的透明/半透明特性。\n* 支持图像亮度的Gamma校准信息。\n* 支持存储附加文本信息,以保留图像名称、作者、版权、创作时间、注释等信息。\n* 渐近显示和流式读写,适合在网络传输中快速显示预览效果后再展示全貌。\n* 使用CRC防止文件出错。\n* 最新的PNG标准允许在一个文件内存储多幅图像。\n\n更多关于PNG:\n\n[PNG官方站 - PNG General Information\n](http://www.libpng.org/pub/png/)\n\n[PNG格式](http://dev.gameres.com/Program/Visual/Other/PNGFormat.htm)\n\n[维基百科 - PNG](https://zh.wikipedia.org/wiki/PNG)\n\n#### JPEG\n\n> JPEG是一种针对照片视频而广泛使用的一种有损压缩标准方法。这个名称代表Joint Photographic Experts Group(联合图像专家小组)。此团队创立于公元1986年,1992年发布了JPEG的标准而在1994年获得了ISO 10918-1的认定\n\n##### 特性\n\n* 适用于储存24位元全采影像\n* 采取的压缩方式通常为有损压缩\n* 不支持透明或动画\n* 压缩比越高影像耗损越大,失真越严重\n* 压缩比在10左右肉眼无法\b辨出压缩图与原图的差别\n\n更多关于JPEG:\n\n[维基百科 - JPEG](https://zh.wikipedia.org/wiki/JPEG)\n\n#### WEBP\n\n> WebP,是一种同时提供了有损压缩与无损压缩的图片文件格式,派生自视频编码格式 VP8,是由Google在购买On2 Technologies后发展出来。WebP最初在2010年发布,2011年11月8日,Google开始让WebP支持无损压缩和透明色的功能,而在2012年8月16日的参考实做libwebp 0.2.0中正式支持\n\n##### 特性\n\n* 同时提供有损压缩和无损压缩两种图片文件格式\n* 文件体积小,无损压缩后,比 PNG 文件少了 45% 的文件大小;有损压缩后,比 JPEG 文件少了 25% - 34% 文件大小\n* 浏览器兼容差,目前只支持客户端 Chrome 和 Opera 浏览器以及安卓原生浏览器(Andriod 4.0+),[WebP兼容性](https://developers.google.com/speed/webp/faq#which_web_browsers_natively_support_webp)\n\n更多关于WebB:\n\n[维基百科](https://zh.wikipedia.org/wiki/WebP)\n\n[WebP探寻之路](http://isux.tencent.com/introduction-of-webp.html)\n\n\n#### 团队约定 \n\n##### 内容图\n\n内容图多以商品图等照片类图片形式存在,颜色较为丰富,文件体积较大\n\n* 优先考虑 JPEG 格式,条件允许的话优先考虑 WebP 格式\n* 尽量不使用PNG格式,PNG8 色位太低,PNG24 压缩率低,文件体积大\n\n##### 背景图\n\n背景图多为图标等颜色比较简单、文件体积不大、起修饰作用的图片\n\n* PNG 与 GIF 格式,优先考虑使用 PNG 格式,PNG格式允许更多的颜色并提供更好的压缩率\n* 图像颜色比较简单的,如纯色块线条图标,优先考虑使用 PNG8 格式,避免不使用 JPEG 格式\n* 图像颜色丰富而且图片文件不太大的(40KB 以下)或有半透明效果的优先考虑 PNG24 格式\n* 图像颜色丰富而且文件比较大的(40KB - 200KB)优先考虑 JPEG 格式\n* 条件允许的,优先考虑 WebP 代替 PNG 和 JPEG 格式\n\n### 图片大小\n\n#### 全国网速现状\n\n##### 固定网络\n\n据文章 [《2015年Q3中国宽带速率状况报告》](http://www.199it.com/archives/399272.html),2015第三季全国平均速度整体情况:\n\n![image](http://labs.qiang.it/h5/guide/2015q3speed.jpg)\n\n\n\n中国固定宽带互联网网络平均网络下载速率达到7.90 Mbit/s,用户进行网页浏览的平均首屏呈现时间为2.18s,平均视频下载速率为6.41Mbit/s\n\n##### 移动网络\n\n\n3G网络传输速率理论峰值在3.5Mbps,4G网络传输速率理论上可达到20Mbps,最高可以达到100Mbps。根据 `128KB/s=128×8(Kb/s)=1024Kb/s=1Mb/s` 的转换来算,3G网络的理论传输速率可达到450KB/s,4G网络的理论传输速率可达到 2.5MB/s ~ 12.5MB/s\n\n受用户计算机性能、网络设备质量、资源使用情况、网络高峰期、网站服务能力、线路衰耗、信号衰减等多因素影响,3G和4G的实际平均传输速率约为:\n\n* 3G:最高值100KB/s,平均值40~50KB/s\n* 4G:最高值2.75MB/s,平均500~1000KB/s\n\n\n\n#### 3G/4G用户占比\n\n\n2015年8月移动宽带(3G/4G)用户占比各省分布情况:\n\n![image](http://labs.qiang.it/h5/guide/Img421935146.jpg)\n\n据文章 [《工信部:2015年7月底中国4G用户累计超过2.5亿》](http://www.199it.com/archives/393838.html) 介绍:\n\n> 截至2015年7月底,中国4G用户累计超过2.5亿(全球LTE用户超过7.9亿,全球TD-LTE用户超过2.78亿),已建设4G基站超过153万个,其中完成TD-LTE基站建设超过100万个,多载波聚合等TD-LTE演进技术逐步商用,4G智能手机已经占到国内智能手机市场的82.7%。\n\n\n\n#### 团队约定\n\n中国普通家庭的宽带基本能达到8Mbps,实际速率大约为500---900KB/s,全国3G/4G用户占有比超过了50%,为了保证图片能更好地加载展示给用户看,团队约定:\n\n**PC平台单张的图片的大小不应大于 200KB。**\n\n**移动平台单张的图片的大小不应大于 100KB。**\n\n*(图片的大小约定标准随全国网速的改变而改变)*\n\n\n### 图片质量\n\n* 上线的图片都应该经过压缩处理,压缩后的图片不应该出现肉眼可感知的失真区域\n* 60质量的JPEG格式图片与质量大于60的相比,肉眼已看不出明显的区别,因此保存 JPEG 图的时候,质量一般控制在60,若保真度要求高的图片可适量提高到 80,图片大小控制在 200KB 以内\n\n### 图片引入\n\n测试内容图应该写上表明图片尺寸的占位图,可以用线上占位图生成服务,如:\n\n```\nhttp://placeholder.qiniudn.com/300x200\n```\n\n![image](http://placeholder.qiniudn.com/300x200)\n\n\n\nHTML 中图片引入不需添加 width、height 属性,alt 属性应该写上\n\n*推荐:*\n\n```\n\"\"\n```\n\n*不推荐:*\n\n```\n\n```\n\nCSS 中图片引入不需要引号\n\n```\n.jdc {\n background-image: url(icon.png);\n}\n```\n\n### CSS Sprites VS Data URIs\n\n#### CSS Sprites特点\n\n* 减少请求数\n* 加速图片的显示\n* 维护更新成本大\n* 更多的内存消耗,特别是大体积或有过多空白的 Sprites 图 \n* 图片渗漏,相邻的不需展示的图片有可能出现在展示元素中,特别是在高清设备移动设备上\n\n#### Data URIs(base64编码)\n\n* 减少请求数\n* 转换文件体积大,大约比原始的二进制大33%\n* IE6 / IE7 不支持\n* 图片显示相对较慢,需要更多的CPU消耗\n\n\n\n更多关于 CSS Sprites 和 Data URIs 可以阅读:\n\n[《When to Base64 Encode Images (and When Not To)》](http://davidbcalhoun.com/2011/when-to-base64-encode-images-and-when-not-to/)\n\n[《Data URI 最佳实践》](http://madscript.com/html5/datauri-best-practice/)\n\n[《Data URI&MHTML: 用还是不用?》](http://www.99css.com/492/)\n\n[CSS Sprites vs. Data URIs: Which is Faster on Mobile?](http://www.mobify.com/blog/css-sprites-vs-data-uris-which-is-faster-on-mobile/)\n\n#### 团队约定\n\n##### CSS Sprites 使用建议\n\n* 适合使用频率高更新频率低的小图标\n* 尽量不留太多的空白\n* 体积较大的图片不合并\n* 确保要合并的小图坐标数值和合并后的 Sprites 图尺寸均为偶数\n\n\n##### Data URIs(base64编码)使用建议\n\n* 合适更新频率高的小图片,如某些具备自定义功能的标题icon等\n* 转换成 Base64 编码的图片应小于 2KB\n* 移动端不使用 Base64 编码 \n* 要兼容 IE6/IE7 的不使用\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/image/jdc_fd_guide_image.html","title":"","comments":1,"layout":"page","_id":"ciitvml3v000c2ufyhw9m7fof"},{"title":"图片引入","_content":"\n## 图片引入\n\n测试内容图应该写上表明图片尺寸的占位图,可以用线上占位图生成服务,如:\n\n```html\nhttp://placeholder.qiniudn.com/300x200\n```\n\n![image](http://placeholder.qiniudn.com/300x200)\n\n\n\nHTML 中图片引入不需添加 width、height 属性,alt 属性应该写上\n\n*推荐:*\n\n```html\n\"\"\n```\n\n*不推荐:*\n\n```html\n\n```\n\nCSS 中图片引入不需要引号\n\n```css\n.jdc {\n background-image: url(icon.png);\n}\n```\n\n### CSS Sprites VS Data URIs\n\n#### CSS Sprites特点\n\n* 减少请求数\n* 加速图片的显示\n* 维护更新成本大\n* 更多的内存消耗,特别是大体积或有过多空白的 Sprites 图 \n* 图片渗漏,相邻的不需展示的图片有可能出现在展示元素中,特别是在高清设备移动设备上\n\n#### Data URIs(base64编码)\n\n* 减少请求数\n* 转换文件体积大,大约比原始的二进制大33%\n* IE6 / IE7 不支持\n* 图片显示相对较慢,需要更多的CPU消耗\n\n\n\n更多关于 CSS Sprites 和 Data URIs 可以阅读:\n\n[《When to Base64 Encode Images (and When Not To)》](http://davidbcalhoun.com/2011/when-to-base64-encode-images-and-when-not-to/)\n\n[《Data URI 最佳实践》](http://madscript.com/html5/datauri-best-practice/)\n\n[《Data URI&MHTML: 用还是不用?》](http://www.99css.com/492/)\n\n[CSS Sprites vs. Data URIs: Which is Faster on Mobile?](http://www.mobify.com/blog/css-sprites-vs-data-uris-which-is-faster-on-mobile/)\n\n## 团队约定\n\n### CSS Sprites 使用建议\n\n* 适合使用频率高更新频率低的小图标\n* 尽量不留太多的空白\n* 体积较大的图片不合并\n* 确保要合并的小图坐标数值和合并后的 Sprites 图尺寸均为偶数\n\n\n### Data URIs(base64编码)使用建议\n\n* 合适更新频率高的小图片,如某些具备自定义功能的标题icon等\n* 转换成 Base64 编码的图片应小于 2KB\n* 移动端不使用 Base64 编码 \n* 要兼容 IE6/IE7 的不使用\n","source":"docs/image/import.md","raw":"title: 图片引入\n---\n\n## 图片引入\n\n测试内容图应该写上表明图片尺寸的占位图,可以用线上占位图生成服务,如:\n\n```html\nhttp://placeholder.qiniudn.com/300x200\n```\n\n![image](http://placeholder.qiniudn.com/300x200)\n\n\n\nHTML 中图片引入不需添加 width、height 属性,alt 属性应该写上\n\n*推荐:*\n\n```html\n\"\"\n```\n\n*不推荐:*\n\n```html\n\n```\n\nCSS 中图片引入不需要引号\n\n```css\n.jdc {\n background-image: url(icon.png);\n}\n```\n\n### CSS Sprites VS Data URIs\n\n#### CSS Sprites特点\n\n* 减少请求数\n* 加速图片的显示\n* 维护更新成本大\n* 更多的内存消耗,特别是大体积或有过多空白的 Sprites 图 \n* 图片渗漏,相邻的不需展示的图片有可能出现在展示元素中,特别是在高清设备移动设备上\n\n#### Data URIs(base64编码)\n\n* 减少请求数\n* 转换文件体积大,大约比原始的二进制大33%\n* IE6 / IE7 不支持\n* 图片显示相对较慢,需要更多的CPU消耗\n\n\n\n更多关于 CSS Sprites 和 Data URIs 可以阅读:\n\n[《When to Base64 Encode Images (and When Not To)》](http://davidbcalhoun.com/2011/when-to-base64-encode-images-and-when-not-to/)\n\n[《Data URI 最佳实践》](http://madscript.com/html5/datauri-best-practice/)\n\n[《Data URI&MHTML: 用还是不用?》](http://www.99css.com/492/)\n\n[CSS Sprites vs. Data URIs: Which is Faster on Mobile?](http://www.mobify.com/blog/css-sprites-vs-data-uris-which-is-faster-on-mobile/)\n\n## 团队约定\n\n### CSS Sprites 使用建议\n\n* 适合使用频率高更新频率低的小图标\n* 尽量不留太多的空白\n* 体积较大的图片不合并\n* 确保要合并的小图坐标数值和合并后的 Sprites 图尺寸均为偶数\n\n\n### Data URIs(base64编码)使用建议\n\n* 合适更新频率高的小图片,如某些具备自定义功能的标题icon等\n* 转换成 Base64 编码的图片应小于 2KB\n* 移动端不使用 Base64 编码 \n* 要兼容 IE6/IE7 的不使用\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/image/import.html","comments":1,"layout":"page","_id":"ciitvml3x000d2ufytxgxr0co"},{"title":"图片格式","_content":"\n## 图片格式\n\n常见的图片格式有 GIF、PNG8、PNG24、JPEG、WEBP,根据图片格式的特性和场景需要选取适合的图片格式。\n\n### GIF \n\n> GIF图象是基于颜色列表的(存储的数据是该点的颜色对应于颜色列表的索引值),最多只支持8位(256色)。GIF文件内部分成许多存储块,用来存储多幅图象或者是决定图象表现行为的控制块,用以实现动画和交互式应用。GIF文件还通过LZW压缩算法压缩图象数据来减少图象尺寸\n\n#### 特性\n\n* 优秀的压缩算法使其在一定程度上保证图像质量的同时将体积变得很小。\n* 可插入多帧,从而实现动画效果。\n* 可设置透明色以产生对象浮现于背景之上的效果。\n* 由于采用了8位压缩,最多只能处理256种颜色,故不宜应用于真彩色图片。\n\n更多关于GIF:\n\n[维基百科 - GIF](https://zh.wikipedia.org/wiki/GIF)\n\n[GIF文档](http://dev.gameres.com/Program/Visual/Other/GIFDoc.htm)\n\n### PNG\n\n> PNG是20世纪90年代中期开始开发的图像文件存储格式,其目的是企图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。流式网络图形格式(Portable Network Graphic Format,PNG)名称来源于非官方的“PNG's Not GIF”,是一种位图文件(bitmap file)存储格式,读成“ping”。PNG用来存储灰度图像时,灰度图像的深度可多到16位,存储彩色图像时,彩色图像的深度可多到48位,并且还可存储多到16位的α通道数据。PNG使用从LZ77派生的无损数据压缩算法。\n\n#### 特性\n\n* 支持256色调色板技术,文件体积小。\n* 无损压缩\n* 最高支持48位真彩色图像以及16位灰度图像。\n* 支持Alpha通道的透明/半透明特性。\n* 支持图像亮度的Gamma校准信息。\n* 支持存储附加文本信息,以保留图像名称、作者、版权、创作时间、注释等信息。\n* 渐近显示和流式读写,适合在网络传输中快速显示预览效果后再展示全貌。\n* 使用CRC防止文件出错。\n* 最新的PNG标准允许在一个文件内存储多幅图像。\n\n更多关于PNG:\n\n[PNG官方站 - PNG General Information](http://www.libpng.org/pub/png/)\n\n[PNG格式](http://dev.gameres.com/Program/Visual/Other/PNGFormat.htm)\n\n[维基百科 - PNG](https://zh.wikipedia.org/wiki/PNG)\n\n### JPEG\n\n> JPEG是一种针对照片视频而广泛使用的一种有损压缩标准方法。这个名称代表Joint Photographic Experts Group(联合图像专家小组)。此团队创立于公元1986年,1992年发布了JPEG的标准而在1994年获得了ISO 10918-1的认定\n\n#### 特性\n\n* 适用于储存24位元全采影像\n* 采取的压缩方式通常为有损压缩\n* 不支持透明或动画\n* 压缩比越高影像耗损越大,失真越严重\n* 压缩比在10左右肉眼无法\b辨出压缩图与原图的差别\n\n更多关于JPEG:\n\n[维基百科 - JPEG](https://zh.wikipedia.org/wiki/JPEG)\n\n### WEBP\n\n> WebP,是一种同时提供了有损压缩与无损压缩的图片文件格式,派生自视频编码格式 VP8,是由Google在购买On2 Technologies后发展出来。WebP最初在2010年发布,2011年11月8日,Google开始让WebP支持无损压缩和透明色的功能,而在2012年8月16日的参考实做libwebp 0.2.0中正式支持\n\n#### 特性\n\n* 同时提供有损压缩和无损压缩两种图片文件格式\n* 文件体积小,无损压缩后,比 PNG 文件少了 45% 的文件大小;有损压缩后,比 JPEG 文件少了 25% - 34% 文件大小\n* 浏览器兼容差,目前只支持客户端 Chrome 和 Opera 浏览器以及安卓原生浏览器(Andriod 4.0+),[WebP兼容性](https://developers.google.com/speed/webp/faq#which_web_browsers_natively_support_webp)\n\n更多关于WebP:\n\n[维基百科 - WEBP](https://zh.wikipedia.org/wiki/WebP)\n\n[WEBP探寻之路](http://isux.tencent.com/introduction-of-webp.html)\n\n\n\n## 团队约定 \n\n### 内容图\n\n内容图多以商品图等照片类图片形式存在,颜色较为丰富,文件体积较大\n\n* 优先考虑 JPEG 格式,条件允许的话优先考虑 WebP 格式\n* 尽量不使用PNG格式,PNG8 色位太低,PNG24 压缩率低,文件体积大\n\n### 背景图\n\n背景图多为图标等颜色比较简单、文件体积不大、起修饰作用的图片\n\n* PNG 与 GIF 格式,优先考虑使用 PNG 格式,PNG格式允许更多的颜色并提供更好的压缩率\n* 图像颜色比较简单的,如纯色块线条图标,优先考虑使用 PNG8 格式,避免不使用 JPEG 格式\n* 图像颜色丰富而且图片文件不太大的(40KB 以下)或有半透明效果的优先考虑 PNG24 格式\n* 图像颜色丰富而且文件比较大的(40KB - 200KB)优先考虑 JPEG 格式\n* 条件允许的,优先考虑 WebP 代替 PNG 和 JPEG 格式","source":"docs/image/format.md","raw":"title: 图片格式\n---\n\n## 图片格式\n\n常见的图片格式有 GIF、PNG8、PNG24、JPEG、WEBP,根据图片格式的特性和场景需要选取适合的图片格式。\n\n### GIF \n\n> GIF图象是基于颜色列表的(存储的数据是该点的颜色对应于颜色列表的索引值),最多只支持8位(256色)。GIF文件内部分成许多存储块,用来存储多幅图象或者是决定图象表现行为的控制块,用以实现动画和交互式应用。GIF文件还通过LZW压缩算法压缩图象数据来减少图象尺寸\n\n#### 特性\n\n* 优秀的压缩算法使其在一定程度上保证图像质量的同时将体积变得很小。\n* 可插入多帧,从而实现动画效果。\n* 可设置透明色以产生对象浮现于背景之上的效果。\n* 由于采用了8位压缩,最多只能处理256种颜色,故不宜应用于真彩色图片。\n\n更多关于GIF:\n\n[维基百科 - GIF](https://zh.wikipedia.org/wiki/GIF)\n\n[GIF文档](http://dev.gameres.com/Program/Visual/Other/GIFDoc.htm)\n\n### PNG\n\n> PNG是20世纪90年代中期开始开发的图像文件存储格式,其目的是企图替代GIF和TIFF文件格式,同时增加一些GIF文件格式所不具备的特性。流式网络图形格式(Portable Network Graphic Format,PNG)名称来源于非官方的“PNG's Not GIF”,是一种位图文件(bitmap file)存储格式,读成“ping”。PNG用来存储灰度图像时,灰度图像的深度可多到16位,存储彩色图像时,彩色图像的深度可多到48位,并且还可存储多到16位的α通道数据。PNG使用从LZ77派生的无损数据压缩算法。\n\n#### 特性\n\n* 支持256色调色板技术,文件体积小。\n* 无损压缩\n* 最高支持48位真彩色图像以及16位灰度图像。\n* 支持Alpha通道的透明/半透明特性。\n* 支持图像亮度的Gamma校准信息。\n* 支持存储附加文本信息,以保留图像名称、作者、版权、创作时间、注释等信息。\n* 渐近显示和流式读写,适合在网络传输中快速显示预览效果后再展示全貌。\n* 使用CRC防止文件出错。\n* 最新的PNG标准允许在一个文件内存储多幅图像。\n\n更多关于PNG:\n\n[PNG官方站 - PNG General Information](http://www.libpng.org/pub/png/)\n\n[PNG格式](http://dev.gameres.com/Program/Visual/Other/PNGFormat.htm)\n\n[维基百科 - PNG](https://zh.wikipedia.org/wiki/PNG)\n\n### JPEG\n\n> JPEG是一种针对照片视频而广泛使用的一种有损压缩标准方法。这个名称代表Joint Photographic Experts Group(联合图像专家小组)。此团队创立于公元1986年,1992年发布了JPEG的标准而在1994年获得了ISO 10918-1的认定\n\n#### 特性\n\n* 适用于储存24位元全采影像\n* 采取的压缩方式通常为有损压缩\n* 不支持透明或动画\n* 压缩比越高影像耗损越大,失真越严重\n* 压缩比在10左右肉眼无法\b辨出压缩图与原图的差别\n\n更多关于JPEG:\n\n[维基百科 - JPEG](https://zh.wikipedia.org/wiki/JPEG)\n\n### WEBP\n\n> WebP,是一种同时提供了有损压缩与无损压缩的图片文件格式,派生自视频编码格式 VP8,是由Google在购买On2 Technologies后发展出来。WebP最初在2010年发布,2011年11月8日,Google开始让WebP支持无损压缩和透明色的功能,而在2012年8月16日的参考实做libwebp 0.2.0中正式支持\n\n#### 特性\n\n* 同时提供有损压缩和无损压缩两种图片文件格式\n* 文件体积小,无损压缩后,比 PNG 文件少了 45% 的文件大小;有损压缩后,比 JPEG 文件少了 25% - 34% 文件大小\n* 浏览器兼容差,目前只支持客户端 Chrome 和 Opera 浏览器以及安卓原生浏览器(Andriod 4.0+),[WebP兼容性](https://developers.google.com/speed/webp/faq#which_web_browsers_natively_support_webp)\n\n更多关于WebP:\n\n[维基百科 - WEBP](https://zh.wikipedia.org/wiki/WebP)\n\n[WEBP探寻之路](http://isux.tencent.com/introduction-of-webp.html)\n\n\n\n## 团队约定 \n\n### 内容图\n\n内容图多以商品图等照片类图片形式存在,颜色较为丰富,文件体积较大\n\n* 优先考虑 JPEG 格式,条件允许的话优先考虑 WebP 格式\n* 尽量不使用PNG格式,PNG8 色位太低,PNG24 压缩率低,文件体积大\n\n### 背景图\n\n背景图多为图标等颜色比较简单、文件体积不大、起修饰作用的图片\n\n* PNG 与 GIF 格式,优先考虑使用 PNG 格式,PNG格式允许更多的颜色并提供更好的压缩率\n* 图像颜色比较简单的,如纯色块线条图标,优先考虑使用 PNG8 格式,避免不使用 JPEG 格式\n* 图像颜色丰富而且图片文件不太大的(40KB 以下)或有半透明效果的优先考虑 PNG24 格式\n* 图像颜色丰富而且文件比较大的(40KB - 200KB)优先考虑 JPEG 格式\n* 条件允许的,优先考虑 WebP 代替 PNG 和 JPEG 格式","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/image/format.html","comments":1,"layout":"page","_id":"ciitvml3z000e2ufyels0pq5c"},{"title":"WebApp Meta","_content":"\n## WebApp Meta 标签设置(iOS)\n\n> A web application is designed to look and behave in a way similar to a native application—for example, it is scaled to fit the entire screen on iOS. You can tailor your web application for Safari on iOS even further, by making it appear like a native application when the user adds it to the Home screen. You do this by using settings for iOS that are ignored by other platforms.\n\nWebApp目的在于使其界面和行为在某种程度上类似于原生APP应用。例如,WebApp 可以在 iOS 设备上通过缩放去适配设备屏幕。当用户将WebApp程序添加到主屏幕后,会使得它看上去像原生APP一样,以此,你可以进一步为 Safari 定制自己的 WebApp,而使用某些专为 iOS 平台设定的设置就可以做到。\n\nWebApp可以通过设置 meta 标签来改变页面的一些表现,有些 meta 设置在 Safari 应用或原生 App 的内嵌网页中都可以生效,而有些设置侧需要将应用添加到主屏幕的时候才会生效。\n\n\n### Viewport Meta Tag\n\n#### 通用类设置\n```html\n\n```\t\n* width -- viewport的宽度\n* height -- viewport的高度\n* initial-scale -- 初始的缩放比例\n* minimum-scale -- 允许用户缩放到的最小比例\n* maximum-scale -- 允许用户缩放到的最大比例\n* user-scalable -- 是否允许用户缩放\n\n#### Safari on iOS viewport\n\n> The width of the viewport in pixels. The default is 980. The range is from 200 to 10,000.\n> \n> The minimum-scale and maximum-scale properties also affect the behavior when changing orientations. The range of these property values is from >0 to 10.0. The default value for minimum-scale is 0.25 and maximum-scale is 5.0\n\n> user-scalable -- The default is yes.\nSetting user-scalable to no also prevents a webpage from scrolling when entering text in an input field.\n\n\n* 默认宽度是 980px,范围从 200px 到 10000px\n* initial-scale 缩放比例范围值是 从 >0 到 10 之间\n* minimum-scale 默认值是 0.25\n* maximum-scale 默认值是 5\n* user-scalable -- 默认值是 yes,设置 no 还可以在文本框输入文本的时候阻止页面滚动\n\n\t\n更多关于 Safari on iOS viewport 的设置:\n\n[Configuring the Viewport](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html#//apple_ref/doc/uid/TP40006509-SW19)\n[Safari HTML Reference](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html)\n\n\n\n### Apple-Specific Meta Tag Keys\n\n#### apple-mobile-web-app-capable\n\n设置 WebApp 是否进入全屏模式,该设置需要添加到主屏幕才生效\n\n\t\n\n> If content is set to yes, the web application runs in full-screen mode;otherwise, it does not. The default behavior is to use Safari to display web content.You can determine whether a webpage is displayed in full-screen mode using the window.navigator.standalone read-only Boolean JavaScript property.\n\n* content设置 yes 进入全屏模式\n* 默认会启动 Safari 应用,使用 Safari 应用浏览\n* 通过检测 window.navigator.standalone 的 Boolean 值可以判断 web 应用是否处于全屏模式\n\n#### apple-mobile-web-app-status-bar-style\n\n为 webapp 设置状态栏样式\n\n\t\n\t\n> This meta tag has no effect unless you first specify full-screen mode as described in apple-apple-mobile-web-app-capable.\n> \nIf content is set to default, the status bar appears normal. If set to black, the status bar has a black background. If set to black-translucent, the status bar is black and translucent. If set to default or black, the web content is displayed below the status bar. If set to black-translucent, the web content is displayed on the entire screen, partially obscured by the status bar. The default value is default.\n\n* 此 meta 设置只在全屏模式生效\n* 默认值是 default\n* content=\"black\",状态栏背景黑色,网页内容在状态栏下面\n* content=\"black-translucent\",状态栏半透明,背景黑色,网页内容占满全屏\n\n*该设置在 iOS6 和 iOS7 表现还可以,但到了 iOS8 后会出现各种问题,而且在 iOS9 中并没有生效。参阅:[iOS 8: web app status bar position and resizing problems](http://stackoverflow.com/questions/25884806/ios-8-web-app-status-bar-position-and-resizing-problems)*\n\n#### format-detection\n\n自动识别页面中有可能是电话格式的数字 \n\n\t\n\n> By default, Safari on iOS detects any string formatted like a phone number and makes it a link that calls the number. Specifying telephone=no disables this feature.\n\niOS中的 Safari 会默认识别与电话格式相似的数字并生成一个可以拉起电话应用并将该数字作为电话号码拨打的链接。定义 telephone=no 可以屏蔽该功能\n\n更多 WebApp 设置参考 [Configuring Web Applications](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html#//apple_ref/doc/uid/TP40002051-CH3-SW4)","source":"docs/html/webapp.md","raw":"title: WebApp Meta\n---\n\n## WebApp Meta 标签设置(iOS)\n\n> A web application is designed to look and behave in a way similar to a native application—for example, it is scaled to fit the entire screen on iOS. You can tailor your web application for Safari on iOS even further, by making it appear like a native application when the user adds it to the Home screen. You do this by using settings for iOS that are ignored by other platforms.\n\nWebApp目的在于使其界面和行为在某种程度上类似于原生APP应用。例如,WebApp 可以在 iOS 设备上通过缩放去适配设备屏幕。当用户将WebApp程序添加到主屏幕后,会使得它看上去像原生APP一样,以此,你可以进一步为 Safari 定制自己的 WebApp,而使用某些专为 iOS 平台设定的设置就可以做到。\n\nWebApp可以通过设置 meta 标签来改变页面的一些表现,有些 meta 设置在 Safari 应用或原生 App 的内嵌网页中都可以生效,而有些设置侧需要将应用添加到主屏幕的时候才会生效。\n\n\n### Viewport Meta Tag\n\n#### 通用类设置\n```html\n\n```\t\n* width -- viewport的宽度\n* height -- viewport的高度\n* initial-scale -- 初始的缩放比例\n* minimum-scale -- 允许用户缩放到的最小比例\n* maximum-scale -- 允许用户缩放到的最大比例\n* user-scalable -- 是否允许用户缩放\n\n#### Safari on iOS viewport\n\n> The width of the viewport in pixels. The default is 980. The range is from 200 to 10,000.\n> \n> The minimum-scale and maximum-scale properties also affect the behavior when changing orientations. The range of these property values is from >0 to 10.0. The default value for minimum-scale is 0.25 and maximum-scale is 5.0\n\n> user-scalable -- The default is yes.\nSetting user-scalable to no also prevents a webpage from scrolling when entering text in an input field.\n\n\n* 默认宽度是 980px,范围从 200px 到 10000px\n* initial-scale 缩放比例范围值是 从 >0 到 10 之间\n* minimum-scale 默认值是 0.25\n* maximum-scale 默认值是 5\n* user-scalable -- 默认值是 yes,设置 no 还可以在文本框输入文本的时候阻止页面滚动\n\n\t\n更多关于 Safari on iOS viewport 的设置:\n\n[Configuring the Viewport](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html#//apple_ref/doc/uid/TP40006509-SW19)\n[Safari HTML Reference](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html)\n\n\n\n### Apple-Specific Meta Tag Keys\n\n#### apple-mobile-web-app-capable\n\n设置 WebApp 是否进入全屏模式,该设置需要添加到主屏幕才生效\n\n\t\n\n> If content is set to yes, the web application runs in full-screen mode;otherwise, it does not. The default behavior is to use Safari to display web content.You can determine whether a webpage is displayed in full-screen mode using the window.navigator.standalone read-only Boolean JavaScript property.\n\n* content设置 yes 进入全屏模式\n* 默认会启动 Safari 应用,使用 Safari 应用浏览\n* 通过检测 window.navigator.standalone 的 Boolean 值可以判断 web 应用是否处于全屏模式\n\n#### apple-mobile-web-app-status-bar-style\n\n为 webapp 设置状态栏样式\n\n\t\n\t\n> This meta tag has no effect unless you first specify full-screen mode as described in apple-apple-mobile-web-app-capable.\n> \nIf content is set to default, the status bar appears normal. If set to black, the status bar has a black background. If set to black-translucent, the status bar is black and translucent. If set to default or black, the web content is displayed below the status bar. If set to black-translucent, the web content is displayed on the entire screen, partially obscured by the status bar. The default value is default.\n\n* 此 meta 设置只在全屏模式生效\n* 默认值是 default\n* content=\"black\",状态栏背景黑色,网页内容在状态栏下面\n* content=\"black-translucent\",状态栏半透明,背景黑色,网页内容占满全屏\n\n*该设置在 iOS6 和 iOS7 表现还可以,但到了 iOS8 后会出现各种问题,而且在 iOS9 中并没有生效。参阅:[iOS 8: web app status bar position and resizing problems](http://stackoverflow.com/questions/25884806/ios-8-web-app-status-bar-position-and-resizing-problems)*\n\n#### format-detection\n\n自动识别页面中有可能是电话格式的数字 \n\n\t\n\n> By default, Safari on iOS detects any string formatted like a phone number and makes it a link that calls the number. Specifying telephone=no disables this feature.\n\niOS中的 Safari 会默认识别与电话格式相似的数字并生成一个可以拉起电话应用并将该数字作为电话号码拨打的链接。定义 telephone=no 可以屏蔽该功能\n\n更多 WebApp 设置参考 [Configuring Web Applications](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html#//apple_ref/doc/uid/TP40002051-CH3-SW4)","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/html/webapp.html","comments":1,"layout":"page","_id":"ciitvml41000f2ufym8ihw2nl"},{"title":"文件模版","_content":"\nHTML模版指的是团队使用的初始化HTML文件,里面会根据不同平台而采用不一样的设置,一般主要不同的设置就是 mata 标签的设置,以下是 PC 和移动端的 HTML 模版\n\n## HTML5最简结构标准模版\n\t\n\t\n\t\n\t\n\tHTML5最简结构标准模版\n\t \n\t\n\t\n\t\n\t \n\t\n## 团队约定\n\n### 移动端\n```html\n\n\n\n\n\n\n移动端HTML模版\n\t\n\n\n \n\n\n\n\n\n \n\n\n\n\n\n\n\n \n\n\n\n\n```\n\n### PC端\n```html\n\n\n\n\n\n\n\n\n\n\nPC端HTML模版\n\n \n\n \n\n\n\n\n\n \n\n\n\n\n\n\n\n \n\n\n\n\n```","source":"docs/html/template.md","raw":"title: 文件模版\n---\n\nHTML模版指的是团队使用的初始化HTML文件,里面会根据不同平台而采用不一样的设置,一般主要不同的设置就是 mata 标签的设置,以下是 PC 和移动端的 HTML 模版\n\n## HTML5最简结构标准模版\n\t\n\t\n\t\n\t\n\tHTML5最简结构标准模版\n\t \n\t\n\t\n\t\n\t \n\t\n## 团队约定\n\n### 移动端\n```html\n\n\n\n\n\n\n移动端HTML模版\n\t\n\n\n \n\n\n\n\n\n \n\n\n\n\n\n\n\n \n\n\n\n\n```\n\n### PC端\n```html\n\n\n\n\n\n\n\n\n\n\nPC端HTML模版\n\n \n\n \n\n\n\n\n\n \n\n\n\n\n\n\n\n \n\n\n\n\n```","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/html/template.html","comments":1,"layout":"page","_id":"ciitvml43000g2ufyn2qobedl"},{"title":"注释规范","_content":"## 遵循标准\n\nHTML注释规范写法应该遵循以下标准:\n\n> Comments must start with the four character sequence U+003C LESS-THAN SIGN, U+0021 EXCLAMATION MARK, U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS (<!--). Following this sequence, the comment may have text, with the additional restriction that the text must not start with a single \">\" (U+003E) character, nor start with a U+002D HYPHEN-MINUS character (-) followed by a \">\" (U+003E) character, nor contain two consecutive U+002D HYPHEN-MINUS characters (--), nor end with a U+002D HYPHEN-MINUS character (-). Finally, the comment must be ended by the three character sequence U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN (-->).\n\n* 必须以4个有序字符开始:编码为 U+003C LESS-THAN SIGN 的小于号, 编码为 U+0021 EXCLAMATION MARK 的感叹号, 编码为 U+002D HYPHEN-MINUS 横线, 编码为 U+002D HYPHEN-MINUS横线 ,即 “<!--”\n* 在此之后是注释内容,注释的内容有以下限制:\n\t* 不能以单个 \">\" (U+003E) 字符开始\n\t* 不能以由 “-“(U+002D HYPHEN-MINUS)和 ”>” (U+003E) 组合的字符开始,即 “->”\n\t* 不能包含两个连续的 U+002D HYPHEN-MINUS 字符,即 “--”\n\t* 不能以一个 U+002D HYPHEN-MINUS 字符结束,即 “-”\n* 必须以3个有序字符结束:U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN,即 “-->”\n\n标准写法:\n\n\t\n\t\n错误的写法:\n\n\tThe Wrong Comment Text-->\n\n\tThe Wrong Comment Text-->\n\n\t\n\n\t\n\t\n参考 www.w3.org [#Comments](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#comments) \n\n\t\n## 团队约定\n\n### 单行注释 \n\n一般用于简单的描述,如某些状态描述、属性描述等\n\n注释内容前后各一个空格字符,注释位于要注释代码的上面,单独占一行\n\n*推荐:*\n\n\t\n\t
...
\n\t\n*不推荐:*\n\t\n\t
...
\t\n\t\n\t
\n\t...\n\t
\n\n### 模块注释\n\n一般用于描述模块的名称以及模块开始与结束的位置\n\n注释内容前后各一个空格字符,`` 表示模块开始,`` 表示模块结束,模块与模块之间相隔一行\n\n*推荐写法:*\n\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n*不推荐写法:*\n\n\t\n\t
\n\t\t...\n\t
\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n### 嵌套模块注释\n\n当模块注释内再出现模块注释的时候,为了突出主要模块,嵌套模块不再使用 \n\n\t\n\t\n\t\n而改用 \n\n\t\n\n注释写在模块结尾标签底部,单独一行。\n\n\t\n\t
\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t
\n\t","source":"docs/html/note.md","raw":"title: 注释规范\n---\n## 遵循标准\n\nHTML注释规范写法应该遵循以下标准:\n\n> Comments must start with the four character sequence U+003C LESS-THAN SIGN, U+0021 EXCLAMATION MARK, U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS (<!--). Following this sequence, the comment may have text, with the additional restriction that the text must not start with a single \">\" (U+003E) character, nor start with a U+002D HYPHEN-MINUS character (-) followed by a \">\" (U+003E) character, nor contain two consecutive U+002D HYPHEN-MINUS characters (--), nor end with a U+002D HYPHEN-MINUS character (-). Finally, the comment must be ended by the three character sequence U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN (-->).\n\n* 必须以4个有序字符开始:编码为 U+003C LESS-THAN SIGN 的小于号, 编码为 U+0021 EXCLAMATION MARK 的感叹号, 编码为 U+002D HYPHEN-MINUS 横线, 编码为 U+002D HYPHEN-MINUS横线 ,即 “<!--”\n* 在此之后是注释内容,注释的内容有以下限制:\n\t* 不能以单个 \">\" (U+003E) 字符开始\n\t* 不能以由 “-“(U+002D HYPHEN-MINUS)和 ”>” (U+003E) 组合的字符开始,即 “->”\n\t* 不能包含两个连续的 U+002D HYPHEN-MINUS 字符,即 “--”\n\t* 不能以一个 U+002D HYPHEN-MINUS 字符结束,即 “-”\n* 必须以3个有序字符结束:U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN,即 “-->”\n\n标准写法:\n\n\t\n\t\n错误的写法:\n\n\tThe Wrong Comment Text-->\n\n\tThe Wrong Comment Text-->\n\n\t\n\n\t\n\t\n参考 www.w3.org [#Comments](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#comments) \n\n\t\n## 团队约定\n\n### 单行注释 \n\n一般用于简单的描述,如某些状态描述、属性描述等\n\n注释内容前后各一个空格字符,注释位于要注释代码的上面,单独占一行\n\n*推荐:*\n\n\t\n\t
...
\n\t\n*不推荐:*\n\t\n\t
...
\t\n\t\n\t
\n\t...\n\t
\n\n### 模块注释\n\n一般用于描述模块的名称以及模块开始与结束的位置\n\n注释内容前后各一个空格字符,`` 表示模块开始,`` 表示模块结束,模块与模块之间相隔一行\n\n*推荐写法:*\n\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n*不推荐写法:*\n\n\t\n\t
\n\t\t...\n\t
\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n### 嵌套模块注释\n\n当模块注释内再出现模块注释的时候,为了突出主要模块,嵌套模块不再使用 \n\n\t\n\t\n\t\n而改用 \n\n\t\n\n注释写在模块结尾标签底部,单独一行。\n\n\t\n\t
\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t
\n\t","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/html/note.html","comments":1,"layout":"page","_id":"ciitvml45000h2ufy3vos8bmj"},{"_content":"# 前端开发编码规范\n\n基于 [W3C](http://www.w3.org/)、[苹果开发者](https://developer.apple.com/) 等官方文档,并结合团队日常业务需求以及团队在日常开发过程中总结提炼出的经验而约定。\n\n旨在增强团队开发协作、提高代码质量和打造开发基石的编码规范,是团队代码基本约定的内容,必须严格遵循。\n\n## HTML规范\n\n###代码规范\n\n#### DOCTYPE 声明\n\n一个DOCTYPE必须包含以下部分,并严格按照顺序出现:\n\n> 1. A string that is an ASCII case-insensitive match for the string \" 2. One or more space characters.\n> 3. A string that is an ASCII case-insensitive match for the string \"html\".\n> 4. Optionally, a DOCTYPE legacy string or an obsolete permitted DOCTYPE string (defined below).\n> 5. Zero or more space characters.\n> 6. A \">\" (U+003E) character.\n\n1. 一个ASCII字符串 \"\n\n##### 更多关于 DOCTYPE声明\n[#The DOCTYPE](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#the-doctype)\n\n\n#### 页面语言LANG\n\nLang属性的取值应该遵循互联网工程任务组--IETF(The Internet Engineering Task Force)制定的关于语言标签的文档 [BCP 47 - Tags for Identifying Languages](http://tools.ietf.org/html/bcp47)\n\n##### 团队约定\n\n推荐使用属性值 `cmn-Hans-CN`(简体, 中国大陆),但是考虑浏览器和操作系统的兼容性,目前仍然使用 `zh-CN` 属性值\n\n\t\n\t\n更多地区语言参考:\n\n\tzh-SG 中文 (简体, 新加坡) 对应 cmn-Hans-SG 普通话 (简体, 新加坡)\n\tzh-HK 中文 (繁体, 香港) 对应 cmn-Hant-HK 普通话 (繁体, 香港)\n\tzh-MO 中文 (繁体, 澳门) 对应 cmn-Hant-MO 普通话 (繁体, 澳门)\n\tzh-TW 中文 (繁体, 台湾) 对应 cmn-Hant-TW 普通话 (繁体, 台湾)\n\t\n\t\n##### 已废弃不推荐使用的 Languages Tags\n\n以下写法已于 2009 年废弃,请勿使用(cmn、wuu、yue、gan 等已由 2005 年的 extlang 升级到 2009 年的 language):\n\n\tzh-cmn, zh-cmn-Hans, zh-cmn-Hant, zh-wuu, zh-yue, zh-gan\n\t\n以下写法已于 2009 年废弃,不推荐使用:\n\n\tzh-Hans, zh-Hans-CN, zh-Hans-SG, zh-Hans-HK, zh-Hans-MO, zh-Hans-TW, \n\tzh-Hant, zh-Hant-CN, zh-Hant-SG, zh-Hant-HK, zh-Hant-MO, zh-Hant-TW\n\n更多已废弃 Languages Tags 参考 [IANA Language Subtag Registry](http://www.iana.org/assignments/language-subtag-registry/language-subtag-registry) 里面的 “Type: redundant“”\n\n##### 更多关于 Languages Tags :\n\n[W3C Language tags in HTML and XML](http://www.w3.org/International/articles/language-tags/)\n\n\n[网页头部的声明应该是用 lang=\"zh\" 还是 lang=\"zh-cn\"?](http://www.zhihu.com/question/20797118?utm_source=weibo&utm_medium=weibo_share&utm_content=share_question&utm_campaign=share_sidebar)\n\n\n\n#### CHARSET\n\n> Because the character sets in ISO-8859 was limited in size, and not compatible in multilingual environments, the Unicode Consortium developed the Unicode Standard.\n> \n> The Unicode Standard covers (almost) all the characters, punctuations, and symbols in the world.\n> \n> Unicode enables processing, storage, and transport of text independent of platform and language.\n> \n> The default character encoding in HTML-5 is UTF-8.\n\n因为 ISO-8859 中字符集大小是有限的,且在多语言环境中不兼容,所以 Unicode 联盟开发了 Unicode 标准。\n\nUnicode 标准覆盖了(几乎)所有的字符、标点符号和符号。\n\nUnicode 使文本的处理、存储和运输,独立于平台和语言。\n\nHTML-5 中默认的字符编码是 UTF-8\n\n参阅 [HTML Unicode (UTF-8) Reference](http://www.w3schools.com/charsets/ref_html_utf8.asp)\n\n##### 团队约定\n\n一般情况下统一使用 “UTF-8” 编码\n\n\t\n\t\n由于历史原因,有些业务可能会使用 “GBK” 编码\n\t\n\t\n\n请尽量统一写成标准的 “UTF-8”,不要写成 “utf-8” 或 “utf8” 或 “UTF8”。根据 [IETF对UTF-8的定义](http://www.ietf.org/rfc/rfc3629),其编码标准的写法是 “UTF-8”;而 UTF8 或 utf8 的写法只是出现在某些编程系统中,如 .NET framework 的类 System.Text.Encoding 中的一个属性名就叫 UTF8。\n\n##### 更多关于 \n\nUTF-8写法: [UTF8 or UTF-8?](http://stackoverflow.com/questions/809620/utf8-or-utf-8) \n\nGBK:[Application of IANA Charset Registration for GBK](http://www.ietf.org/assignments/charset-reg/GBK)\n\nCharset :[character-encoding-declaration](http://www.w3.org/TR/html5/document-metadata.html#character-encoding-declaration) \n\n\n#### 元素及标签闭合\n\nHTML元素共有以下5种:\n \n* 空元素:area、base、br、col、command、embed、hr、img、input、keygen、link、meta、param、source、track、wbr\n* 原始文本元素:script、style\n* RCDATA元素:textarea、title\n* 外来元素:来自MathML命名空间和SVG命名空间的元素。\n* 常规元素:其他HTML允许的元素都称为常规元素。\n\n元素标签的闭合应遵循以下原则:\n\n> Tags are used to delimit the start and end of elements in the markup. Raw text, escapable raw text, and normal elements have a start tag to indicate where they begin, and an end tag to indicate where they end. The start and end tags of certain normal elements can be omitted, as described below in the section on optional tags. Those that cannot be omitted must not be omitted. Void elements only have a start tag; end tags must not be specified for void elements. Foreign elements must either have a start tag and an end tag, or a start tag that is marked as self-closing, in which case they must not have an end tag.\n\n* 原始文本元素、RCDATA元素以及常规元素都有一个开始标签来表示开始,一个结束标签来表示结束。\n* [某些元素的开始和结束标签是可以省略的](http://www.w3.org/TR/html5/syntax.html#optional-tags),如果规定标签不能被省略,那么就绝对不能省略它。\n* 空元素只有一个开始标签,且不能为空元素设置结束标签。\n* 外来元素可以有一个开始标签和配对的结束标签,或者只有一个自闭合的开始标签,且后者情况下该元素不能有结束标签。\n\n##### 团队约定\n\n为了能让浏览器更好的解析代码以及能让代码具有更好的可读性,有如下约定:\n\n* 所有具有开始标签和结束标签的元素都要写上起止标签,某些允许省略开始标签或和束标签的元素亦都要写上。\n* 空元素标签都不加 “/” 字符\n\n\n*推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始有终,浏览器能正确解析

\n\t
\n\t\n\t
\n\t\n*不推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始无终,浏览器亦能正确解析\n\t

\n\n\t
\n\n更多关于元素及标签关闭:[#Elements](http://www.w3.org/TR/html5/syntax.html#elements-0)\n\n#### 书写风格\n\n##### HTML代码大小写\n\nHTML标签名、类名、标签属性和大部分属性值统一用小写\n\n*推荐:*\n\n\t
\n\t\n*不推荐:*\n\n\t
\n\t\n\t
\n\nHTML文本、CDATA、JavaScript、meta标签某些属性等内容可大小写混合\n\t\n\t\n \n\n\t\n\t

I AM WHAT I AM

\n\n\t\n\t\n\t\n\t\n\t\n\t\n##### 类型属性\n\n不需要为 CSS、JS 指定类型属性,HTML5 中默认已包含\n\n*推荐:*\n\n\t\n\t\n\t\n*不推荐:*\n\n\t\n\t\n\t\n##### 元素属性\n\n* 元素属性值使用双引号语法\n* 元素属性值可以写上的都写上\n\n\n*推荐:*\n\n\t\n\t\n\t\n\t\n*不推荐:*\n\n\t\t\n\t\n\t\n\t\n\t\n\t\n更多关于元素属性:[#Attributes](http://www.w3.org/TR/html5/syntax.html#attributes-0)\n\n##### 特殊字符引用\n\n> In certain cases described in other sections, text may be mixed with character references. These can be used to escape characters that couldn't otherwise legally be included in text.\n\n文本可以和字符引用混合出现。这种方法可以用来转义在文本中不能合法出现的字符。\n\n\n在 HTML 中不能使用小于号 “<” 和大于号 “>”特殊字符,浏览器会将它们作为标签解析,若要正确显示,在 HTML 源代码中使用字符实体\n\n*推荐:*\n\n\tmore>>\n\n*不推荐:*\n\n\tmore>>\n\t\n更多关于符号引用:[#Character references](http://www.w3.org/TR/html5/syntax.html#character-references)\n\n##### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n\t
\n \t \n
\n\n##### 纯数字输入框\n\n使用 type=\"tel\" 而不是 type=\"number\"\n\t\n\t \n\n##### 代码嵌套\n\n元素嵌套规范,每个块状元素独立一行,内联元素可选\n\n*推荐:*\n\n\t
\n \t

\n \t

\n\t
\t\n\t

\n\t\n*不推荐:*\n\n\t
\n \t

\n\t
\t\n\t

\n\t\t\n\t\t\n\t

\n\t\n段落元素与标题元素只能嵌套内联元素\n\n*推荐:*\n\t\n\t

\n\t

\n\t\n*不推荐:*\n\n\t

\n\t

\n\t\t\t\t\n###注释规范\n\nHTML注释规范写法应该遵循以下标准:\n\n> Comments must start with the four character sequence U+003C LESS-THAN SIGN, U+0021 EXCLAMATION MARK, U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS (<!--). Following this sequence, the comment may have text, with the additional restriction that the text must not start with a single \">\" (U+003E) character, nor start with a U+002D HYPHEN-MINUS character (-) followed by a \">\" (U+003E) character, nor contain two consecutive U+002D HYPHEN-MINUS characters (--), nor end with a U+002D HYPHEN-MINUS character (-). Finally, the comment must be ended by the three character sequence U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN (-->).\n\n* 必须以4个有序字符开始:编码为 U+003C LESS-THAN SIGN 的小于号, 编码为 U+0021 EXCLAMATION MARK 的感叹号, 编码为 U+002D HYPHEN-MINUS 横线, 编码为 U+002D HYPHEN-MINUS横线 ,即 “<!--”\n* 在此之后是注释内容,注释的内容有以下限制:\n\t* 不能以单个 \">\" (U+003E) 字符开始\n\t* 不能以由 “-“(U+002D HYPHEN-MINUS)和 ”>” (U+003E) 组合的字符开始,即 “->”\n\t* 不能包含两个连续的 U+002D HYPHEN-MINUS 字符,即 “--”\n\t* 不能以一个 U+002D HYPHEN-MINUS 字符结束,即 “-”\n* 必须以3个有序字符结束:U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN,即 “-->”\n\n标准写法:\n\n\t\n\t\n错误的写法:\n\n\tThe Wrong Comment Text-->\n\n\tThe Wrong Comment Text-->\n\n\t\n\n\t\n\t\n参考 www.w3.org [#Comments](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#comments) \n\n\n\t\n#### 团队约定\n\n##### 单行注释 \n\n一般用于简单的描述,如某些状态描述、属性描述等\n\n注释内容前后各一个空格字符,注释位于要注释代码的上面,单独占一行\n\n*推荐:*\n\n\t\n\t
...
\n\t\n*不推荐:*\n\t\n\t
...
\t\n\t\n\t
\n\t...\n\t
\n\n##### 模块注释\n\n一般用于描述模块的名称以及模块开始与结束的位置\n\n注释内容前后各一个空格字符,`` 表示模块开始,`` 表示模块结束,模块与模块之间相隔一行\n\n*推荐写法:*\n\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n*不推荐写法:*\n\n\t\n\t
\n\t\t...\n\t
\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n##### 嵌套模块注释\n\n当模块注释内再出现模块注释的时候,为了突出主要模块,嵌套模块不再使用 \n\n\t\n\t\n\t\n而改用 \n\n\t\n\n注释写在模块结尾标签底部,单独一行。\n\n\t\n\t
\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t
\n\t\n\n### WebApp Meta 标签设置(iOS)\n\n> A web application is designed to look and behave in a way similar to a native application—for example, it is scaled to fit the entire screen on iOS. You can tailor your web application for Safari on iOS even further, by making it appear like a native application when the user adds it to the Home screen. You do this by using settings for iOS that are ignored by other platforms.\n\nWebApp目的在于使其界面和行为在某种程度上类似于原生APP应用。例如,WebApp 可以在 iOS 设备上通过缩放去适配设备屏幕。当用户将WebApp程序添加到主屏幕后,会使得它看上去像原生APP一样,以此,你可以进一步为 Safari 定制自己的 WebApp,而使用某些专为 iOS 平台设定的设置就可以做到。\n\nWebApp可以通过设置 meta 标签来改变页面的一些表现,有些 meta 设置在 Safari 应用或原生 App 的内嵌网页中都可以生效,而有些设置侧需要将应用添加到主屏幕的时候才会生效。\n\n\n#### Viewport Meta Tag\n\n通用类设置:\n\n\t\n\t\n* width -- viewport的宽度\n* height -- viewport的高度\n* initial-scale -- 初始的缩放比例\n* minimum-scale -- 允许用户缩放到的最小比例\n* maximum-scale -- 允许用户缩放到的最大比例\n* user-scalable -- 是否允许用户缩放\n\n其中 Safari on iOS viewport:\n\n> The width of the viewport in pixels. The default is 980. The range is from 200 to 10,000.\n> \n> The minimum-scale and maximum-scale properties also affect the behavior when changing orientations. The range of these property values is from >0 to 10.0. The default value for minimum-scale is 0.25 and maximum-scale is 5.0\n\n> user-scalable -- The default is yes.\nSetting user-scalable to no also prevents a webpage from scrolling when entering text in an input field.\n\n\n* 默认宽度是 980px,范围从 200px 到 10000px\n* initial-scale 缩放比例范围值是 从 >0 到 10 之间\n* minimum-scale 默认值是 0.25\n* maximum-scale 默认值是 5\n* user-scalable -- 默认值是 yes,设置 no 还可以在文本框输入文本的时候阻止页面滚动\n\n\t\n更多关于 Safari on iOS viewport 的设置:\n\n[Configuring the Viewport](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html#//apple_ref/doc/uid/TP40006509-SW19)\n\n[Safari HTML Reference](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html)\n\n\n\n#### Apple-Specific Meta Tag Keys\n\n##### apple-mobile-web-app-capable\n\n设置 WebApp 是否进入全屏模式,该设置需要添加到主屏幕才生效\n\n\t\n\t\t\n> If content is set to yes, the web application runs in full-screen mode;otherwise, it does not. The default behavior is to use Safari to display web content.You can determine whether a webpage is displayed in full-screen mode using the window.navigator.standalone read-only Boolean JavaScript property.\n\n* content设置 yes 进入全屏模式\n* 默认会启动 Safari 应用,使用 Safari 应用浏览\n* 通过检测 window.navigator.standalone 的 Boolean 值可以判断 web 应用是否处于全屏模式\n\n##### apple-mobile-web-app-status-bar-style\n\n为 webapp 设置状态栏样式\n\n\t\n\t\n> This meta tag has no effect unless you first specify full-screen mode as described in apple-apple-mobile-web-app-capable.\n> \nIf content is set to default, the status bar appears normal. If set to black, the status bar has a black background. If set to black-translucent, the status bar is black and translucent. If set to default or black, the web content is displayed below the status bar. If set to black-translucent, the web content is displayed on the entire screen, partially obscured by the status bar. The default value is default.\n\n* 此 meta 设置只在全屏模式生效\n* 默认值是 default\n* content=\"black\",状态栏背景黑色,网页内容在状态栏下面\n* content=\"black-translucent\",状态栏半透明,背景黑色,网页内容占满全屏\n\n*该设置在 iOS6 和 iOS7 表现还可以,但到了 iOS8 后会出现各种问题,而且在 iOS9 中并没有生效。参阅:[iOS 8: web app status bar position and resizing problems](http://stackoverflow.com/questions/25884806/ios-8-web-app-status-bar-position-and-resizing-problems)*\n\n##### format-detection\n\n自动识别页面中有可能是电话格式的数字 \n\n\t\n\t\n> By default, Safari on iOS detects any string formatted like a phone number and makes it a link that calls the number. Specifying telephone=no disables this feature.\n\niOS中的 Safari 会默认识别与电话格式相似的数字并生成一个可以拉起电话应用并将该数字作为电话号码拨打的链接。定义 telephone=no 可以屏蔽该功能\n\n更多 WebApp 设置参考 [Configuring Web Applications](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html#//apple_ref/doc/uid/TP40002051-CH3-SW4)\n\n###HTML模版\n\nHTML模版指的是团队使用的初始化HTML文件,里面会根据不同平台而采用不一样的设置,一般主要不同的设置就是 mata 标签的设置,以下是 PC 和移动端的 HTML 模版\n\n#### HTML5最简结构标准模版:\n\n\t\n\t\n\t\n\t\n\tHTML5最简结构标准模版\n\t \n\t\n\t\n\t\n\t \n\t\n#### 团队约定的HTML模版\n\n##### 移动端\n\n\t\n\t\n\t\n\t\n\t\n\t\n\t移动端HTML模版\n \t\n \t\n \t\n \t \n\n \t\n\t\n\t\n\n\t \n\t\n\t\n\n\t\n\t\n\t\n \n\t \n\t\n\t\n\t\n\t\n\t\t\n##### PC端\n\n\t\n\t\n\t\n\t\n \n \n \n \n \n \n\tPC端HTML模版\n \n \n \n \n\n\t\n\t\n\t\n\n\t \n\t\n\t\n\n\t\n\t\n\t\n \n\t \n\t\n\t\n\t\n\t","source":"docs/html/jdc_fd_web_final_2.md","raw":"# 前端开发编码规范\n\n基于 [W3C](http://www.w3.org/)、[苹果开发者](https://developer.apple.com/) 等官方文档,并结合团队日常业务需求以及团队在日常开发过程中总结提炼出的经验而约定。\n\n旨在增强团队开发协作、提高代码质量和打造开发基石的编码规范,是团队代码基本约定的内容,必须严格遵循。\n\n## HTML规范\n\n###代码规范\n\n#### DOCTYPE 声明\n\n一个DOCTYPE必须包含以下部分,并严格按照顺序出现:\n\n> 1. A string that is an ASCII case-insensitive match for the string \" 2. One or more space characters.\n> 3. A string that is an ASCII case-insensitive match for the string \"html\".\n> 4. Optionally, a DOCTYPE legacy string or an obsolete permitted DOCTYPE string (defined below).\n> 5. Zero or more space characters.\n> 6. A \">\" (U+003E) character.\n\n1. 一个ASCII字符串 \"\n\n##### 更多关于 DOCTYPE声明\n[#The DOCTYPE](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#the-doctype)\n\n\n#### 页面语言LANG\n\nLang属性的取值应该遵循互联网工程任务组--IETF(The Internet Engineering Task Force)制定的关于语言标签的文档 [BCP 47 - Tags for Identifying Languages](http://tools.ietf.org/html/bcp47)\n\n##### 团队约定\n\n推荐使用属性值 `cmn-Hans-CN`(简体, 中国大陆),但是考虑浏览器和操作系统的兼容性,目前仍然使用 `zh-CN` 属性值\n\n\t\n\t\n更多地区语言参考:\n\n\tzh-SG 中文 (简体, 新加坡) 对应 cmn-Hans-SG 普通话 (简体, 新加坡)\n\tzh-HK 中文 (繁体, 香港) 对应 cmn-Hant-HK 普通话 (繁体, 香港)\n\tzh-MO 中文 (繁体, 澳门) 对应 cmn-Hant-MO 普通话 (繁体, 澳门)\n\tzh-TW 中文 (繁体, 台湾) 对应 cmn-Hant-TW 普通话 (繁体, 台湾)\n\t\n\t\n##### 已废弃不推荐使用的 Languages Tags\n\n以下写法已于 2009 年废弃,请勿使用(cmn、wuu、yue、gan 等已由 2005 年的 extlang 升级到 2009 年的 language):\n\n\tzh-cmn, zh-cmn-Hans, zh-cmn-Hant, zh-wuu, zh-yue, zh-gan\n\t\n以下写法已于 2009 年废弃,不推荐使用:\n\n\tzh-Hans, zh-Hans-CN, zh-Hans-SG, zh-Hans-HK, zh-Hans-MO, zh-Hans-TW, \n\tzh-Hant, zh-Hant-CN, zh-Hant-SG, zh-Hant-HK, zh-Hant-MO, zh-Hant-TW\n\n更多已废弃 Languages Tags 参考 [IANA Language Subtag Registry](http://www.iana.org/assignments/language-subtag-registry/language-subtag-registry) 里面的 “Type: redundant“”\n\n##### 更多关于 Languages Tags :\n\n[W3C Language tags in HTML and XML](http://www.w3.org/International/articles/language-tags/)\n\n\n[网页头部的声明应该是用 lang=\"zh\" 还是 lang=\"zh-cn\"?](http://www.zhihu.com/question/20797118?utm_source=weibo&utm_medium=weibo_share&utm_content=share_question&utm_campaign=share_sidebar)\n\n\n\n#### CHARSET\n\n> Because the character sets in ISO-8859 was limited in size, and not compatible in multilingual environments, the Unicode Consortium developed the Unicode Standard.\n> \n> The Unicode Standard covers (almost) all the characters, punctuations, and symbols in the world.\n> \n> Unicode enables processing, storage, and transport of text independent of platform and language.\n> \n> The default character encoding in HTML-5 is UTF-8.\n\n因为 ISO-8859 中字符集大小是有限的,且在多语言环境中不兼容,所以 Unicode 联盟开发了 Unicode 标准。\n\nUnicode 标准覆盖了(几乎)所有的字符、标点符号和符号。\n\nUnicode 使文本的处理、存储和运输,独立于平台和语言。\n\nHTML-5 中默认的字符编码是 UTF-8\n\n参阅 [HTML Unicode (UTF-8) Reference](http://www.w3schools.com/charsets/ref_html_utf8.asp)\n\n##### 团队约定\n\n一般情况下统一使用 “UTF-8” 编码\n\n\t\n\t\n由于历史原因,有些业务可能会使用 “GBK” 编码\n\t\n\t\n\n请尽量统一写成标准的 “UTF-8”,不要写成 “utf-8” 或 “utf8” 或 “UTF8”。根据 [IETF对UTF-8的定义](http://www.ietf.org/rfc/rfc3629),其编码标准的写法是 “UTF-8”;而 UTF8 或 utf8 的写法只是出现在某些编程系统中,如 .NET framework 的类 System.Text.Encoding 中的一个属性名就叫 UTF8。\n\n##### 更多关于 \n\nUTF-8写法: [UTF8 or UTF-8?](http://stackoverflow.com/questions/809620/utf8-or-utf-8) \n\nGBK:[Application of IANA Charset Registration for GBK](http://www.ietf.org/assignments/charset-reg/GBK)\n\nCharset :[character-encoding-declaration](http://www.w3.org/TR/html5/document-metadata.html#character-encoding-declaration) \n\n\n#### 元素及标签闭合\n\nHTML元素共有以下5种:\n \n* 空元素:area、base、br、col、command、embed、hr、img、input、keygen、link、meta、param、source、track、wbr\n* 原始文本元素:script、style\n* RCDATA元素:textarea、title\n* 外来元素:来自MathML命名空间和SVG命名空间的元素。\n* 常规元素:其他HTML允许的元素都称为常规元素。\n\n元素标签的闭合应遵循以下原则:\n\n> Tags are used to delimit the start and end of elements in the markup. Raw text, escapable raw text, and normal elements have a start tag to indicate where they begin, and an end tag to indicate where they end. The start and end tags of certain normal elements can be omitted, as described below in the section on optional tags. Those that cannot be omitted must not be omitted. Void elements only have a start tag; end tags must not be specified for void elements. Foreign elements must either have a start tag and an end tag, or a start tag that is marked as self-closing, in which case they must not have an end tag.\n\n* 原始文本元素、RCDATA元素以及常规元素都有一个开始标签来表示开始,一个结束标签来表示结束。\n* [某些元素的开始和结束标签是可以省略的](http://www.w3.org/TR/html5/syntax.html#optional-tags),如果规定标签不能被省略,那么就绝对不能省略它。\n* 空元素只有一个开始标签,且不能为空元素设置结束标签。\n* 外来元素可以有一个开始标签和配对的结束标签,或者只有一个自闭合的开始标签,且后者情况下该元素不能有结束标签。\n\n##### 团队约定\n\n为了能让浏览器更好的解析代码以及能让代码具有更好的可读性,有如下约定:\n\n* 所有具有开始标签和结束标签的元素都要写上起止标签,某些允许省略开始标签或和束标签的元素亦都要写上。\n* 空元素标签都不加 “/” 字符\n\n\n*推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始有终,浏览器能正确解析

\n\t
\n\t\n\t
\n\t\n*不推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始无终,浏览器亦能正确解析\n\t

\n\n\t
\n\n更多关于元素及标签关闭:[#Elements](http://www.w3.org/TR/html5/syntax.html#elements-0)\n\n#### 书写风格\n\n##### HTML代码大小写\n\nHTML标签名、类名、标签属性和大部分属性值统一用小写\n\n*推荐:*\n\n\t
\n\t\n*不推荐:*\n\n\t
\n\t\n\t
\n\nHTML文本、CDATA、JavaScript、meta标签某些属性等内容可大小写混合\n\t\n\t\n \n\n\t\n\t

I AM WHAT I AM

\n\n\t\n\t\n\t\n\t\n\t\n\t\n##### 类型属性\n\n不需要为 CSS、JS 指定类型属性,HTML5 中默认已包含\n\n*推荐:*\n\n\t\n\t\n\t\n*不推荐:*\n\n\t\n\t\n\t\n##### 元素属性\n\n* 元素属性值使用双引号语法\n* 元素属性值可以写上的都写上\n\n\n*推荐:*\n\n\t\n\t\n\t\n\t\n*不推荐:*\n\n\t\t\n\t\n\t\n\t\n\t\n\t\n更多关于元素属性:[#Attributes](http://www.w3.org/TR/html5/syntax.html#attributes-0)\n\n##### 特殊字符引用\n\n> In certain cases described in other sections, text may be mixed with character references. These can be used to escape characters that couldn't otherwise legally be included in text.\n\n文本可以和字符引用混合出现。这种方法可以用来转义在文本中不能合法出现的字符。\n\n\n在 HTML 中不能使用小于号 “<” 和大于号 “>”特殊字符,浏览器会将它们作为标签解析,若要正确显示,在 HTML 源代码中使用字符实体\n\n*推荐:*\n\n\tmore>>\n\n*不推荐:*\n\n\tmore>>\n\t\n更多关于符号引用:[#Character references](http://www.w3.org/TR/html5/syntax.html#character-references)\n\n##### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n\t
\n \t \n
\n\n##### 纯数字输入框\n\n使用 type=\"tel\" 而不是 type=\"number\"\n\t\n\t \n\n##### 代码嵌套\n\n元素嵌套规范,每个块状元素独立一行,内联元素可选\n\n*推荐:*\n\n\t
\n \t

\n \t

\n\t
\t\n\t

\n\t\n*不推荐:*\n\n\t
\n \t

\n\t
\t\n\t

\n\t\t\n\t\t\n\t

\n\t\n段落元素与标题元素只能嵌套内联元素\n\n*推荐:*\n\t\n\t

\n\t

\n\t\n*不推荐:*\n\n\t

\n\t

\n\t\t\t\t\n###注释规范\n\nHTML注释规范写法应该遵循以下标准:\n\n> Comments must start with the four character sequence U+003C LESS-THAN SIGN, U+0021 EXCLAMATION MARK, U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS (<!--). Following this sequence, the comment may have text, with the additional restriction that the text must not start with a single \">\" (U+003E) character, nor start with a U+002D HYPHEN-MINUS character (-) followed by a \">\" (U+003E) character, nor contain two consecutive U+002D HYPHEN-MINUS characters (--), nor end with a U+002D HYPHEN-MINUS character (-). Finally, the comment must be ended by the three character sequence U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN (-->).\n\n* 必须以4个有序字符开始:编码为 U+003C LESS-THAN SIGN 的小于号, 编码为 U+0021 EXCLAMATION MARK 的感叹号, 编码为 U+002D HYPHEN-MINUS 横线, 编码为 U+002D HYPHEN-MINUS横线 ,即 “<!--”\n* 在此之后是注释内容,注释的内容有以下限制:\n\t* 不能以单个 \">\" (U+003E) 字符开始\n\t* 不能以由 “-“(U+002D HYPHEN-MINUS)和 ”>” (U+003E) 组合的字符开始,即 “->”\n\t* 不能包含两个连续的 U+002D HYPHEN-MINUS 字符,即 “--”\n\t* 不能以一个 U+002D HYPHEN-MINUS 字符结束,即 “-”\n* 必须以3个有序字符结束:U+002D HYPHEN-MINUS, U+002D HYPHEN-MINUS, U+003E GREATER-THAN SIGN,即 “-->”\n\n标准写法:\n\n\t\n\t\n错误的写法:\n\n\tThe Wrong Comment Text-->\n\n\tThe Wrong Comment Text-->\n\n\t\n\n\t\n\t\n参考 www.w3.org [#Comments](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#comments) \n\n\n\t\n#### 团队约定\n\n##### 单行注释 \n\n一般用于简单的描述,如某些状态描述、属性描述等\n\n注释内容前后各一个空格字符,注释位于要注释代码的上面,单独占一行\n\n*推荐:*\n\n\t\n\t
...
\n\t\n*不推荐:*\n\t\n\t
...
\t\n\t\n\t
\n\t...\n\t
\n\n##### 模块注释\n\n一般用于描述模块的名称以及模块开始与结束的位置\n\n注释内容前后各一个空格字符,`` 表示模块开始,`` 表示模块结束,模块与模块之间相隔一行\n\n*推荐写法:*\n\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n*不推荐写法:*\n\n\t\n\t
\n\t\t...\n\t
\n\t\n\t\t\n\t
\n\t\t...\n\t
\n\t\n\t\n##### 嵌套模块注释\n\n当模块注释内再出现模块注释的时候,为了突出主要模块,嵌套模块不再使用 \n\n\t\n\t\n\t\n而改用 \n\n\t\n\n注释写在模块结尾标签底部,单独一行。\n\n\t\n\t
\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t\t
\n\t\t\t...\n\t\t
\n\t\t\n\t\t\t\n\t
\n\t\n\n### WebApp Meta 标签设置(iOS)\n\n> A web application is designed to look and behave in a way similar to a native application—for example, it is scaled to fit the entire screen on iOS. You can tailor your web application for Safari on iOS even further, by making it appear like a native application when the user adds it to the Home screen. You do this by using settings for iOS that are ignored by other platforms.\n\nWebApp目的在于使其界面和行为在某种程度上类似于原生APP应用。例如,WebApp 可以在 iOS 设备上通过缩放去适配设备屏幕。当用户将WebApp程序添加到主屏幕后,会使得它看上去像原生APP一样,以此,你可以进一步为 Safari 定制自己的 WebApp,而使用某些专为 iOS 平台设定的设置就可以做到。\n\nWebApp可以通过设置 meta 标签来改变页面的一些表现,有些 meta 设置在 Safari 应用或原生 App 的内嵌网页中都可以生效,而有些设置侧需要将应用添加到主屏幕的时候才会生效。\n\n\n#### Viewport Meta Tag\n\n通用类设置:\n\n\t\n\t\n* width -- viewport的宽度\n* height -- viewport的高度\n* initial-scale -- 初始的缩放比例\n* minimum-scale -- 允许用户缩放到的最小比例\n* maximum-scale -- 允许用户缩放到的最大比例\n* user-scalable -- 是否允许用户缩放\n\n其中 Safari on iOS viewport:\n\n> The width of the viewport in pixels. The default is 980. The range is from 200 to 10,000.\n> \n> The minimum-scale and maximum-scale properties also affect the behavior when changing orientations. The range of these property values is from >0 to 10.0. The default value for minimum-scale is 0.25 and maximum-scale is 5.0\n\n> user-scalable -- The default is yes.\nSetting user-scalable to no also prevents a webpage from scrolling when entering text in an input field.\n\n\n* 默认宽度是 980px,范围从 200px 到 10000px\n* initial-scale 缩放比例范围值是 从 >0 到 10 之间\n* minimum-scale 默认值是 0.25\n* maximum-scale 默认值是 5\n* user-scalable -- 默认值是 yes,设置 no 还可以在文本框输入文本的时候阻止页面滚动\n\n\t\n更多关于 Safari on iOS viewport 的设置:\n\n[Configuring the Viewport](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html#//apple_ref/doc/uid/TP40006509-SW19)\n\n[Safari HTML Reference](https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html)\n\n\n\n#### Apple-Specific Meta Tag Keys\n\n##### apple-mobile-web-app-capable\n\n设置 WebApp 是否进入全屏模式,该设置需要添加到主屏幕才生效\n\n\t\n\t\t\n> If content is set to yes, the web application runs in full-screen mode;otherwise, it does not. The default behavior is to use Safari to display web content.You can determine whether a webpage is displayed in full-screen mode using the window.navigator.standalone read-only Boolean JavaScript property.\n\n* content设置 yes 进入全屏模式\n* 默认会启动 Safari 应用,使用 Safari 应用浏览\n* 通过检测 window.navigator.standalone 的 Boolean 值可以判断 web 应用是否处于全屏模式\n\n##### apple-mobile-web-app-status-bar-style\n\n为 webapp 设置状态栏样式\n\n\t\n\t\n> This meta tag has no effect unless you first specify full-screen mode as described in apple-apple-mobile-web-app-capable.\n> \nIf content is set to default, the status bar appears normal. If set to black, the status bar has a black background. If set to black-translucent, the status bar is black and translucent. If set to default or black, the web content is displayed below the status bar. If set to black-translucent, the web content is displayed on the entire screen, partially obscured by the status bar. The default value is default.\n\n* 此 meta 设置只在全屏模式生效\n* 默认值是 default\n* content=\"black\",状态栏背景黑色,网页内容在状态栏下面\n* content=\"black-translucent\",状态栏半透明,背景黑色,网页内容占满全屏\n\n*该设置在 iOS6 和 iOS7 表现还可以,但到了 iOS8 后会出现各种问题,而且在 iOS9 中并没有生效。参阅:[iOS 8: web app status bar position and resizing problems](http://stackoverflow.com/questions/25884806/ios-8-web-app-status-bar-position-and-resizing-problems)*\n\n##### format-detection\n\n自动识别页面中有可能是电话格式的数字 \n\n\t\n\t\n> By default, Safari on iOS detects any string formatted like a phone number and makes it a link that calls the number. Specifying telephone=no disables this feature.\n\niOS中的 Safari 会默认识别与电话格式相似的数字并生成一个可以拉起电话应用并将该数字作为电话号码拨打的链接。定义 telephone=no 可以屏蔽该功能\n\n更多 WebApp 设置参考 [Configuring Web Applications](https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html#//apple_ref/doc/uid/TP40002051-CH3-SW4)\n\n###HTML模版\n\nHTML模版指的是团队使用的初始化HTML文件,里面会根据不同平台而采用不一样的设置,一般主要不同的设置就是 mata 标签的设置,以下是 PC 和移动端的 HTML 模版\n\n#### HTML5最简结构标准模版:\n\n\t\n\t\n\t\n\t\n\tHTML5最简结构标准模版\n\t \n\t\n\t\n\t\n\t \n\t\n#### 团队约定的HTML模版\n\n##### 移动端\n\n\t\n\t\n\t\n\t\n\t\n\t\n\t移动端HTML模版\n \t\n \t\n \t\n \t \n\n \t\n\t\n\t\n\n\t \n\t\n\t\n\n\t\n\t\n\t\n \n\t \n\t\n\t\n\t\n\t\n\t\t\n##### PC端\n\n\t\n\t\n\t\n\t\n \n \n \n \n \n \n\tPC端HTML模版\n \n \n \n \n\n\t\n\t\n\t\n\n\t \n\t\n\t\n\n\t\n\t\n\t\n \n\t \n\t\n\t\n\t\n\t","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/html/jdc_fd_web_final_2.html","title":"","comments":1,"layout":"page","_id":"ciitvml47000i2ufyb7xab264"},{"title":"代码规范","_content":"\n## DOCTYPE 声明\n\n一个DOCTYPE必须包含以下部分,并严格按照顺序出现:\n\n> 1. A string that is an ASCII case-insensitive match for the string \" 2. One or more space characters.\n> 3. A string that is an ASCII case-insensitive match for the string \"html\".\n> 4. Optionally, a DOCTYPE legacy string or an obsolete permitted DOCTYPE string (defined below).\n> 5. Zero or more space characters.\n> 6. A \">\" (U+003E) character.\n\n1. 一个ASCII字符串 \"\n```\n\n### 更多关于 DOCTYPE声明\n[#The DOCTYPE](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#the-doctype)\n\n\n## 页面语言LANG\n\nLang属性的取值应该遵循互联网工程任务组--IETF(The Internet Engineering Task Force)制定的关于语言标签的文档 [BCP 47 - Tags for Identifying Languages](http://tools.ietf.org/html/bcp47)\n\n### 团队约定\n\n推荐使用属性值 `cmn-Hans-CN`(简体, 中国大陆),但是考虑浏览器和操作系统的兼容性,目前仍然使用 `zh-CN` 属性值\n```html\n\t\n```\n更多地区语言参考:\n\n\tzh-SG 中文 (简体, 新加坡) 对应 cmn-Hans-SG 普通话 (简体, 新加坡)\n\tzh-HK 中文 (繁体, 香港) 对应 cmn-Hant-HK 普通话 (繁体, 香港)\n\tzh-MO 中文 (繁体, 澳门) 对应 cmn-Hant-MO 普通话 (繁体, 澳门)\n\tzh-TW 中文 (繁体, 台湾) 对应 cmn-Hant-TW 普通话 (繁体, 台湾)\n\t\n\t\n#### 已废弃不推荐使用的 Languages Tags\n\n以下写法已于 2009 年废弃,请勿使用(cmn、wuu、yue、gan 等已由 2005 年的 extlang 升级到 2009 年的 language):\n\n\tzh-cmn, zh-cmn-Hans, zh-cmn-Hant, zh-wuu, zh-yue, zh-gan\n\t\n以下写法已于 2009 年废弃,不推荐使用:\n\n\tzh-Hans, zh-Hans-CN, zh-Hans-SG, zh-Hans-HK, zh-Hans-MO, zh-Hans-TW, \n\tzh-Hant, zh-Hant-CN, zh-Hant-SG, zh-Hant-HK, zh-Hant-MO, zh-Hant-TW\n\n更多已废弃 Languages Tags 参考 [IANA Language Subtag Registry](http://www.iana.org/assignments/language-subtag-registry/language-subtag-registry) 里面的 “Type: redundant“”\n\n#### 更多关于 Languages Tags :\n\n[W3C Language tags in HTML and XML](http://www.w3.org/International/articles/language-tags/)\n\n\n[网页头部的声明应该是用 lang=\"zh\" 还是 lang=\"zh-cn\"?](http://www.zhihu.com/question/20797118?utm_source=weibo&utm_medium=weibo_share&utm_content=share_question&utm_campaign=share_sidebar)\n\n\n\n## CHARSET\n\n> Because the character sets in ISO-8859 was limited in size, and not compatible in multilingual environments, the Unicode Consortium developed the Unicode Standard.\n> \n> The Unicode Standard covers (almost) all the characters, punctuations, and symbols in the world.\n> \n> Unicode enables processing, storage, and transport of text independent of platform and language.\n> \n> The default character encoding in HTML-5 is UTF-8.\n\n因为 ISO-8859 中字符集大小是有限的,且在多语言环境中不兼容,所以 Unicode 联盟开发了 Unicode 标准。\n\nUnicode 标准覆盖了(几乎)所有的字符、标点符号和符号。\n\nUnicode 使文本的处理、存储和运输,独立于平台和语言。\n\nHTML-5 中默认的字符编码是 UTF-8\n\n参阅 [HTML Unicode (UTF-8) Reference](http://www.w3schools.com/charsets/ref_html_utf8.asp)\n\n### 团队约定\n\n一般情况下统一使用 “UTF-8” 编码\n```html\n\t\n```\n\n由于历史原因,有些业务可能会使用 “GBK” 编码\n\n```html\t\n\t\n```\n\n请尽量统一写成标准的 “UTF-8”,不要写成 “utf-8” 或 “utf8” 或 “UTF8”。根据 [IETF对UTF-8的定义](http://www.ietf.org/rfc/rfc3629),其编码标准的写法是 “UTF-8”;而 UTF8 或 utf8 的写法只是出现在某些编程系统中,如 .NET framework 的类 System.Text.Encoding 中的一个属性名就叫 UTF8。\n\n#### 更多关于 \n\nUTF-8写法: [UTF8 or UTF-8?](http://stackoverflow.com/questions/809620/utf8-or-utf-8) \n\nGBK:[Application of IANA Charset Registration for GBK](http://www.ietf.org/assignments/charset-reg/GBK)\n\nCharset :[character-encoding-declaration](http://www.w3.org/TR/html5/document-metadata.html#character-encoding-declaration) \n\n\n## 元素及标签闭合\n\nHTML元素共有以下5种:\n \n* 空元素:area、base、br、col、command、embed、hr、img、input、keygen、link、meta、param、source、track、wbr\n* 原始文本元素:script、style\n* RCDATA元素:textarea、title\n* 外来元素:来自MathML命名空间和SVG命名空间的元素。\n* 常规元素:其他HTML允许的元素都称为常规元素。\n\n元素标签的闭合应遵循以下原则:\n\n> Tags are used to delimit the start and end of elements in the markup. Raw text, escapable raw text, and normal elements have a start tag to indicate where they begin, and an end tag to indicate where they end. The start and end tags of certain normal elements can be omitted, as described below in the section on optional tags. Those that cannot be omitted must not be omitted. Void elements only have a start tag; end tags must not be specified for void elements. Foreign elements must either have a start tag and an end tag, or a start tag that is marked as self-closing, in which case they must not have an end tag.\n\n* 原始文本元素、RCDATA元素以及常规元素都有一个开始标签来表示开始,一个结束标签来表示结束。\n* [某些元素的开始和结束标签是可以省略的](http://www.w3.org/TR/html5/syntax.html#optional-tags),如果规定标签不能被省略,那么就绝对不能省略它。\n* 空元素只有一个开始标签,且不能为空元素设置结束标签。\n* 外来元素可以有一个开始标签和配对的结束标签,或者只有一个自闭合的开始标签,且后者情况下该元素不能有结束标签。\n\n### 团队约定\n\n为了能让浏览器更好的解析代码以及能让代码具有更好的可读性,有如下约定:\n\n* 所有具有开始标签和结束标签的元素都要写上起止标签,某些允许省略开始标签或和束标签的元素亦都要写上。\n* 空元素标签都不加 “/” 字符\n\n\n*推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始有终,浏览器能正确解析

\n\t
\n\t\n\t
\n\t\n*不推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始无终,浏览器亦能正确解析\n\t

\n\n\t
\n\n更多关于元素及标签关闭:[#Elements](http://www.w3.org/TR/html5/syntax.html#elements-0)\n\n## 书写风格\n\n### HTML代码大小写\n\nHTML标签名、类名、标签属性和大部分属性值统一用小写\n\n*推荐:*\n\n\t
\n\n*不推荐:*\n\n\t
\n\t\n\t
\n\nHTML文本、CDATA、JavaScript、meta标签某些属性等内容可大小写混合\n\t\n\t\n \n\n\t\n\t

I AM WHAT I AM

\n\n\t\n\t\n\t\n\t\n\t\n\t\n### 类型属性\n\n不需要为 CSS、JS 指定类型属性,HTML5 中默认已包含\n\n*推荐:*\n\n\t\n\t\n\t\n*不推荐:*\n\n\t\n\t\n\t\n### 元素属性\n\n* 元素属性值使用双引号语法\n* 元素属性值可以写上的都写上\n\n\n*推荐:*\n\n\t\n\t\n\t\n\t\n*不推荐:*\n\n\t\t\n\t\n\t\n\t\n\t\n\t\n更多关于元素属性:[#Attributes](http://www.w3.org/TR/html5/syntax.html#attributes-0)\n\n### 特殊字符引用\n\n> In certain cases described in other sections, text may be mixed with character references. These can be used to escape characters that couldn't otherwise legally be included in text.\n\n文本可以和字符引用混合出现。这种方法可以用来转义在文本中不能合法出现的字符。\n\n\n在 HTML 中不能使用小于号 “<” 和大于号 “>”特殊字符,浏览器会将它们作为标签解析,若要正确显示,在 HTML 源代码中使用字符实体\n\n*推荐:*\n```html\nmore>>\n```\n\n*不推荐:*\n```html\nmore>>\n```\n更多关于符号引用:[#Character references](http://www.w3.org/TR/html5/syntax.html#character-references)\n\n### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n```html\n
\n \n
\n```\n\n### 纯数字输入框\n\n使用 type=\"tel\" 而不是 type=\"number\"\n```html\n \n```\n### 代码嵌套\n\n元素嵌套规范,每个块状元素独立一行,内联元素可选\n\n*推荐:*\n\n```html\n
\n

\n

\n
\t\n

\n```\n\n*不推荐:*\n```html\n
\n

\n
\t\n

\n \n \n

\n```\n段落元素与标题元素只能嵌套内联元素\n\n*推荐:*\n```html\n

\n

\n```\n\n*不推荐:*\n```html\n

\n

\n```","source":"docs/html/code.md","raw":"title: 代码规范\n---\n\n## DOCTYPE 声明\n\n一个DOCTYPE必须包含以下部分,并严格按照顺序出现:\n\n> 1. A string that is an ASCII case-insensitive match for the string \" 2. One or more space characters.\n> 3. A string that is an ASCII case-insensitive match for the string \"html\".\n> 4. Optionally, a DOCTYPE legacy string or an obsolete permitted DOCTYPE string (defined below).\n> 5. Zero or more space characters.\n> 6. A \">\" (U+003E) character.\n\n1. 一个ASCII字符串 \"\n```\n\n### 更多关于 DOCTYPE声明\n[#The DOCTYPE](http://www.w3.org/TR/2014/REC-html5-20141028/syntax.html#the-doctype)\n\n\n## 页面语言LANG\n\nLang属性的取值应该遵循互联网工程任务组--IETF(The Internet Engineering Task Force)制定的关于语言标签的文档 [BCP 47 - Tags for Identifying Languages](http://tools.ietf.org/html/bcp47)\n\n### 团队约定\n\n推荐使用属性值 `cmn-Hans-CN`(简体, 中国大陆),但是考虑浏览器和操作系统的兼容性,目前仍然使用 `zh-CN` 属性值\n```html\n\t\n```\n更多地区语言参考:\n\n\tzh-SG 中文 (简体, 新加坡) 对应 cmn-Hans-SG 普通话 (简体, 新加坡)\n\tzh-HK 中文 (繁体, 香港) 对应 cmn-Hant-HK 普通话 (繁体, 香港)\n\tzh-MO 中文 (繁体, 澳门) 对应 cmn-Hant-MO 普通话 (繁体, 澳门)\n\tzh-TW 中文 (繁体, 台湾) 对应 cmn-Hant-TW 普通话 (繁体, 台湾)\n\t\n\t\n#### 已废弃不推荐使用的 Languages Tags\n\n以下写法已于 2009 年废弃,请勿使用(cmn、wuu、yue、gan 等已由 2005 年的 extlang 升级到 2009 年的 language):\n\n\tzh-cmn, zh-cmn-Hans, zh-cmn-Hant, zh-wuu, zh-yue, zh-gan\n\t\n以下写法已于 2009 年废弃,不推荐使用:\n\n\tzh-Hans, zh-Hans-CN, zh-Hans-SG, zh-Hans-HK, zh-Hans-MO, zh-Hans-TW, \n\tzh-Hant, zh-Hant-CN, zh-Hant-SG, zh-Hant-HK, zh-Hant-MO, zh-Hant-TW\n\n更多已废弃 Languages Tags 参考 [IANA Language Subtag Registry](http://www.iana.org/assignments/language-subtag-registry/language-subtag-registry) 里面的 “Type: redundant“”\n\n#### 更多关于 Languages Tags :\n\n[W3C Language tags in HTML and XML](http://www.w3.org/International/articles/language-tags/)\n\n\n[网页头部的声明应该是用 lang=\"zh\" 还是 lang=\"zh-cn\"?](http://www.zhihu.com/question/20797118?utm_source=weibo&utm_medium=weibo_share&utm_content=share_question&utm_campaign=share_sidebar)\n\n\n\n## CHARSET\n\n> Because the character sets in ISO-8859 was limited in size, and not compatible in multilingual environments, the Unicode Consortium developed the Unicode Standard.\n> \n> The Unicode Standard covers (almost) all the characters, punctuations, and symbols in the world.\n> \n> Unicode enables processing, storage, and transport of text independent of platform and language.\n> \n> The default character encoding in HTML-5 is UTF-8.\n\n因为 ISO-8859 中字符集大小是有限的,且在多语言环境中不兼容,所以 Unicode 联盟开发了 Unicode 标准。\n\nUnicode 标准覆盖了(几乎)所有的字符、标点符号和符号。\n\nUnicode 使文本的处理、存储和运输,独立于平台和语言。\n\nHTML-5 中默认的字符编码是 UTF-8\n\n参阅 [HTML Unicode (UTF-8) Reference](http://www.w3schools.com/charsets/ref_html_utf8.asp)\n\n### 团队约定\n\n一般情况下统一使用 “UTF-8” 编码\n```html\n\t\n```\n\n由于历史原因,有些业务可能会使用 “GBK” 编码\n\n```html\t\n\t\n```\n\n请尽量统一写成标准的 “UTF-8”,不要写成 “utf-8” 或 “utf8” 或 “UTF8”。根据 [IETF对UTF-8的定义](http://www.ietf.org/rfc/rfc3629),其编码标准的写法是 “UTF-8”;而 UTF8 或 utf8 的写法只是出现在某些编程系统中,如 .NET framework 的类 System.Text.Encoding 中的一个属性名就叫 UTF8。\n\n#### 更多关于 \n\nUTF-8写法: [UTF8 or UTF-8?](http://stackoverflow.com/questions/809620/utf8-or-utf-8) \n\nGBK:[Application of IANA Charset Registration for GBK](http://www.ietf.org/assignments/charset-reg/GBK)\n\nCharset :[character-encoding-declaration](http://www.w3.org/TR/html5/document-metadata.html#character-encoding-declaration) \n\n\n## 元素及标签闭合\n\nHTML元素共有以下5种:\n \n* 空元素:area、base、br、col、command、embed、hr、img、input、keygen、link、meta、param、source、track、wbr\n* 原始文本元素:script、style\n* RCDATA元素:textarea、title\n* 外来元素:来自MathML命名空间和SVG命名空间的元素。\n* 常规元素:其他HTML允许的元素都称为常规元素。\n\n元素标签的闭合应遵循以下原则:\n\n> Tags are used to delimit the start and end of elements in the markup. Raw text, escapable raw text, and normal elements have a start tag to indicate where they begin, and an end tag to indicate where they end. The start and end tags of certain normal elements can be omitted, as described below in the section on optional tags. Those that cannot be omitted must not be omitted. Void elements only have a start tag; end tags must not be specified for void elements. Foreign elements must either have a start tag and an end tag, or a start tag that is marked as self-closing, in which case they must not have an end tag.\n\n* 原始文本元素、RCDATA元素以及常规元素都有一个开始标签来表示开始,一个结束标签来表示结束。\n* [某些元素的开始和结束标签是可以省略的](http://www.w3.org/TR/html5/syntax.html#optional-tags),如果规定标签不能被省略,那么就绝对不能省略它。\n* 空元素只有一个开始标签,且不能为空元素设置结束标签。\n* 外来元素可以有一个开始标签和配对的结束标签,或者只有一个自闭合的开始标签,且后者情况下该元素不能有结束标签。\n\n### 团队约定\n\n为了能让浏览器更好的解析代码以及能让代码具有更好的可读性,有如下约定:\n\n* 所有具有开始标签和结束标签的元素都要写上起止标签,某些允许省略开始标签或和束标签的元素亦都要写上。\n* 空元素标签都不加 “/” 字符\n\n\n*推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始有终,浏览器能正确解析

\n\t
\n\t\n\t
\n\t\n*不推荐:*\n\n\t
\n\t\t

我是h1标题

\n\t\t

我是一段文字,我有始无终,浏览器亦能正确解析\n\t

\n\n\t
\n\n更多关于元素及标签关闭:[#Elements](http://www.w3.org/TR/html5/syntax.html#elements-0)\n\n## 书写风格\n\n### HTML代码大小写\n\nHTML标签名、类名、标签属性和大部分属性值统一用小写\n\n*推荐:*\n\n\t
\n\n*不推荐:*\n\n\t
\n\t\n\t
\n\nHTML文本、CDATA、JavaScript、meta标签某些属性等内容可大小写混合\n\t\n\t\n \n\n\t\n\t

I AM WHAT I AM

\n\n\t\n\t\n\t\n\t\n\t\n\t\n### 类型属性\n\n不需要为 CSS、JS 指定类型属性,HTML5 中默认已包含\n\n*推荐:*\n\n\t\n\t\n\t\n*不推荐:*\n\n\t\n\t\n\t\n### 元素属性\n\n* 元素属性值使用双引号语法\n* 元素属性值可以写上的都写上\n\n\n*推荐:*\n\n\t\n\t\n\t\n\t\n*不推荐:*\n\n\t\t\n\t\n\t\n\t\n\t\n\t\n更多关于元素属性:[#Attributes](http://www.w3.org/TR/html5/syntax.html#attributes-0)\n\n### 特殊字符引用\n\n> In certain cases described in other sections, text may be mixed with character references. These can be used to escape characters that couldn't otherwise legally be included in text.\n\n文本可以和字符引用混合出现。这种方法可以用来转义在文本中不能合法出现的字符。\n\n\n在 HTML 中不能使用小于号 “<” 和大于号 “>”特殊字符,浏览器会将它们作为标签解析,若要正确显示,在 HTML 源代码中使用字符实体\n\n*推荐:*\n```html\nmore>>\n```\n\n*不推荐:*\n```html\nmore>>\n```\n更多关于符号引用:[#Character references](http://www.w3.org/TR/html5/syntax.html#character-references)\n\n### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n```html\n
\n \n
\n```\n\n### 纯数字输入框\n\n使用 type=\"tel\" 而不是 type=\"number\"\n```html\n \n```\n### 代码嵌套\n\n元素嵌套规范,每个块状元素独立一行,内联元素可选\n\n*推荐:*\n\n```html\n
\n

\n

\n
\t\n

\n```\n\n*不推荐:*\n```html\n
\n

\n
\t\n

\n \n \n

\n```\n段落元素与标题元素只能嵌套内联元素\n\n*推荐:*\n```html\n

\n

\n```\n\n*不推荐:*\n```html\n

\n

\n```","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/html/code.html","comments":1,"layout":"page","_id":"ciitvml48000j2ufy9qq19kzi"},{"title":"Webkit属性","_content":"\n待补充","source":"docs/css/webkit.md","raw":"title: Webkit属性\n---\n\n待补充","date":"2015-12-17T06:26:48.000Z","updated":"2015-12-17T06:26:48.000Z","path":"docs/css/webkit.html","comments":1,"layout":"page","_id":"ciitvml4a000k2ufyh0cn1eq3"},{"title":"SASS规范","_content":"\n## 语法选用\n\nSASS有两种语法格式,一种是 SCSS (Sassy CSS),另一种是缩进格式(Indented Syntax),有时称之为 Sass。\n\n### SCSS\n\nSCSS语法基于 CSS 语法扩展,每一个有效的 CSS 文件都是一个有效的具有相同含义的 SCSS 文件,换种说法就是 SCSS 能识别大多数的 CSS hacks 写法和浏览器前缀写法以及早期的 IE 滤镜写法,这种格式以 .scss 作为扩展名。\n\n### Sass\n\nSass 使用 “缩进” 代替 “花括号” 表示属性属于某个选择器,用 “换行” 代替 “分号” 分隔属性,很多人认为这样做比 SCSS 更容易阅读,书写也更快速。缩进格式也可以使用 Sass 的全部功能,只是与 SCSS 相比个别地方采取了不同的表达方式,具体请查看 [the indented syntax reference](http://sass-lang.com/documentation/file.INDENTED_SYNTAX.html)。这种格式以 .sass 作为拓展名。\n\n更详细的用法请阅读 SASS 官网文档:[DOCUMENTATION](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n### 团队约定\n\n考虑到 SCSS 语法对 CSS 语法友好的兼容性和扩展性,我们在使用 SASS 编写样式的时候,统一使用 SCSS 语法\n\n## 编码格式\n\n> When running on Ruby 1.9 and later, Sass is aware of the character encoding of documents. Sass follows the CSS spec to determine the encoding of a stylesheet, and falls back to the Ruby string encoding. This means that it first checks the Unicode byte order mark, then the @charset declaration, then the Ruby string encoding. If none of these are set, it will assume the document is in UTF-8.\n\n当在 Ruby1.9或更新的版本运行的时候,SASS 能识辨文档的字符编码。SASS 遵循 CSS 规范去确定样式文件的编码,进而转回 Ruby 字符串编码。这意味着SASS编译的时候会首先检测 BOM,然后到 @charset 声明,再到 Ruby 字符串编码,如果以上都没有设置,SASS 会假定文档的编码为 UTF-8\n\n### 团队约定\n\n严格遵守上面 “代码规范” 中的 “编码规范”\n\n更多关于 SASS 编码:[SASS Encodings](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n## SASS注释规范\n\nSASS支持 CSS 标准的多行注释 `/* */`,同时也支持单行注释 `//`。\n\n* 多行注释在使用非 Compressed 模式进行编译后的输出文件中会保留下来,单行注释 `//` 侧会被移除\n* 多行注释和单行注释在 SASS 编译后输出的压缩 CSS 文件都会被移除\n* 当多行注释内容第一个字符是感叹号 “!” 的时候,即 `/*! */`,SASS 无论用哪一种编译方式编译注释都会保留\n* 注释内容可以加入 SASS 变量\n\n### 团队约定\n\nSCSS 文件内\n\n* 全部遵循 CSS 注释规范\n* 不使用 `/*! */` 注释方式\n* 注释内不放 SASS 变量\n\n标准的注释规范如下:\n\n```css\n@charset \"UTF-8\";\n\n/**\n * @desc File Info\n * @author liqinuo\n * @date 2015-10-10\n */\n\n/* Module A\n----------------------------------------------------------------*/\n.mod_a {}\n\n/* module A logo */\n.mod_a_logo {}\n\n/* module A nav */\n.mod_a_nav {}\n\n/* Module B\n----------------------------------------------------------------*/\n.mod_b {}\n\n/* module B logo */\n.mod_b_logo {}\n\n/* module B nav */\n.mod_b_nav {}\n```\n\n## 嵌套规范\n\n### 选择器嵌套\n\n``` css\n// CSS\n.jdc {}\nbody .jdc {}\n\n// SCSS\n.jdc {\n body & {}\n}\n```\n\n``` css\n// CSS\n.jdc {}\n.jdc_cover {}\n.jdc_info {}\n.jdc_info_name {}\n\n// SCSS\n.jdc {\n &_cover {}\n &_info {\n &_name {}\n }\n}\n```\n### 属性嵌套\n\n```css\n// CSS\n.jdc {\n background-color: red;\n background-repeat: no-repeat;\n background-image: url(/img/icon.png);\n background-position: 0 0;\n}\n\n// SCSS\n.jdc {\n background: {\n color: red;\n repeat: no-repeat;\n image: url(/img/icon.png);\n position: 0 0;\n }\n}\n```\n\n## 变量\n\n可复用属性尽量抽离为页面变量,易于统一维护\n\n```\n// CSS\n.jdc {\n color: red;\n border-color: red;\n}\n\n// SCSS\n$color: red;\n.jdc {\n color: $color;\n border-color: $color;\n}\n```\n\n## 混合(mixin)\n\n根据功能定义模块,然后在需要使用的地方通过 `@include` 调用,避免编码时重复输入代码段\n\n // CSS\n .jdc_1 {\n -webkit-border-radius: 5px;\n border-radius: 5px;\n }\n .jdc_2 {\n -webkit-border-radius: 10px;\n border-radius: 10px;\n }\n\n // SCSS\n @mixin radius($radius:5px) {\n -webkit-border-radius: $radius;\n border-radius: $radius;\n }\n .jdc_1 {\n @include radius; //参数使用默认值\n }\n .jdc_2 {\n @include radius(10px);\n }\n\n\n\n // CSS\n .jdc_1 {\n background: url(/img/icon.png) no-repeat -10px 0;\n }\n .jdc_2 {\n background: url(/img/icon.png) no-repeat -20px 0;\n }\n\n // SCSS\n @mixin icon($x:0, $y:0) {\n background: url(/img/icon.png) no-repeat $x, $y;\n }\n .jdc_1 {\n @include icon(-10px, 0);\n }\n .jdc_2 {\n @include icon(-20px, 0);\n }\n\n\n## 占位选择器 %\n\n如果不调用则不会有任何多余的 css 文件,占位选择器以 `%` 标识定义,通过 `@extend` 调用\n\n\n //scss\n %borderbox {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n }\n .jdc {\n @extend %borderbox;\n }\n\n\n## @extend 继承\n\n\n // CSS\n .jdc_1 {\n font-size: 12px;\n color: red;\n }\n .jdc_2 {\n font-size: 12px;\n color: red;\n font-weight: bold;\n }\n\n // SCSS\n .jdc_1 {\n font-size: 12px;\n color: red;\n }\n .jdc_2 {\n @extend .jdc_1;\n font-weight: bold;\n }\n\n // 或者\n %font_red {\n font-size: 12px;\n color: red;\n }\n .jdc_1 {\n @extend %font_red;\n }\n .jdc_2 {\n @extend %font_red;\n font-weight: bold;\n }\n\n\n#### @for 循环\n\n // CSS\n .jdc_1 {background-position: 0 -20px;}\n .jdc_2 {background-position: 0 -40px;}\n .jdc_3 {background-position: 0 -60px;}\n\n // SCSS\n @for $i from 1 through 3 {\n .jdc_#{$i} {\n background-position: 0 (-20px) * $i;\n }\n }\n\n注意:`#{}` 是连接符,变量连接使用时需要依赖\n\n#### @each 循环\n\n // CSS\n .jdc_list {\n background-image: url(/img/jdc_list.png);\n }\n .jdc_detail {\n background-image: url(/img/jdc_detail.png);\n }\n\n // SCSS\n @each $name in list, detail {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n }\n }\n\n\n // CSS\n .jdc_list {\n background-image: url(/img/jdc_list.png);\n background-color: red;\n }\n .jdc_detail {\n background-image: url(/img/jdc_detail.png);\n background-color: blue;\n }\n\n // SCSS\n @each $name, $color in (list, red), (detail, blue) {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n background-color: $color;\n }\n }\n\n\n#### @function 函数\n\n @function pxToRem($px) {\n @return $px / 10px * 1rem;\n }\n .jdc {\n font-size: pxToRem(12px);\n }\n\n\n#### 运算规范\n\n运算符之间空出一个空格\n\n .jdc {\n width: 100px - 50px;\n height: 30px / 5;\n }\n\n注意运算单位,单位同时参与运算,所以 10px 不等于 10,乘除运算时需要特别注意\n\n // 正确的运算格式\n .jdc {\n width: 100px - 50px;\n width: 100px + 50px;\n width: 100px * 2;\n width: 100px / 2;\n }\n\n\n\n\n","source":"docs/css/sass.md","raw":"title: SASS规范\n---\n\n## 语法选用\n\nSASS有两种语法格式,一种是 SCSS (Sassy CSS),另一种是缩进格式(Indented Syntax),有时称之为 Sass。\n\n### SCSS\n\nSCSS语法基于 CSS 语法扩展,每一个有效的 CSS 文件都是一个有效的具有相同含义的 SCSS 文件,换种说法就是 SCSS 能识别大多数的 CSS hacks 写法和浏览器前缀写法以及早期的 IE 滤镜写法,这种格式以 .scss 作为扩展名。\n\n### Sass\n\nSass 使用 “缩进” 代替 “花括号” 表示属性属于某个选择器,用 “换行” 代替 “分号” 分隔属性,很多人认为这样做比 SCSS 更容易阅读,书写也更快速。缩进格式也可以使用 Sass 的全部功能,只是与 SCSS 相比个别地方采取了不同的表达方式,具体请查看 [the indented syntax reference](http://sass-lang.com/documentation/file.INDENTED_SYNTAX.html)。这种格式以 .sass 作为拓展名。\n\n更详细的用法请阅读 SASS 官网文档:[DOCUMENTATION](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n### 团队约定\n\n考虑到 SCSS 语法对 CSS 语法友好的兼容性和扩展性,我们在使用 SASS 编写样式的时候,统一使用 SCSS 语法\n\n## 编码格式\n\n> When running on Ruby 1.9 and later, Sass is aware of the character encoding of documents. Sass follows the CSS spec to determine the encoding of a stylesheet, and falls back to the Ruby string encoding. This means that it first checks the Unicode byte order mark, then the @charset declaration, then the Ruby string encoding. If none of these are set, it will assume the document is in UTF-8.\n\n当在 Ruby1.9或更新的版本运行的时候,SASS 能识辨文档的字符编码。SASS 遵循 CSS 规范去确定样式文件的编码,进而转回 Ruby 字符串编码。这意味着SASS编译的时候会首先检测 BOM,然后到 @charset 声明,再到 Ruby 字符串编码,如果以上都没有设置,SASS 会假定文档的编码为 UTF-8\n\n### 团队约定\n\n严格遵守上面 “代码规范” 中的 “编码规范”\n\n更多关于 SASS 编码:[SASS Encodings](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n## SASS注释规范\n\nSASS支持 CSS 标准的多行注释 `/* */`,同时也支持单行注释 `//`。\n\n* 多行注释在使用非 Compressed 模式进行编译后的输出文件中会保留下来,单行注释 `//` 侧会被移除\n* 多行注释和单行注释在 SASS 编译后输出的压缩 CSS 文件都会被移除\n* 当多行注释内容第一个字符是感叹号 “!” 的时候,即 `/*! */`,SASS 无论用哪一种编译方式编译注释都会保留\n* 注释内容可以加入 SASS 变量\n\n### 团队约定\n\nSCSS 文件内\n\n* 全部遵循 CSS 注释规范\n* 不使用 `/*! */` 注释方式\n* 注释内不放 SASS 变量\n\n标准的注释规范如下:\n\n```css\n@charset \"UTF-8\";\n\n/**\n * @desc File Info\n * @author liqinuo\n * @date 2015-10-10\n */\n\n/* Module A\n----------------------------------------------------------------*/\n.mod_a {}\n\n/* module A logo */\n.mod_a_logo {}\n\n/* module A nav */\n.mod_a_nav {}\n\n/* Module B\n----------------------------------------------------------------*/\n.mod_b {}\n\n/* module B logo */\n.mod_b_logo {}\n\n/* module B nav */\n.mod_b_nav {}\n```\n\n## 嵌套规范\n\n### 选择器嵌套\n\n``` css\n// CSS\n.jdc {}\nbody .jdc {}\n\n// SCSS\n.jdc {\n body & {}\n}\n```\n\n``` css\n// CSS\n.jdc {}\n.jdc_cover {}\n.jdc_info {}\n.jdc_info_name {}\n\n// SCSS\n.jdc {\n &_cover {}\n &_info {\n &_name {}\n }\n}\n```\n### 属性嵌套\n\n```css\n// CSS\n.jdc {\n background-color: red;\n background-repeat: no-repeat;\n background-image: url(/img/icon.png);\n background-position: 0 0;\n}\n\n// SCSS\n.jdc {\n background: {\n color: red;\n repeat: no-repeat;\n image: url(/img/icon.png);\n position: 0 0;\n }\n}\n```\n\n## 变量\n\n可复用属性尽量抽离为页面变量,易于统一维护\n\n```\n// CSS\n.jdc {\n color: red;\n border-color: red;\n}\n\n// SCSS\n$color: red;\n.jdc {\n color: $color;\n border-color: $color;\n}\n```\n\n## 混合(mixin)\n\n根据功能定义模块,然后在需要使用的地方通过 `@include` 调用,避免编码时重复输入代码段\n\n // CSS\n .jdc_1 {\n -webkit-border-radius: 5px;\n border-radius: 5px;\n }\n .jdc_2 {\n -webkit-border-radius: 10px;\n border-radius: 10px;\n }\n\n // SCSS\n @mixin radius($radius:5px) {\n -webkit-border-radius: $radius;\n border-radius: $radius;\n }\n .jdc_1 {\n @include radius; //参数使用默认值\n }\n .jdc_2 {\n @include radius(10px);\n }\n\n\n\n // CSS\n .jdc_1 {\n background: url(/img/icon.png) no-repeat -10px 0;\n }\n .jdc_2 {\n background: url(/img/icon.png) no-repeat -20px 0;\n }\n\n // SCSS\n @mixin icon($x:0, $y:0) {\n background: url(/img/icon.png) no-repeat $x, $y;\n }\n .jdc_1 {\n @include icon(-10px, 0);\n }\n .jdc_2 {\n @include icon(-20px, 0);\n }\n\n\n## 占位选择器 %\n\n如果不调用则不会有任何多余的 css 文件,占位选择器以 `%` 标识定义,通过 `@extend` 调用\n\n\n //scss\n %borderbox {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n }\n .jdc {\n @extend %borderbox;\n }\n\n\n## @extend 继承\n\n\n // CSS\n .jdc_1 {\n font-size: 12px;\n color: red;\n }\n .jdc_2 {\n font-size: 12px;\n color: red;\n font-weight: bold;\n }\n\n // SCSS\n .jdc_1 {\n font-size: 12px;\n color: red;\n }\n .jdc_2 {\n @extend .jdc_1;\n font-weight: bold;\n }\n\n // 或者\n %font_red {\n font-size: 12px;\n color: red;\n }\n .jdc_1 {\n @extend %font_red;\n }\n .jdc_2 {\n @extend %font_red;\n font-weight: bold;\n }\n\n\n#### @for 循环\n\n // CSS\n .jdc_1 {background-position: 0 -20px;}\n .jdc_2 {background-position: 0 -40px;}\n .jdc_3 {background-position: 0 -60px;}\n\n // SCSS\n @for $i from 1 through 3 {\n .jdc_#{$i} {\n background-position: 0 (-20px) * $i;\n }\n }\n\n注意:`#{}` 是连接符,变量连接使用时需要依赖\n\n#### @each 循环\n\n // CSS\n .jdc_list {\n background-image: url(/img/jdc_list.png);\n }\n .jdc_detail {\n background-image: url(/img/jdc_detail.png);\n }\n\n // SCSS\n @each $name in list, detail {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n }\n }\n\n\n // CSS\n .jdc_list {\n background-image: url(/img/jdc_list.png);\n background-color: red;\n }\n .jdc_detail {\n background-image: url(/img/jdc_detail.png);\n background-color: blue;\n }\n\n // SCSS\n @each $name, $color in (list, red), (detail, blue) {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n background-color: $color;\n }\n }\n\n\n#### @function 函数\n\n @function pxToRem($px) {\n @return $px / 10px * 1rem;\n }\n .jdc {\n font-size: pxToRem(12px);\n }\n\n\n#### 运算规范\n\n运算符之间空出一个空格\n\n .jdc {\n width: 100px - 50px;\n height: 30px / 5;\n }\n\n注意运算单位,单位同时参与运算,所以 10px 不等于 10,乘除运算时需要特别注意\n\n // 正确的运算格式\n .jdc {\n width: 100px - 50px;\n width: 100px + 50px;\n width: 100px * 2;\n width: 100px / 2;\n }\n\n\n\n\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/css/sass.html","comments":1,"layout":"page","_id":"ciitvml4b000l2ufysvzb31ba"},{"title":"重置样式","_content":"\n## 移动端\n\n```css\n\n* { -webkit-tap-highlight-color: transparent; outline: 0; margin: 0; padding: 0; vertical-align: baseline; }\nbody, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td { margin: 0; padding: 0; vertical-align: baseline; }\nimg { border: 0 none; vertical-align: top; }\ni, em { font-style: normal; }\nol, ul { list-style: none; }\ninput, select, button, h1, h2, h3, h4, h5, h6 { font-size: 100%; font-family: inherit; }\ntable { border-collapse: collapse; border-spacing: 0; }\na { text-decoration: none; color: #666; }\nbody { margin: 0 auto; min-width: 320px; max-width: 640px; height: 100%; font-size: 14px; font-family: Helvetica, STHeiti STXihei, Microsoft JhengHei, Microsoft YaHei, Arial; line-height: 1.5; color: #666; -webkit-text-size-adjust: 100% !important; text-size-adjust: 100% !important; }\ninput[type=\"text\"], textarea { -webkit-appearance: none; -moz-appearance: none; appearance: none; }\n\n```\n\n## PC端\n\n```css\nhtml, body, div, h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ol, ul, li, fieldset, form, label, input, legend, table, caption, tbody, tfoot, thead, tr, th, td, textarea, article, aside, audio, canvas, figure, footer, header, mark, menu, nav, section, time, video { margin: 0; padding: 0; }\nh1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal }\narticle, aside, dialog, figure, footer, header, hgroup, nav, section, blockquote { display: block; }\nul, ol { list-style: none; }\nimg { border: 0 none; vertical-align: top; }\nblockquote, q { quotes: none; }\nblockquote:before, blockquote:after, q:before, q:after { content: none; }\ntable { border-collapse: collapse; border-spacing: 0; }\nstrong, em, i { font-style: normal; font-weight: normal; }\nins { text-decoration: underline; }\ndel { text-decoration: line-through; }\nmark { background: none; }\ninput::-ms-clear { display: none !important; }\nbody { font: 12px/1.5 \\5FAE\\8F6F\\96C5\\9ED1, \\5B8B\\4F53, \"Hiragino Sans GB\", STHeiti, \"WenQuanYi Micro Hei\", \"Droid Sans Fallback\", SimSun, sans-serif; background: #fff; }\na { text-decoration: none; color: #333; }\na:hover { text-decoration: underline; }\n```\n","source":"docs/css/reset.md","raw":"title: 重置样式\n---\n\n## 移动端\n\n```css\n\n* { -webkit-tap-highlight-color: transparent; outline: 0; margin: 0; padding: 0; vertical-align: baseline; }\nbody, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td { margin: 0; padding: 0; vertical-align: baseline; }\nimg { border: 0 none; vertical-align: top; }\ni, em { font-style: normal; }\nol, ul { list-style: none; }\ninput, select, button, h1, h2, h3, h4, h5, h6 { font-size: 100%; font-family: inherit; }\ntable { border-collapse: collapse; border-spacing: 0; }\na { text-decoration: none; color: #666; }\nbody { margin: 0 auto; min-width: 320px; max-width: 640px; height: 100%; font-size: 14px; font-family: Helvetica, STHeiti STXihei, Microsoft JhengHei, Microsoft YaHei, Arial; line-height: 1.5; color: #666; -webkit-text-size-adjust: 100% !important; text-size-adjust: 100% !important; }\ninput[type=\"text\"], textarea { -webkit-appearance: none; -moz-appearance: none; appearance: none; }\n\n```\n\n## PC端\n\n```css\nhtml, body, div, h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ol, ul, li, fieldset, form, label, input, legend, table, caption, tbody, tfoot, thead, tr, th, td, textarea, article, aside, audio, canvas, figure, footer, header, mark, menu, nav, section, time, video { margin: 0; padding: 0; }\nh1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal }\narticle, aside, dialog, figure, footer, header, hgroup, nav, section, blockquote { display: block; }\nul, ol { list-style: none; }\nimg { border: 0 none; vertical-align: top; }\nblockquote, q { quotes: none; }\nblockquote:before, blockquote:after, q:before, q:after { content: none; }\ntable { border-collapse: collapse; border-spacing: 0; }\nstrong, em, i { font-style: normal; font-weight: normal; }\nins { text-decoration: underline; }\ndel { text-decoration: line-through; }\nmark { background: none; }\ninput::-ms-clear { display: none !important; }\nbody { font: 12px/1.5 \\5FAE\\8F6F\\96C5\\9ED1, \\5B8B\\4F53, \"Hiragino Sans GB\", STHeiti, \"WenQuanYi Micro Hei\", \"Droid Sans Fallback\", SimSun, sans-serif; background: #fff; }\na { text-decoration: none; color: #333; }\na:hover { text-decoration: underline; }\n```\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/css/reset.html","comments":1,"layout":"page","_id":"ciitvml4d000m2ufysblgga2x"},{"title":"媒体查询","_content":"\n设备尺寸参考 :[Mobile devices](http://mydevice.io/devices/)\n\n媒体查询类型浏览器支持情况:[CSS3 Media Queries overview](http://cssmediaqueries.com/overview.html)\n\n## 常用查询语句\n\n判断设备横竖屏\n\n```css\n/* 横屏 */\n@media all and (orientation :landscape) {\n\n} \n\n/* 竖屏 */\n@media all and (orientation :portrait) {\n\n}\n```\n\n判断设备宽高\n\n```css\n/* 设备宽度大于 320px 小于 640px */\n@media all and (min-width:320px) and (max-width:640px) {\n \n} \n```\n\n判断设备像素比\n\n```css\n/* 设备像素比为 1 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1), only screen and (min-device-pixel-ratio: 1) {\n \n}\n\n/* 设备像素比为 1.5 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {\n \n}\n\n/* 设备像素比为 2 */\n@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {\n \n}\n```\n\n## 常用设备设置\n\n### iPhones\n\n```css\n/* ----------- iPhone 4 and 4S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 5 and 5S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 6 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) { \n\n}\n\n/* ----------- iPhone 6+ ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: landscape) { \n\n}\n```\n\n### Galaxy Phones\n\n```css\n/* ----------- Galaxy S3 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S4 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S5 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n### HTC Phones\n\n```css\n/* ----------- HTC One ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n### iPads\n\n```css\n/* ----------- iPad mini ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 1 and 2 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 3 and 4 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n```\n\n\n","source":"docs/css/query.md","raw":"title: 媒体查询\n---\n\n设备尺寸参考 :[Mobile devices](http://mydevice.io/devices/)\n\n媒体查询类型浏览器支持情况:[CSS3 Media Queries overview](http://cssmediaqueries.com/overview.html)\n\n## 常用查询语句\n\n判断设备横竖屏\n\n```css\n/* 横屏 */\n@media all and (orientation :landscape) {\n\n} \n\n/* 竖屏 */\n@media all and (orientation :portrait) {\n\n}\n```\n\n判断设备宽高\n\n```css\n/* 设备宽度大于 320px 小于 640px */\n@media all and (min-width:320px) and (max-width:640px) {\n \n} \n```\n\n判断设备像素比\n\n```css\n/* 设备像素比为 1 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1), only screen and (min-device-pixel-ratio: 1) {\n \n}\n\n/* 设备像素比为 1.5 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {\n \n}\n\n/* 设备像素比为 2 */\n@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {\n \n}\n```\n\n## 常用设备设置\n\n### iPhones\n\n```css\n/* ----------- iPhone 4 and 4S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 5 and 5S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 6 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) { \n\n}\n\n/* ----------- iPhone 6+ ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: landscape) { \n\n}\n```\n\n### Galaxy Phones\n\n```css\n/* ----------- Galaxy S3 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S4 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S5 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n### HTC Phones\n\n```css\n/* ----------- HTC One ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n### iPads\n\n```css\n/* ----------- iPad mini ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 1 and 2 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 3 and 4 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n```\n\n\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/css/query.html","comments":1,"layout":"page","_id":"ciitvml4f000n2ufyjwzeq8ns"},{"title":"注释规范","_content":"\n> Comments begin with the characters `/*` and end with the characters `*/`. They may occur anywhere outside other tokens, and their contents have no influence on the rendering. Comments may not be nested.\n\n* 注释以字符 `/*` 开始,以字符 `*/` 结束\n* 注释不能被嵌套\n\n```css\n/*Comment Text*/\n```\n\n### 团队约定 \n\n#### 单行注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,单独占一行,行与行之间相隔一行\n\n*推荐:*\n\n``` css\n/* Comment Text */\n.jdc{}\n\n/* Comment Text */\n.jdc{}\n```\n\n*不推荐:*\n\n```css\n/*Comment Text*/\n.jdc{\n\tdisplay: block;\n}\n.jdc{\n\tdisplay: block;/*Comment Text*/\n}\n```\n\n#### 模块注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,`/*` 与 模块信息描述占一行,多个横线分隔符`-`与`*/`占一行,行与行之间相隔两行\n\n*推荐:*\n\n```css\n/* Module A\n---------------------------------------------------------------- */\n.mod_a {}\n\n\n/* Module B\n---------------------------------------------------------------- */\n.mod_b {}\n```\n\n*不推荐:*\n\n```css\n/* Module A ---------------------------------------------------- */\n.mod_a {}\n/* Module B ---------------------------------------------------- */\n.mod_b {}\n```\n\n#### 文件信息注释\n\n在样式文件编码声明 `@charset` 语句下面注明页面名称、作者、创建日期等信息\n\n```css\n@charset \"UTF-8\";\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n```\n\n\n\n\n更多关于CSS注释:[#Comments](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#comments)\n\n\n\n","source":"docs/css/note.md","raw":"title: 注释规范\n---\n\n> Comments begin with the characters `/*` and end with the characters `*/`. They may occur anywhere outside other tokens, and their contents have no influence on the rendering. Comments may not be nested.\n\n* 注释以字符 `/*` 开始,以字符 `*/` 结束\n* 注释不能被嵌套\n\n```css\n/*Comment Text*/\n```\n\n### 团队约定 \n\n#### 单行注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,单独占一行,行与行之间相隔一行\n\n*推荐:*\n\n``` css\n/* Comment Text */\n.jdc{}\n\n/* Comment Text */\n.jdc{}\n```\n\n*不推荐:*\n\n```css\n/*Comment Text*/\n.jdc{\n\tdisplay: block;\n}\n.jdc{\n\tdisplay: block;/*Comment Text*/\n}\n```\n\n#### 模块注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,`/*` 与 模块信息描述占一行,多个横线分隔符`-`与`*/`占一行,行与行之间相隔两行\n\n*推荐:*\n\n```css\n/* Module A\n---------------------------------------------------------------- */\n.mod_a {}\n\n\n/* Module B\n---------------------------------------------------------------- */\n.mod_b {}\n```\n\n*不推荐:*\n\n```css\n/* Module A ---------------------------------------------------- */\n.mod_a {}\n/* Module B ---------------------------------------------------- */\n.mod_b {}\n```\n\n#### 文件信息注释\n\n在样式文件编码声明 `@charset` 语句下面注明页面名称、作者、创建日期等信息\n\n```css\n@charset \"UTF-8\";\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n```\n\n\n\n\n更多关于CSS注释:[#Comments](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#comments)\n\n\n\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/css/note.html","comments":1,"layout":"page","_id":"ciitvml4h000o2ufy6072rnpb"},{"_content":"## CSS规范\n\n### 代码规范\n\n#### 编码规范\n\nCSS样式表是一个序列通用字符集,传输和存储过程中,这些字符必须由支持 US-ASCII(例如 UTF-8, ISO 8859-x, SHIFT JIS 等)字符编码方式编译\n\n##### 文档内嵌样式表编码\n\n> When a style sheet is embedded in another document, such as in the STYLE element or \"style\" attribute of HTML, the style sheet shares the character encoding of the whole document.\n\n当样式出现在其它文档,如 HTML 的 STYLE 标签或标签属性 \"style\",样式的编码由文档的决定。\n\n##### 文档外链样式表编码\n\n> When a style sheet resides in a separate file, user agents must observe the following priorities when determining a style sheet's character encoding (from highest priority to lowest):\n\n> 1. An HTTP \"charset\" parameter in a \"Content-Type\" field (or similar parameters in other protocols)\n> 2. BOM and/or @charset \n> 3. or other metadata from the linking mechanism (if any)\n> 4. charset of referring style sheet or document (if any)\n> 5. Assume UTF-8\n\n文档外链样式表的编码可以由以下各项按照由高到低的优先级顺序决定:\n\n1. HTTP “Content-Type” 字段参数 “charset”(或其它协议相似的参数)\n2. BOM(byte-order mark)和(或)@charset\n3. Link 中的元数据设置(如果有的话)\n4. 引用样式表字符集或文档编码(如果有的话)\n5. 假定为 UTF-8 编码\n\n##### 关于 @charset\n\n> Authors using an @charset rule must place the rule at the very beginning of the style sheet, preceded by no characters. (If a byte order mark is appropriate for the encoding used, it may precede the @charset rule.)\n\n> @charset must be written literally, i.e., the 10 characters '@charset \"' (lowercase, no backslash escapes), followed by the encoding name, followed by '\";'.\n\n\n* @charset规则一定要在样式文件的第一行首个字符位置开始,否则的话就会有机会让 BOM 设置生效(如果有设置 BOM 的话)而优于 @charset 作为样式表的编码\n* `@charset \"\";` 一定要写上,并且用小写字母,不能出现转义符\n\n##### 团队约定\n\n* 样式文件必须写上 @charset 规则,并且一定要在样式文件的第一行首个字符位置开始写,编码名用 “UTF-8”\n* 字符 `@charset \"\";` 都用小写字母,不能出现转义符,编码名允许大小混写\n* 考虑到在使用“UTF-8”编码情况下 BOM 对代码的污染和编码显示的问题,在可控范围下,坚决不使用 BOM。(更多关于 BOM 可参考 [BOM的介绍](https://zh.wikipedia.org/wiki/%E4%BD%8D%E5%85%83%E7%B5%84%E9%A0%86%E5%BA%8F%E8%A8%98%E8%99%9F) 和 [「带 BOM 的 UTF-8」和「无 BOM 的 UTF-8」有什么区别?](http://www.zhihu.com/question/20167122) )\n\n*推荐:*\n\n```\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n*不推荐:*\n\n```\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n \n/* @charset规则不在文件首行首个字符开始 */\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n```\n@CHARSET \"UTF-8\";\n/* @charset规则没有用小写 */\n\n.jdc{}\n```\n\n```\n/* 无@charset规则 */\n.jdc{}\n```\n\n更多关于样式编码:[CSS style sheet representation](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#charset)\n\n#### 代码风格\n\n##### 代码格式化\n\n样式书写一般有两种:一种是紧凑格式 (Compact)\n\n```\n.jdc{ display: block;width: 50px;}\n```\n\n一种是展开格式(Expanded)\n\n```\n.jdc{\n display: block;\n width: 50px;\n}\n```\n\n**团队约定**\n\n统一使用展开格式书写样式\n\n\n\n##### 代码大小写\n\n样式选择器,属性名,属性值关键字全部使用小写字母书写,属性字符串允许使用大小写。\n\t\n\t/* 推荐 */\n\t.jdc{\n\t\tdisplay:block;\n\t}\n\t\n\t/* 不推荐 */\n\t.JDC{\n\t\tDISPLAY:BLOCK;\n\t}\n\n##### 选择器\n\n* 尽量少用通用选择器 `*`\n* 不使用 ID 选择器\n* 不使用无具体语义定义的标签选择器\n \n```\t\n/* 推荐 */\n .jdc {...}\n .jdc li {...}\n .jdc li p{...}\n\t\n/* 不推荐 */\n *{...}\n #jdc {...}\n .jdc div{...}\n```\n\t\n##### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n```\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n##### 分号\n\n每个属性声明末尾都要加分号;\n\n```\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n##### 代码易读性\n\n左括号与类名之间一个空格,冒号与属性值之间一个空格\n\n*推荐:*\n\n```\n.jdc { \n width: 100%; \n} \n```\n\n*不推荐:*\n\n```\n.jdc{ \n width:100%;\n} \n```\n\n\n逗号分隔的取值,逗号之后一个空格\n\n*推荐:*\n\n```\n.jdc {\n box-shadow: 1px 1px 1px #333, 2px 2px 2px #ccc;\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n box-shadow: 1px 1px 1px #333,2px 2px 2px #ccc;\n}\n```\n\n为单个css选择器或新申明开启新行\n\n*推荐:*\n\n```\n.jdc,\n.jdc_logo,\n.jdc_hd {\n\t...\n}\n.nav{\n\t...\n}\n```\n\n*不推荐:*\n\n```\n.jdc,jdc_logo,.jdc_hd {\n\t...\n}.nav{\n\t...\n}\n```\n\n颜色值 `rgb()` `rgba()` `hsl()` `hsla()` `rect()` 中不需有空格,且取值不要带有不必要的 0\n\n*推荐:*\n\n```\n.jdc {\n color: rgba(255,255,255,.5);\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n color: rgba( 255, 255, 255, 0.5 );\n}\n```\n\n属性值十六进制数值能用简写的尽量用简写\n\n*推荐:*\n\n```\n.jdc {\n color: #fff;\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n color: #ffffff;\n}\n```\n\n不要为 `0` 指明单位\n\n*推荐:*\n\n```\n.jdc {\n margin: 0 10px;\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n margin: 0px 10px;\n}\n```\n\n##### 属性值引号\n\ncss属性值需要用到引号时,统一使用单引号\n\n```\n/* 推荐 */\n.jdc { \n\tfont-family: 'Hiragino Sans GB';\n}\n\n/* 不推荐 */\n.jdc { \n\tfont-family: \"Hiragino Sans GB\";\n}\n```\n\n##### 属性书写顺序\n\n建议遵循以下顺序:\n\n1. 布局定位属性:display / position / float / clear / visibility / overflow \n2. 自身属性:width / height / margin / padding / border / background\n3. 文本属性:color / font / text-decoration / text-align / vertical-align / white- space / break-word\n4. 其他属性(CSS3):content / cursor / border-radius / box-shadow / text-shadow / background:linear-gradient ...\n\n```\n.jdc {\n\tdisplay: block;\n\tposition: relative;\n\tfloat: left;\n\twidth: 100px;\n\theight: 100px;\n\tmargin: 0 10px;\n\tpadding: 20px 0;\n\tfont-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;\n\tcolor: #333;\n\tbackground: rgba(0,0,0,.5);\n\t-webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n\n\n[mozilla官方属性顺序推荐](https://www.mozilla.org/css/base/content.css)\n\n##### CSS3浏览器私有前缀写法\n\nCSS3 浏览器私有前缀在前,标准前缀在后\n\n```\n.jdc {\n -webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n更多关于浏览器私有前辍写法:[#Vendor-specific extensions](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#vendor-keywords)\n\n### 注释规范\n\n> Comments begin with the characters `/*` and end with the characters `*/`. They may occur anywhere outside other tokens, and their contents have no influence on the rendering. Comments may not be nested.\n\n* 注释以字符 `/*` 开始,以字符 `*/` 结束\n* 注释不能被嵌套\n\n```\n/*Comment Text*/\n```\n\n#### 团队约定 \n\n##### 单行注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,单独占一行,行与行之间相隔一行\n\n*推荐:*\n\n```\n/* Comment Text */\n.jdc{}\n\n/* Comment Text */\n.jdc{}\n```\n\n*不推荐:*\n\n```\n/*Comment Text*/\n.jdc{\n\tdisplay: block;\n}\n.jdc{\n\tdisplay: block;/*Comment Text*/\n}\n```\n\n##### 模块注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,`/*` 与 模块信息描述占一行,多个横线分隔符`-`与`*/`占一行,行与行之间相隔两行\n\n*推荐:*\n\n```\n/* Module A\n---------------------------------------------------------------- */\n.mod_a {}\n\n\n/* Module B\n---------------------------------------------------------------- */\n.mod_b {}\n```\n\n*不推荐:*\n\n```\n/* Module A ---------------------------------------------------- */\n.mod_a {}\n/* Module B ---------------------------------------------------- */\n.mod_b {}\n```\n\n##### 文件信息注释\n\n在样式文件编码声明 `@charset` 语句下面注明页面名称、作者、创建日期等信息\n\n```\n@charset \"UTF-8\";\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n```\n\n\n\n\n更多关于CSS注释:[#Comments](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#comments)\n\n\n### SASS规范\n\n#### 语法选用\n\nSASS有两种语法格式,一种是 SCSS (Sassy CSS),另一种是缩进格式(Indented Syntax),有时称之为 Sass。\n\n##### SCSS\n\nSCSS语法基于 CSS 语法扩展,每一个有效的 CSS 文件都是一个有效的具有相同含义的 SCSS 文件,换种说法就是 SCSS 能识别大多数的 CSS hacks 写法和浏览器前缀写法以及早期的 IE 滤镜写法,这种格式以 .scss 作为扩展名。\n\n##### Sass\n\nSass 使用 “缩进” 代替 “花括号” 表示属性属于某个选择器,用 “换行” 代替 “分号” 分隔属性,很多人认为这样做比 SCSS 更容易阅读,书写也更快速。缩进格式也可以使用 Sass 的全部功能,只是与 SCSS 相比个别地方采取了不同的表达方式,具体请查看 [the indented syntax reference](http://sass-lang.com/documentation/file.INDENTED_SYNTAX.html)。这种格式以 .sass 作为拓展名。\n\n更详细的用法请阅读 SASS 官网文档:[DOCUMENTATION](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n##### 团队约定\n\n考虑到 SCSS 语法对 CSS 语法友好的兼容性和扩展性,我们在使用 SASS 编写样式的时候,统一使用 SCSS 语法\n\n#### 编码格式\n\n> When running on Ruby 1.9 and later, Sass is aware of the character encoding of documents. Sass follows the CSS spec to determine the encoding of a stylesheet, and falls back to the Ruby string encoding. This means that it first checks the Unicode byte order mark, then the @charset declaration, then the Ruby string encoding. If none of these are set, it will assume the document is in UTF-8.\n\n当在 Ruby1.9或更新的版本运行的时候,SASS 能识辨文档的字符编码。SASS 遵循 CSS 规范去确定样式文件的编码,进而转回 Ruby 字符串编码。这意味着SASS编译的时候会首先检测 BOM,然后到 @charset 声明,再到 Ruby 字符串编码,如果以上都没有设置,SASS 会假定文档的编码为 UTF-8\n\n##### 团队约定\n\n严格遵守上面 “代码规范” 中的 “编码规范”\n\n更多关于 SASS 编码:[SASS Encodings](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n#### SASS注释规范\n\nSASS支持 CSS 标准的多行注释 `/* */`,同时也支持单行注释 `//`。\n\n* 多行注释在使用非 Compressed 模式进行编译后的输出文件中会保留下来,单行注释 `//` 侧会被移除\n* 多行注释和单行注释在 SASS 编译后输出的压缩 CSS 文件都会被移除\n* 当多行注释内容第一个字符是感叹号 “!” 的时候,即 `/*! */`,SASS 无论用哪一种编译方式编译注释都会保留\n* 注释内容可以加入 SASS 变量\n\n##### 团队约定\n\nSCSS 文件内\n\n* 全部遵循 CSS 注释规范\n* 不使用 `/*! */` 注释方式\n* 注释内不放 SASS 变量\n\n标准的注释规范如下:\n\n```\n@charset \"UTF-8\";\n\n/**\n * @desc File Info\n * @author liqinuo\n * @date 2015-10-10\n */\n\n/* Module A\n----------------------------------------------------------------*/\n.mod_a {}\n\n/* module A logo */\n.mod_a_logo {}\n\n/* module A nav */\n.mod_a_nav {}\n\n/* Module B\n----------------------------------------------------------------*/\n.mod_b {}\n\n/* module B logo */\n.mod_b_logo {}\n\n/* module B nav */\n.mod_b_nav {}\n```\n\n#### 嵌套规范\n\n##### 选择器嵌套\n\n```\n// CSS\n.jdc {}\nbody .jdc {}\n\n// SCSS\n.jdc {\n body & {}\n}\n```\n\n```\n// CSS\n.jdc {}\n.jdc_cover {}\n.jdc_info {}\n.jdc_info_name {}\n\n// SCSS\n.jdc {\n &_cover {}\n &_info {\n &_name {}\n }\n}\n```\n##### 属性嵌套\n\n```\n// CSS\n.jdc {\n background-color: red;\n background-repeat: no-repeat;\n background-image: url(/img/icon.png);\n background-position: 0 0;\n}\n\n// SCSS\n.jdc {\n background: {\n color: red;\n repeat: no-repeat;\n image: url(/img/icon.png);\n position: 0 0;\n }\n}\n```\n\n#### 变量\n\n可复用属性尽量抽离为页面变量,易于统一维护\n\n```\n// CSS\n.jdc {\n color: red;\n border-color: red;\n}\n\n// SCSS\n$color: red;\n.jdc {\n color: $color;\n border-color: $color;\n}\n```\n\n#### 混合(mixin)\n\n根据功能定义模块,然后在需要使用的地方通过 `@include` 调用,避免编码时重复输入代码段\n\n```\n// CSS\n.jdc_1 {\n -webkit-border-radius: 5px;\n border-radius: 5px;\n}\n.jdc_2 {\n -webkit-border-radius: 10px;\n border-radius: 10px;\n}\n\n// SCSS\n@mixin radius($radius:5px) {\n -webkit-border-radius: $radius;\n border-radius: $radius;\n}\n.jdc_1 {\n @include radius; //参数使用默认值\n}\n.jdc_2 {\n @include radius(10px);\n}\n```\n\n```\n// CSS\n.jdc_1 {\n background: url(/img/icon.png) no-repeat -10px 0;\n}\n.jdc_2 {\n background: url(/img/icon.png) no-repeat -20px 0;\n}\n\n// SCSS\n@mixin icon($x:0, $y:0) {\n background: url(/img/icon.png) no-repeat $x, $y;\n}\n.jdc_1 {\n @include icon(-10px, 0);\n}\n.jdc_2 {\n @include icon(-20px, 0);\n}\n```\t\n\n#### 占位选择器 %\n\n如果不调用则不会有任何多余的 css 文件,占位选择器以 `%` 标识定义,通过 `@extend` 调用\n\n```\n//scss\n%borderbox {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n.jdc {\n @extend %borderbox;\n}\n```\n\n#### @extend 继承\n\n```\n// CSS\n.jdc_1 {\n font-size: 12px;\n color: red;\n}\n.jdc_2 {\n font-size: 12px;\n color: red;\n font-weight: bold;\n}\n\n// SCSS\n.jdc_1 {\n font-size: 12px;\n color: red;\n}\n.jdc_2 {\n @extend .jdc_1;\n font-weight: bold;\n}\n\n// 或者\n%font_red {\n font-size: 12px;\n color: red;\n}\n.jdc_1 {\n @extend %font_red;\n}\n.jdc_2 {\n @extend %font_red;\n font-weight: bold;\n}\n```\n\n#### @for 循环\n\n```\n// CSS\n.jdc_1 {background-position: 0 -20px;}\n.jdc_2 {background-position: 0 -40px;}\n.jdc_3 {background-position: 0 -60px;}\n\n// SCSS\n@for $i from 1 through 3 {\n .jdc_#{$i} {\n background-position: 0 (-20px) * $i;\n }\n}\n```\n注意:`#{}` 是连接符,变量连接使用时需要依赖\n\n#### @each 循环\n\n```\n// CSS\n.jdc_list {\n background-image: url(/img/jdc_list.png);\n}\n.jdc_detail {\n background-image: url(/img/jdc_detail.png);\n}\n\n// SCSS\n@each $name in list, detail {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n }\n}\n```\n\n```\n// CSS\n.jdc_list {\n background-image: url(/img/jdc_list.png);\n background-color: red;\n}\n.jdc_detail {\n background-image: url(/img/jdc_detail.png);\n background-color: blue;\n}\n\n// SCSS\n@each $name, $color in (list, red), (detail, blue) {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n background-color: $color;\n }\n}\n```\n\n#### @function 函数\n\n```\n@function pxToRem($px) {\n @return $px / 10px * 1rem;\n}\n.jdc {\n font-size: pxToRem(12px);\n}\n```\n\n#### 运算规范\n\n运算符之间空出一个空格\n\n```\n.jdc {\n width: 100px - 50px;\n height: 30px / 5;\n}\n```\n\n注意运算单位,单位同时参与运算,所以 10px 不等于 10,乘除运算时需要特别注意\n\n```\n// 正确的运算格式\n.jdc {\n width: 100px - 50px;\n width: 100px + 50px;\n width: 100px * 2;\n width: 100px / 2;\n}\n```\n\n### 重置样式\n\n#### 移动端\n\n```\n* { -webkit-tap-highlight-color: transparent; outline: 0; margin: 0; padding: 0; vertical-align: baseline; }\nbody, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td { margin: 0; padding: 0; vertical-align: baseline; }\nimg { border: 0 none; vertical-align: top; }\ni, em { font-style: normal; }\nol, ul { list-style: none; }\ninput, select, button, h1, h2, h3, h4, h5, h6 { font-size: 100%; font-family: inherit; }\ntable { border-collapse: collapse; border-spacing: 0; }\na { text-decoration: none; color: #666; }\nbody { margin: 0 auto; min-width: 320px; max-width: 640px; height: 100%; font-size: 14px; font-family: Helvetica, STHeiti STXihei, Microsoft JhengHei, Microsoft YaHei, Arial; line-height: 1.5; color: #666; -webkit-text-size-adjust: 100% !important; text-size-adjust: 100% !important; }\ninput[type=\"text\"], textarea { -webkit-appearance: none; -moz-appearance: none; appearance: none; }\n```\n\n#### PC端\n\n```\nhtml, body, div, h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ol, ul, li, fieldset, form, label, input, legend, table, caption, tbody, tfoot, thead, tr, th, td, textarea, article, aside, audio, canvas, figure, footer, header, mark, menu, nav, section, time, video { margin: 0; padding: 0; }\nh1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal }\narticle, aside, dialog, figure, footer, header, hgroup, nav, section, blockquote { display: block; }\nul, ol { list-style: none; }\nimg { border: 0 none; vertical-align: top; }\nblockquote, q { quotes: none; }\nblockquote:before, blockquote:after, q:before, q:after { content: none; }\ntable { border-collapse: collapse; border-spacing: 0; }\nstrong, em, i { font-style: normal; font-weight: normal; }\nins { text-decoration: underline; }\ndel { text-decoration: line-through; }\nmark { background: none; }\ninput::-ms-clear { display: none !important; }\nbody { font: 12px/1.5 \\5FAE\\8F6F\\96C5\\9ED1, \\5B8B\\4F53, \"Hiragino Sans GB\", STHeiti, \"WenQuanYi Micro Hei\", \"Droid Sans Fallback\", SimSun, sans-serif; background: #fff; }\na { text-decoration: none; color: #333; }\na:hover { text-decoration: underline; }\n```\n\n### 媒体查询\n\n设备尺寸参考 :[Mobile devices](http://mydevice.io/devices/)\n\n媒体查询类型浏览器支持情况:[CSS3 Media Queries overview](http://cssmediaqueries.com/overview.html)\n\n#### 常用查询语句\n\n判断设备横竖屏\n\n```\n/* 横屏 */\n@media all and (orientation :landscape) {\n\n} \n\n/* 竖屏 */\n@media all and (orientation :portrait) {\n\n}\n```\n\n判断设备宽高\n\n```\n/* 设备宽度大于 320px 小于 640px */\n@media all and (min-width:320px) and (max-width:640px) {\n \n} \n```\n\n判断设备像素比\n\n```\n/* 设备像素比为 1 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1), only screen and (min-device-pixel-ratio: 1) {\n \n}\n\n/* 设备像素比为 1.5 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {\n \n}\n\n/* 设备像素比为 2 */\n@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {\n \n}\n```\n\n#### 常用设备设置\n\n##### iPhones\n\n```\n/* ----------- iPhone 4 and 4S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 5 and 5S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 6 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) { \n\n}\n\n/* ----------- iPhone 6+ ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: landscape) { \n\n}\n```\n\n##### Galaxy Phones\n\n```\n/* ----------- Galaxy S3 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S4 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S5 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n##### HTC Phones\n\n```\n/* ----------- HTC One ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n##### iPads\n\n```\n/* ----------- iPad mini ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 1 and 2 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 3 and 4 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n```","source":"docs/css/jdc_fd_guide_css.md","raw":"## CSS规范\n\n### 代码规范\n\n#### 编码规范\n\nCSS样式表是一个序列通用字符集,传输和存储过程中,这些字符必须由支持 US-ASCII(例如 UTF-8, ISO 8859-x, SHIFT JIS 等)字符编码方式编译\n\n##### 文档内嵌样式表编码\n\n> When a style sheet is embedded in another document, such as in the STYLE element or \"style\" attribute of HTML, the style sheet shares the character encoding of the whole document.\n\n当样式出现在其它文档,如 HTML 的 STYLE 标签或标签属性 \"style\",样式的编码由文档的决定。\n\n##### 文档外链样式表编码\n\n> When a style sheet resides in a separate file, user agents must observe the following priorities when determining a style sheet's character encoding (from highest priority to lowest):\n\n> 1. An HTTP \"charset\" parameter in a \"Content-Type\" field (or similar parameters in other protocols)\n> 2. BOM and/or @charset \n> 3. or other metadata from the linking mechanism (if any)\n> 4. charset of referring style sheet or document (if any)\n> 5. Assume UTF-8\n\n文档外链样式表的编码可以由以下各项按照由高到低的优先级顺序决定:\n\n1. HTTP “Content-Type” 字段参数 “charset”(或其它协议相似的参数)\n2. BOM(byte-order mark)和(或)@charset\n3. Link 中的元数据设置(如果有的话)\n4. 引用样式表字符集或文档编码(如果有的话)\n5. 假定为 UTF-8 编码\n\n##### 关于 @charset\n\n> Authors using an @charset rule must place the rule at the very beginning of the style sheet, preceded by no characters. (If a byte order mark is appropriate for the encoding used, it may precede the @charset rule.)\n\n> @charset must be written literally, i.e., the 10 characters '@charset \"' (lowercase, no backslash escapes), followed by the encoding name, followed by '\";'.\n\n\n* @charset规则一定要在样式文件的第一行首个字符位置开始,否则的话就会有机会让 BOM 设置生效(如果有设置 BOM 的话)而优于 @charset 作为样式表的编码\n* `@charset \"\";` 一定要写上,并且用小写字母,不能出现转义符\n\n##### 团队约定\n\n* 样式文件必须写上 @charset 规则,并且一定要在样式文件的第一行首个字符位置开始写,编码名用 “UTF-8”\n* 字符 `@charset \"\";` 都用小写字母,不能出现转义符,编码名允许大小混写\n* 考虑到在使用“UTF-8”编码情况下 BOM 对代码的污染和编码显示的问题,在可控范围下,坚决不使用 BOM。(更多关于 BOM 可参考 [BOM的介绍](https://zh.wikipedia.org/wiki/%E4%BD%8D%E5%85%83%E7%B5%84%E9%A0%86%E5%BA%8F%E8%A8%98%E8%99%9F) 和 [「带 BOM 的 UTF-8」和「无 BOM 的 UTF-8」有什么区别?](http://www.zhihu.com/question/20167122) )\n\n*推荐:*\n\n```\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n*不推荐:*\n\n```\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n \n/* @charset规则不在文件首行首个字符开始 */\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n```\n@CHARSET \"UTF-8\";\n/* @charset规则没有用小写 */\n\n.jdc{}\n```\n\n```\n/* 无@charset规则 */\n.jdc{}\n```\n\n更多关于样式编码:[CSS style sheet representation](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#charset)\n\n#### 代码风格\n\n##### 代码格式化\n\n样式书写一般有两种:一种是紧凑格式 (Compact)\n\n```\n.jdc{ display: block;width: 50px;}\n```\n\n一种是展开格式(Expanded)\n\n```\n.jdc{\n display: block;\n width: 50px;\n}\n```\n\n**团队约定**\n\n统一使用展开格式书写样式\n\n\n\n##### 代码大小写\n\n样式选择器,属性名,属性值关键字全部使用小写字母书写,属性字符串允许使用大小写。\n\t\n\t/* 推荐 */\n\t.jdc{\n\t\tdisplay:block;\n\t}\n\t\n\t/* 不推荐 */\n\t.JDC{\n\t\tDISPLAY:BLOCK;\n\t}\n\n##### 选择器\n\n* 尽量少用通用选择器 `*`\n* 不使用 ID 选择器\n* 不使用无具体语义定义的标签选择器\n \n```\t\n/* 推荐 */\n .jdc {...}\n .jdc li {...}\n .jdc li p{...}\n\t\n/* 不推荐 */\n *{...}\n #jdc {...}\n .jdc div{...}\n```\n\t\n##### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n```\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n##### 分号\n\n每个属性声明末尾都要加分号;\n\n```\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n##### 代码易读性\n\n左括号与类名之间一个空格,冒号与属性值之间一个空格\n\n*推荐:*\n\n```\n.jdc { \n width: 100%; \n} \n```\n\n*不推荐:*\n\n```\n.jdc{ \n width:100%;\n} \n```\n\n\n逗号分隔的取值,逗号之后一个空格\n\n*推荐:*\n\n```\n.jdc {\n box-shadow: 1px 1px 1px #333, 2px 2px 2px #ccc;\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n box-shadow: 1px 1px 1px #333,2px 2px 2px #ccc;\n}\n```\n\n为单个css选择器或新申明开启新行\n\n*推荐:*\n\n```\n.jdc,\n.jdc_logo,\n.jdc_hd {\n\t...\n}\n.nav{\n\t...\n}\n```\n\n*不推荐:*\n\n```\n.jdc,jdc_logo,.jdc_hd {\n\t...\n}.nav{\n\t...\n}\n```\n\n颜色值 `rgb()` `rgba()` `hsl()` `hsla()` `rect()` 中不需有空格,且取值不要带有不必要的 0\n\n*推荐:*\n\n```\n.jdc {\n color: rgba(255,255,255,.5);\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n color: rgba( 255, 255, 255, 0.5 );\n}\n```\n\n属性值十六进制数值能用简写的尽量用简写\n\n*推荐:*\n\n```\n.jdc {\n color: #fff;\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n color: #ffffff;\n}\n```\n\n不要为 `0` 指明单位\n\n*推荐:*\n\n```\n.jdc {\n margin: 0 10px;\n}\n```\n\n*不推荐:*\n\n```\n.jdc {\n margin: 0px 10px;\n}\n```\n\n##### 属性值引号\n\ncss属性值需要用到引号时,统一使用单引号\n\n```\n/* 推荐 */\n.jdc { \n\tfont-family: 'Hiragino Sans GB';\n}\n\n/* 不推荐 */\n.jdc { \n\tfont-family: \"Hiragino Sans GB\";\n}\n```\n\n##### 属性书写顺序\n\n建议遵循以下顺序:\n\n1. 布局定位属性:display / position / float / clear / visibility / overflow \n2. 自身属性:width / height / margin / padding / border / background\n3. 文本属性:color / font / text-decoration / text-align / vertical-align / white- space / break-word\n4. 其他属性(CSS3):content / cursor / border-radius / box-shadow / text-shadow / background:linear-gradient ...\n\n```\n.jdc {\n\tdisplay: block;\n\tposition: relative;\n\tfloat: left;\n\twidth: 100px;\n\theight: 100px;\n\tmargin: 0 10px;\n\tpadding: 20px 0;\n\tfont-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;\n\tcolor: #333;\n\tbackground: rgba(0,0,0,.5);\n\t-webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n\n\n[mozilla官方属性顺序推荐](https://www.mozilla.org/css/base/content.css)\n\n##### CSS3浏览器私有前缀写法\n\nCSS3 浏览器私有前缀在前,标准前缀在后\n\n```\n.jdc {\n -webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n更多关于浏览器私有前辍写法:[#Vendor-specific extensions](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#vendor-keywords)\n\n### 注释规范\n\n> Comments begin with the characters `/*` and end with the characters `*/`. They may occur anywhere outside other tokens, and their contents have no influence on the rendering. Comments may not be nested.\n\n* 注释以字符 `/*` 开始,以字符 `*/` 结束\n* 注释不能被嵌套\n\n```\n/*Comment Text*/\n```\n\n#### 团队约定 \n\n##### 单行注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,单独占一行,行与行之间相隔一行\n\n*推荐:*\n\n```\n/* Comment Text */\n.jdc{}\n\n/* Comment Text */\n.jdc{}\n```\n\n*不推荐:*\n\n```\n/*Comment Text*/\n.jdc{\n\tdisplay: block;\n}\n.jdc{\n\tdisplay: block;/*Comment Text*/\n}\n```\n\n##### 模块注释\n\n注释内容第一个字符和最后一个字符都是一个空格字符,`/*` 与 模块信息描述占一行,多个横线分隔符`-`与`*/`占一行,行与行之间相隔两行\n\n*推荐:*\n\n```\n/* Module A\n---------------------------------------------------------------- */\n.mod_a {}\n\n\n/* Module B\n---------------------------------------------------------------- */\n.mod_b {}\n```\n\n*不推荐:*\n\n```\n/* Module A ---------------------------------------------------- */\n.mod_a {}\n/* Module B ---------------------------------------------------- */\n.mod_b {}\n```\n\n##### 文件信息注释\n\n在样式文件编码声明 `@charset` 语句下面注明页面名称、作者、创建日期等信息\n\n```\n@charset \"UTF-8\";\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n```\n\n\n\n\n更多关于CSS注释:[#Comments](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#comments)\n\n\n### SASS规范\n\n#### 语法选用\n\nSASS有两种语法格式,一种是 SCSS (Sassy CSS),另一种是缩进格式(Indented Syntax),有时称之为 Sass。\n\n##### SCSS\n\nSCSS语法基于 CSS 语法扩展,每一个有效的 CSS 文件都是一个有效的具有相同含义的 SCSS 文件,换种说法就是 SCSS 能识别大多数的 CSS hacks 写法和浏览器前缀写法以及早期的 IE 滤镜写法,这种格式以 .scss 作为扩展名。\n\n##### Sass\n\nSass 使用 “缩进” 代替 “花括号” 表示属性属于某个选择器,用 “换行” 代替 “分号” 分隔属性,很多人认为这样做比 SCSS 更容易阅读,书写也更快速。缩进格式也可以使用 Sass 的全部功能,只是与 SCSS 相比个别地方采取了不同的表达方式,具体请查看 [the indented syntax reference](http://sass-lang.com/documentation/file.INDENTED_SYNTAX.html)。这种格式以 .sass 作为拓展名。\n\n更详细的用法请阅读 SASS 官网文档:[DOCUMENTATION](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n##### 团队约定\n\n考虑到 SCSS 语法对 CSS 语法友好的兼容性和扩展性,我们在使用 SASS 编写样式的时候,统一使用 SCSS 语法\n\n#### 编码格式\n\n> When running on Ruby 1.9 and later, Sass is aware of the character encoding of documents. Sass follows the CSS spec to determine the encoding of a stylesheet, and falls back to the Ruby string encoding. This means that it first checks the Unicode byte order mark, then the @charset declaration, then the Ruby string encoding. If none of these are set, it will assume the document is in UTF-8.\n\n当在 Ruby1.9或更新的版本运行的时候,SASS 能识辨文档的字符编码。SASS 遵循 CSS 规范去确定样式文件的编码,进而转回 Ruby 字符串编码。这意味着SASS编译的时候会首先检测 BOM,然后到 @charset 声明,再到 Ruby 字符串编码,如果以上都没有设置,SASS 会假定文档的编码为 UTF-8\n\n##### 团队约定\n\n严格遵守上面 “代码规范” 中的 “编码规范”\n\n更多关于 SASS 编码:[SASS Encodings](http://sass-lang.com/documentation/file.SASS_REFERENCE.html)\n\n#### SASS注释规范\n\nSASS支持 CSS 标准的多行注释 `/* */`,同时也支持单行注释 `//`。\n\n* 多行注释在使用非 Compressed 模式进行编译后的输出文件中会保留下来,单行注释 `//` 侧会被移除\n* 多行注释和单行注释在 SASS 编译后输出的压缩 CSS 文件都会被移除\n* 当多行注释内容第一个字符是感叹号 “!” 的时候,即 `/*! */`,SASS 无论用哪一种编译方式编译注释都会保留\n* 注释内容可以加入 SASS 变量\n\n##### 团队约定\n\nSCSS 文件内\n\n* 全部遵循 CSS 注释规范\n* 不使用 `/*! */` 注释方式\n* 注释内不放 SASS 变量\n\n标准的注释规范如下:\n\n```\n@charset \"UTF-8\";\n\n/**\n * @desc File Info\n * @author liqinuo\n * @date 2015-10-10\n */\n\n/* Module A\n----------------------------------------------------------------*/\n.mod_a {}\n\n/* module A logo */\n.mod_a_logo {}\n\n/* module A nav */\n.mod_a_nav {}\n\n/* Module B\n----------------------------------------------------------------*/\n.mod_b {}\n\n/* module B logo */\n.mod_b_logo {}\n\n/* module B nav */\n.mod_b_nav {}\n```\n\n#### 嵌套规范\n\n##### 选择器嵌套\n\n```\n// CSS\n.jdc {}\nbody .jdc {}\n\n// SCSS\n.jdc {\n body & {}\n}\n```\n\n```\n// CSS\n.jdc {}\n.jdc_cover {}\n.jdc_info {}\n.jdc_info_name {}\n\n// SCSS\n.jdc {\n &_cover {}\n &_info {\n &_name {}\n }\n}\n```\n##### 属性嵌套\n\n```\n// CSS\n.jdc {\n background-color: red;\n background-repeat: no-repeat;\n background-image: url(/img/icon.png);\n background-position: 0 0;\n}\n\n// SCSS\n.jdc {\n background: {\n color: red;\n repeat: no-repeat;\n image: url(/img/icon.png);\n position: 0 0;\n }\n}\n```\n\n#### 变量\n\n可复用属性尽量抽离为页面变量,易于统一维护\n\n```\n// CSS\n.jdc {\n color: red;\n border-color: red;\n}\n\n// SCSS\n$color: red;\n.jdc {\n color: $color;\n border-color: $color;\n}\n```\n\n#### 混合(mixin)\n\n根据功能定义模块,然后在需要使用的地方通过 `@include` 调用,避免编码时重复输入代码段\n\n```\n// CSS\n.jdc_1 {\n -webkit-border-radius: 5px;\n border-radius: 5px;\n}\n.jdc_2 {\n -webkit-border-radius: 10px;\n border-radius: 10px;\n}\n\n// SCSS\n@mixin radius($radius:5px) {\n -webkit-border-radius: $radius;\n border-radius: $radius;\n}\n.jdc_1 {\n @include radius; //参数使用默认值\n}\n.jdc_2 {\n @include radius(10px);\n}\n```\n\n```\n// CSS\n.jdc_1 {\n background: url(/img/icon.png) no-repeat -10px 0;\n}\n.jdc_2 {\n background: url(/img/icon.png) no-repeat -20px 0;\n}\n\n// SCSS\n@mixin icon($x:0, $y:0) {\n background: url(/img/icon.png) no-repeat $x, $y;\n}\n.jdc_1 {\n @include icon(-10px, 0);\n}\n.jdc_2 {\n @include icon(-20px, 0);\n}\n```\t\n\n#### 占位选择器 %\n\n如果不调用则不会有任何多余的 css 文件,占位选择器以 `%` 标识定义,通过 `@extend` 调用\n\n```\n//scss\n%borderbox {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n.jdc {\n @extend %borderbox;\n}\n```\n\n#### @extend 继承\n\n```\n// CSS\n.jdc_1 {\n font-size: 12px;\n color: red;\n}\n.jdc_2 {\n font-size: 12px;\n color: red;\n font-weight: bold;\n}\n\n// SCSS\n.jdc_1 {\n font-size: 12px;\n color: red;\n}\n.jdc_2 {\n @extend .jdc_1;\n font-weight: bold;\n}\n\n// 或者\n%font_red {\n font-size: 12px;\n color: red;\n}\n.jdc_1 {\n @extend %font_red;\n}\n.jdc_2 {\n @extend %font_red;\n font-weight: bold;\n}\n```\n\n#### @for 循环\n\n```\n// CSS\n.jdc_1 {background-position: 0 -20px;}\n.jdc_2 {background-position: 0 -40px;}\n.jdc_3 {background-position: 0 -60px;}\n\n// SCSS\n@for $i from 1 through 3 {\n .jdc_#{$i} {\n background-position: 0 (-20px) * $i;\n }\n}\n```\n注意:`#{}` 是连接符,变量连接使用时需要依赖\n\n#### @each 循环\n\n```\n// CSS\n.jdc_list {\n background-image: url(/img/jdc_list.png);\n}\n.jdc_detail {\n background-image: url(/img/jdc_detail.png);\n}\n\n// SCSS\n@each $name in list, detail {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n }\n}\n```\n\n```\n// CSS\n.jdc_list {\n background-image: url(/img/jdc_list.png);\n background-color: red;\n}\n.jdc_detail {\n background-image: url(/img/jdc_detail.png);\n background-color: blue;\n}\n\n// SCSS\n@each $name, $color in (list, red), (detail, blue) {\n .jdc_#{$name} {\n background-image: url(/img/jdc_#{$name}.png);\n background-color: $color;\n }\n}\n```\n\n#### @function 函数\n\n```\n@function pxToRem($px) {\n @return $px / 10px * 1rem;\n}\n.jdc {\n font-size: pxToRem(12px);\n}\n```\n\n#### 运算规范\n\n运算符之间空出一个空格\n\n```\n.jdc {\n width: 100px - 50px;\n height: 30px / 5;\n}\n```\n\n注意运算单位,单位同时参与运算,所以 10px 不等于 10,乘除运算时需要特别注意\n\n```\n// 正确的运算格式\n.jdc {\n width: 100px - 50px;\n width: 100px + 50px;\n width: 100px * 2;\n width: 100px / 2;\n}\n```\n\n### 重置样式\n\n#### 移动端\n\n```\n* { -webkit-tap-highlight-color: transparent; outline: 0; margin: 0; padding: 0; vertical-align: baseline; }\nbody, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td { margin: 0; padding: 0; vertical-align: baseline; }\nimg { border: 0 none; vertical-align: top; }\ni, em { font-style: normal; }\nol, ul { list-style: none; }\ninput, select, button, h1, h2, h3, h4, h5, h6 { font-size: 100%; font-family: inherit; }\ntable { border-collapse: collapse; border-spacing: 0; }\na { text-decoration: none; color: #666; }\nbody { margin: 0 auto; min-width: 320px; max-width: 640px; height: 100%; font-size: 14px; font-family: Helvetica, STHeiti STXihei, Microsoft JhengHei, Microsoft YaHei, Arial; line-height: 1.5; color: #666; -webkit-text-size-adjust: 100% !important; text-size-adjust: 100% !important; }\ninput[type=\"text\"], textarea { -webkit-appearance: none; -moz-appearance: none; appearance: none; }\n```\n\n#### PC端\n\n```\nhtml, body, div, h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ol, ul, li, fieldset, form, label, input, legend, table, caption, tbody, tfoot, thead, tr, th, td, textarea, article, aside, audio, canvas, figure, footer, header, mark, menu, nav, section, time, video { margin: 0; padding: 0; }\nh1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal }\narticle, aside, dialog, figure, footer, header, hgroup, nav, section, blockquote { display: block; }\nul, ol { list-style: none; }\nimg { border: 0 none; vertical-align: top; }\nblockquote, q { quotes: none; }\nblockquote:before, blockquote:after, q:before, q:after { content: none; }\ntable { border-collapse: collapse; border-spacing: 0; }\nstrong, em, i { font-style: normal; font-weight: normal; }\nins { text-decoration: underline; }\ndel { text-decoration: line-through; }\nmark { background: none; }\ninput::-ms-clear { display: none !important; }\nbody { font: 12px/1.5 \\5FAE\\8F6F\\96C5\\9ED1, \\5B8B\\4F53, \"Hiragino Sans GB\", STHeiti, \"WenQuanYi Micro Hei\", \"Droid Sans Fallback\", SimSun, sans-serif; background: #fff; }\na { text-decoration: none; color: #333; }\na:hover { text-decoration: underline; }\n```\n\n### 媒体查询\n\n设备尺寸参考 :[Mobile devices](http://mydevice.io/devices/)\n\n媒体查询类型浏览器支持情况:[CSS3 Media Queries overview](http://cssmediaqueries.com/overview.html)\n\n#### 常用查询语句\n\n判断设备横竖屏\n\n```\n/* 横屏 */\n@media all and (orientation :landscape) {\n\n} \n\n/* 竖屏 */\n@media all and (orientation :portrait) {\n\n}\n```\n\n判断设备宽高\n\n```\n/* 设备宽度大于 320px 小于 640px */\n@media all and (min-width:320px) and (max-width:640px) {\n \n} \n```\n\n判断设备像素比\n\n```\n/* 设备像素比为 1 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1), only screen and (min-device-pixel-ratio: 1) {\n \n}\n\n/* 设备像素比为 1.5 */\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {\n \n}\n\n/* 设备像素比为 2 */\n@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {\n \n}\n```\n\n#### 常用设备设置\n\n##### iPhones\n\n```\n/* ----------- iPhone 4 and 4S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 480px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 5 and 5S ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) {\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 320px) \n and (max-device-width: 568px)\n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) {\n\n}\n\n/* ----------- iPhone 6 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 375px) \n and (max-device-width: 667px) \n and (-webkit-min-device-pixel-ratio: 2)\n and (orientation: landscape) { \n\n}\n\n/* ----------- iPhone 6+ ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3) { \n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: portrait) { \n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 414px) \n and (max-device-width: 736px) \n and (-webkit-min-device-pixel-ratio: 3)\n and (orientation: landscape) { \n\n}\n```\n\n##### Galaxy Phones\n\n```\n/* ----------- Galaxy S3 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 2) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S4 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 320px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n\n/* ----------- Galaxy S5 ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n##### HTC Phones\n\n```\n/* ----------- HTC One ----------- */\n\n/* Portrait and Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) {\n\n}\n\n/* Portrait */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: portrait) {\n\n}\n\n/* Landscape */\n@media screen \n and (device-width: 360px) \n and (device-height: 640px) \n and (-webkit-device-pixel-ratio: 3) \n and (orientation: landscape) {\n\n}\n```\n\n##### iPads\n\n```\n/* ----------- iPad mini ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 1 and 2 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 1) {\n\n}\n\n/* ----------- iPad 3 and 4 ----------- */\n\n/* Portrait and Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Portrait */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: portrait) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n\n/* Landscape */\n@media only screen \n and (min-device-width: 768px) \n and (max-device-width: 1024px) \n and (orientation: landscape) \n and (-webkit-min-device-pixel-ratio: 2) {\n\n}\n```","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/css/jdc_fd_guide_css.html","title":"","comments":1,"layout":"page","_id":"ciitvml4i000p2ufy4uqeuzs1"},{"title":"代码规范","_content":"\n## 编码规范\n\nCSS样式表是一个序列通用字符集,传输和存储过程中,这些字符必须由支持 US-ASCII(例如 UTF-8, ISO 8859-x, SHIFT JIS 等)字符编码方式编译\n\n### 文档内嵌样式表编码\n\n> When a style sheet is embedded in another document, such as in the STYLE element or \"style\" attribute of HTML, the style sheet shares the character encoding of the whole document.\n\n当样式出现在其它文档,如 HTML 的 STYLE 标签或标签属性 \"style\",样式的编码由文档的决定。\n\n### 文档外链样式表编码\n\n> When a style sheet resides in a separate file, user agents must observe the following priorities when determining a style sheet's character encoding (from highest priority to lowest):\n\n> 1. An HTTP \"charset\" parameter in a \"Content-Type\" field (or similar parameters in other protocols)\n> 2. BOM and/or @charset \n> 3. or other metadata from the linking mechanism (if any)\n> 4. charset of referring style sheet or document (if any)\n> 5. Assume UTF-8\n\n文档外链样式表的编码可以由以下各项按照由高到低的优先级顺序决定:\n\n1. HTTP “Content-Type” 字段参数 “charset”(或其它协议相似的参数)\n2. BOM(byte-order mark)和(或)@charset\n3. Link 中的元数据设置(如果有的话)\n4. 引用样式表字符集或文档编码(如果有的话)\n5. 假定为 UTF-8 编码\n\n### 关于 @charset\n\n> Authors using an @charset rule must place the rule at the very beginning of the style sheet, preceded by no characters. (If a byte order mark is appropriate for the encoding used, it may precede the @charset rule.)\n\n> @charset must be written literally, i.e., the 10 characters '@charset \"' (lowercase, no backslash escapes), followed by the encoding name, followed by '\";'.\n\n\n* @charset规则一定要在样式文件的第一行首个字符位置开始,否则的话就会有机会让 BOM 设置生效(如果有设置 BOM 的话)而优于 @charset 作为样式表的编码\n* `@charset \"\";` 一定要写上,并且用小写字母,不能出现转义符\n\n### 团队约定\n\n* 样式文件必须写上 @charset 规则,并且一定要在样式文件的第一行首个字符位置开始写,编码名用 “UTF-8”\n* 字符 `@charset \"\";` 都用小写字母,不能出现转义符,编码名允许大小混写\n* 考虑到在使用“UTF-8”编码情况下 BOM 对代码的污染和编码显示的问题,在可控范围下,坚决不使用 BOM。(更多关于 BOM 可参考 [BOM的介绍](https://zh.wikipedia.org/wiki/%E4%BD%8D%E5%85%83%E7%B5%84%E9%A0%86%E5%BA%8F%E8%A8%98%E8%99%9F) 和 [「带 BOM 的 UTF-8」和「无 BOM 的 UTF-8」有什么区别?](http://www.zhihu.com/question/20167122) )\n\n*推荐:*\n\n```css\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n*不推荐:*\n\n```css\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n \n/* @charset规则不在文件首行首个字符开始 */\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n```css\n@CHARSET \"UTF-8\";\n/* @charset规则没有用小写 */\n\n.jdc{}\n```\n\n```css\n/* 无@charset规则 */\n.jdc{}\n```\n\n更多关于样式编码:[CSS style sheet representation](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#charset)\n\n## 代码风格\n\n### 代码格式化\n\n样式书写一般有两种:一种是紧凑格式 (Compact)\n\n```css\n.jdc{ display: block;width: 50px;}\n```\n\n一种是展开格式(Expanded)\n\n```css\n.jdc{\n display: block;\n width: 50px;\n}\n```\n\n**团队约定**\n\n统一使用展开格式书写样式\n\n\n\n### 代码大小写\n\n样式选择器,属性名,属性值关键字全部使用小写字母书写,属性字符串允许使用大小写。\n\t\n\t/* 推荐 */\n\t.jdc{\n\t\tdisplay:block;\n\t}\n\t\n\t/* 不推荐 */\n\t.JDC{\n\t\tDISPLAY:BLOCK;\n\t}\n\n### 选择器\n\n* 尽量少用通用选择器 `*`\n* 不使用 ID 选择器\n* 不使用无具体语义定义的标签选择器\n \n```\n/* 推荐 */\n.jdc {...}\n.jdc li {...}\n.jdc li p{...}\n\n/* 不推荐 */\n*{...}\n#jdc {...}\n.jdc div{...}\n```\n\t\n### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n```css\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n### 分号\n\n每个属性声明末尾都要加分号;\n\n```css\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n### 代码易读性\n\n左括号与类名之间一个空格,冒号与属性值之间一个空格\n\n*推荐:*\n\n```css\n.jdc { \n width: 100%; \n} \n```\n\n*不推荐:*\n\n```css\n.jdc{ \n width:100%;\n} \n```\n\n\n逗号分隔的取值,逗号之后一个空格\n\n*推荐:*\n\n```css\n.jdc {\n box-shadow: 1px 1px 1px #333, 2px 2px 2px #ccc;\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n box-shadow: 1px 1px 1px #333,2px 2px 2px #ccc;\n}\n```\n\n为单个css选择器或新申明开启新行\n\n*推荐:*\n\n```css\n.jdc, \n.jdc_logo, \n.jdc_hd {\n color: #ff0;\n}\n.nav{\n color: #fff;\n}\n```\n\n*不推荐:*\n\n``` css\n.jdc,jdc_logo,.jdc_hd {\n color: #ff0;\n}.nav{\n color: #fff;\n}\n```\n\n颜色值 `rgb()` `rgba()` `hsl()` `hsla()` `rect()` 中不需有空格,且取值不要带有不必要的 0\n\n*推荐:*\n\n```css\n.jdc {\n color: rgba(255,255,255,.5);\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n color: rgba( 255, 255, 255, 0.5 );\n}\n```\n\n属性值十六进制数值能用简写的尽量用简写\n\n*推荐:*\n\n```css\n.jdc {\n color: #fff;\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n color: #ffffff;\n}\n```\n\n不要为 `0` 指明单位\n\n*推荐:*\n\n```css\n.jdc {\n margin: 0 10px;\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n margin: 0px 10px;\n}\n```\n\n### 属性值引号\n\ncss属性值需要用到引号时,统一使用单引号\n\n```css\n/* 推荐 */\n.jdc { \n\tfont-family: 'Hiragino Sans GB';\n}\n\n/* 不推荐 */\n.jdc { \n\tfont-family: \"Hiragino Sans GB\";\n}\n```\n\n### 属性书写顺序\n\n建议遵循以下顺序:\n\n1. 布局定位属性:display / position / float / clear / visibility / overflow \n2. 自身属性:width / height / margin / padding / border / background\n3. 文本属性:color / font / text-decoration / text-align / vertical-align / white- space / break-word\n4. 其他属性(CSS3):content / cursor / border-radius / box-shadow / text-shadow / background:linear-gradient ...\n\n```css\n.jdc {\n display: block;\n position: relative;\n float: left;\n width: 100px;\n height: 100px;\n margin: 0 10px;\n padding: 20px 0;\n font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;\n color: #333;\n background: rgba(0,0,0,.5);\n -webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n\n\n[mozilla官方属性顺序推荐](https://www.mozilla.org/css/base/content.css)\n\n### CSS3浏览器私有前缀写法\n\nCSS3 浏览器私有前缀在前,标准前缀在后\n\n```css\n.jdc {\n -webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n更多关于浏览器私有前辍写法:[#Vendor-specific extensions](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#vendor-keywords)\n","source":"docs/css/code.md","raw":"title: 代码规范\n---\n\n## 编码规范\n\nCSS样式表是一个序列通用字符集,传输和存储过程中,这些字符必须由支持 US-ASCII(例如 UTF-8, ISO 8859-x, SHIFT JIS 等)字符编码方式编译\n\n### 文档内嵌样式表编码\n\n> When a style sheet is embedded in another document, such as in the STYLE element or \"style\" attribute of HTML, the style sheet shares the character encoding of the whole document.\n\n当样式出现在其它文档,如 HTML 的 STYLE 标签或标签属性 \"style\",样式的编码由文档的决定。\n\n### 文档外链样式表编码\n\n> When a style sheet resides in a separate file, user agents must observe the following priorities when determining a style sheet's character encoding (from highest priority to lowest):\n\n> 1. An HTTP \"charset\" parameter in a \"Content-Type\" field (or similar parameters in other protocols)\n> 2. BOM and/or @charset \n> 3. or other metadata from the linking mechanism (if any)\n> 4. charset of referring style sheet or document (if any)\n> 5. Assume UTF-8\n\n文档外链样式表的编码可以由以下各项按照由高到低的优先级顺序决定:\n\n1. HTTP “Content-Type” 字段参数 “charset”(或其它协议相似的参数)\n2. BOM(byte-order mark)和(或)@charset\n3. Link 中的元数据设置(如果有的话)\n4. 引用样式表字符集或文档编码(如果有的话)\n5. 假定为 UTF-8 编码\n\n### 关于 @charset\n\n> Authors using an @charset rule must place the rule at the very beginning of the style sheet, preceded by no characters. (If a byte order mark is appropriate for the encoding used, it may precede the @charset rule.)\n\n> @charset must be written literally, i.e., the 10 characters '@charset \"' (lowercase, no backslash escapes), followed by the encoding name, followed by '\";'.\n\n\n* @charset规则一定要在样式文件的第一行首个字符位置开始,否则的话就会有机会让 BOM 设置生效(如果有设置 BOM 的话)而优于 @charset 作为样式表的编码\n* `@charset \"\";` 一定要写上,并且用小写字母,不能出现转义符\n\n### 团队约定\n\n* 样式文件必须写上 @charset 规则,并且一定要在样式文件的第一行首个字符位置开始写,编码名用 “UTF-8”\n* 字符 `@charset \"\";` 都用小写字母,不能出现转义符,编码名允许大小混写\n* 考虑到在使用“UTF-8”编码情况下 BOM 对代码的污染和编码显示的问题,在可控范围下,坚决不使用 BOM。(更多关于 BOM 可参考 [BOM的介绍](https://zh.wikipedia.org/wiki/%E4%BD%8D%E5%85%83%E7%B5%84%E9%A0%86%E5%BA%8F%E8%A8%98%E8%99%9F) 和 [「带 BOM 的 UTF-8」和「无 BOM 的 UTF-8」有什么区别?](http://www.zhihu.com/question/20167122) )\n\n*推荐:*\n\n```css\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n*不推荐:*\n\n```css\n/**\n * @desc File Info\n * @author Author Name\n * @date 2015-10-10\n */\n \n/* @charset规则不在文件首行首个字符开始 */\n@charset \"UTF-8\";\n\n.jdc{}\n```\n\n```css\n@CHARSET \"UTF-8\";\n/* @charset规则没有用小写 */\n\n.jdc{}\n```\n\n```css\n/* 无@charset规则 */\n.jdc{}\n```\n\n更多关于样式编码:[CSS style sheet representation](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#charset)\n\n## 代码风格\n\n### 代码格式化\n\n样式书写一般有两种:一种是紧凑格式 (Compact)\n\n```css\n.jdc{ display: block;width: 50px;}\n```\n\n一种是展开格式(Expanded)\n\n```css\n.jdc{\n display: block;\n width: 50px;\n}\n```\n\n**团队约定**\n\n统一使用展开格式书写样式\n\n\n\n### 代码大小写\n\n样式选择器,属性名,属性值关键字全部使用小写字母书写,属性字符串允许使用大小写。\n\t\n\t/* 推荐 */\n\t.jdc{\n\t\tdisplay:block;\n\t}\n\t\n\t/* 不推荐 */\n\t.JDC{\n\t\tDISPLAY:BLOCK;\n\t}\n\n### 选择器\n\n* 尽量少用通用选择器 `*`\n* 不使用 ID 选择器\n* 不使用无具体语义定义的标签选择器\n \n```\n/* 推荐 */\n.jdc {...}\n.jdc li {...}\n.jdc li p{...}\n\n/* 不推荐 */\n*{...}\n#jdc {...}\n.jdc div{...}\n```\n\t\n### 代码缩进\n\n统一使用四个空格进行代码缩进,使得各编辑器表现一致(各编辑器有相关配置)\n\n```css\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n### 分号\n\n每个属性声明末尾都要加分号;\n\n```css\n.jdc {\n width: 100%;\n height: 100%;\n}\n```\n\n### 代码易读性\n\n左括号与类名之间一个空格,冒号与属性值之间一个空格\n\n*推荐:*\n\n```css\n.jdc { \n width: 100%; \n} \n```\n\n*不推荐:*\n\n```css\n.jdc{ \n width:100%;\n} \n```\n\n\n逗号分隔的取值,逗号之后一个空格\n\n*推荐:*\n\n```css\n.jdc {\n box-shadow: 1px 1px 1px #333, 2px 2px 2px #ccc;\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n box-shadow: 1px 1px 1px #333,2px 2px 2px #ccc;\n}\n```\n\n为单个css选择器或新申明开启新行\n\n*推荐:*\n\n```css\n.jdc, \n.jdc_logo, \n.jdc_hd {\n color: #ff0;\n}\n.nav{\n color: #fff;\n}\n```\n\n*不推荐:*\n\n``` css\n.jdc,jdc_logo,.jdc_hd {\n color: #ff0;\n}.nav{\n color: #fff;\n}\n```\n\n颜色值 `rgb()` `rgba()` `hsl()` `hsla()` `rect()` 中不需有空格,且取值不要带有不必要的 0\n\n*推荐:*\n\n```css\n.jdc {\n color: rgba(255,255,255,.5);\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n color: rgba( 255, 255, 255, 0.5 );\n}\n```\n\n属性值十六进制数值能用简写的尽量用简写\n\n*推荐:*\n\n```css\n.jdc {\n color: #fff;\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n color: #ffffff;\n}\n```\n\n不要为 `0` 指明单位\n\n*推荐:*\n\n```css\n.jdc {\n margin: 0 10px;\n}\n```\n\n*不推荐:*\n\n```css\n.jdc {\n margin: 0px 10px;\n}\n```\n\n### 属性值引号\n\ncss属性值需要用到引号时,统一使用单引号\n\n```css\n/* 推荐 */\n.jdc { \n\tfont-family: 'Hiragino Sans GB';\n}\n\n/* 不推荐 */\n.jdc { \n\tfont-family: \"Hiragino Sans GB\";\n}\n```\n\n### 属性书写顺序\n\n建议遵循以下顺序:\n\n1. 布局定位属性:display / position / float / clear / visibility / overflow \n2. 自身属性:width / height / margin / padding / border / background\n3. 文本属性:color / font / text-decoration / text-align / vertical-align / white- space / break-word\n4. 其他属性(CSS3):content / cursor / border-radius / box-shadow / text-shadow / background:linear-gradient ...\n\n```css\n.jdc {\n display: block;\n position: relative;\n float: left;\n width: 100px;\n height: 100px;\n margin: 0 10px;\n padding: 20px 0;\n font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif;\n color: #333;\n background: rgba(0,0,0,.5);\n -webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n\n\n[mozilla官方属性顺序推荐](https://www.mozilla.org/css/base/content.css)\n\n### CSS3浏览器私有前缀写法\n\nCSS3 浏览器私有前缀在前,标准前缀在后\n\n```css\n.jdc {\n -webkit-border-radius: 10px;\n -moz-border-radius: 10px;\n -o-border-radius: 10px;\n -ms-border-radius: 10px;\n border-radius: 10px;\n}\n```\n更多关于浏览器私有前辍写法:[#Vendor-specific extensions](http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#vendor-keywords)\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/css/code.html","comments":1,"layout":"page","_id":"ciitvml4k000q2ufymop5z4yf"},{"title":"贡献","_content":"## 完善\n\n[凹凸实验室](http://aotu.io) 的宗旨是 `面向开放 - Open Oriented`,所以十分欢迎大家一起参与完善我们的`全栈MAC装机指南`。本文档将帮助大家了解参与的具体过程。\n\n### 开始之前\n\n本指南使用[hexo](https://hexo.io)作为静态站点引擎,请先安装hexo的本地环境。\n\n``` bash\nnpm i -g hexo-cli\n```\n\n### 如何做?\n\n1. Fork 源码[o2team/mac].\n2. 克隆Fork后的仓库至你的电脑,安装依赖包。\n\n {% code %}\n $ git clone https://github.com//mac.git\n $ cd mac\n $ npm install\n {% endcode %}\n\n3. 创建一个特性分支.\n\n {% code %}\n $ git checkout -b new_feature\n {% endcode %}\n\n4. 启动hexo服务,预览文档\n\n ``` bash\n hexo s -watch\n ```\n\n 关于hexo更多的用法,请参考hexo官网。\n \n5. 用你喜爱的编辑器在本地电脑进行文档的修改.\n6. 提交分支:\n\n {% code %}\n $ git push origin new_feature\n {% endcode %}\n \n7. 创建PR(pull request) 并描述具体的改动.\n\n\n### 注意事项\n\n- 别修改 `package.json` 中的版本号.\n- 我们在收到PR时会第一时间审核并Merge你的改动,请确保改动的地方不存在排版等问题。\n\n\n## 问题反馈\n\n在使用`全栈MAC装机指南`过程中碰到任何问题,可以到 [GitHub](https://github.com/o2team/mac/issues) 上留言提问。\n\n[o2team/mac]: https://github.com/o2team/mac\n\n## 贡献者\n\n排名不分先后。\n\n- [mamboer](https://github.com/mamboer)\n- [cnt1992](https://github.com/cnt1992)\n","source":"docs/contributing.md","raw":"title: 贡献\n---\n## 完善\n\n[凹凸实验室](http://aotu.io) 的宗旨是 `面向开放 - Open Oriented`,所以十分欢迎大家一起参与完善我们的`全栈MAC装机指南`。本文档将帮助大家了解参与的具体过程。\n\n### 开始之前\n\n本指南使用[hexo](https://hexo.io)作为静态站点引擎,请先安装hexo的本地环境。\n\n``` bash\nnpm i -g hexo-cli\n```\n\n### 如何做?\n\n1. Fork 源码[o2team/mac].\n2. 克隆Fork后的仓库至你的电脑,安装依赖包。\n\n {% code %}\n $ git clone https://github.com//mac.git\n $ cd mac\n $ npm install\n {% endcode %}\n\n3. 创建一个特性分支.\n\n {% code %}\n $ git checkout -b new_feature\n {% endcode %}\n\n4. 启动hexo服务,预览文档\n\n ``` bash\n hexo s -watch\n ```\n\n 关于hexo更多的用法,请参考hexo官网。\n \n5. 用你喜爱的编辑器在本地电脑进行文档的修改.\n6. 提交分支:\n\n {% code %}\n $ git push origin new_feature\n {% endcode %}\n \n7. 创建PR(pull request) 并描述具体的改动.\n\n\n### 注意事项\n\n- 别修改 `package.json` 中的版本号.\n- 我们在收到PR时会第一时间审核并Merge你的改动,请确保改动的地方不存在排版等问题。\n\n\n## 问题反馈\n\n在使用`全栈MAC装机指南`过程中碰到任何问题,可以到 [GitHub](https://github.com/o2team/mac/issues) 上留言提问。\n\n[o2team/mac]: https://github.com/o2team/mac\n\n## 贡献者\n\n排名不分先后。\n\n- [mamboer](https://github.com/mamboer)\n- [cnt1992](https://github.com/cnt1992)\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/contributing.html","comments":1,"layout":"page","_id":"ciitvml4m000r2ufy8oq5odsl"},{"title":"通用设置","_content":"如没有特别的标明`开发者适用`,通用设置部分内容适用于所有使用MAC工作的朋友。\n\n\n\n\n","source":"docs/common.md","raw":"title: 通用设置\n---\n如没有特别的标明`开发者适用`,通用设置部分内容适用于所有使用MAC工作的朋友。\n\n\n\n\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/common.html","comments":1,"layout":"page","_id":"ciitvml4m000s2ufywwfrzcq4"},{"title":"Markdown手册","_content":"\n> 本手册参考自 [a Gist](https://gist.github.com/jonschlinkert/5854601)。 \n\n\n# Typography \n\n## Headings\n\nHeadings from `h1` through `h6` are constructed with a `#` for each level:\n\n``` markdown\n# h1 Heading\n## h2 Heading\n### h3 Heading\n#### h4 Heading\n##### h5 Heading\n###### h6 Heading\n```\n\nRenders to:\n\n# h1 Heading\n## h2 Heading\n### h3 Heading\n#### h4 Heading\n##### h5 Heading\n###### h6 Heading\n\nHTML:\n\n``` html\n

h1 Heading

\n

h2 Heading

\n

h3 Heading

\n

h4 Heading

\n
h5 Heading
\n
h6 Heading
\n```\n\n
\n
\n
\n\n\n## Horizontal Rules\n\nThe HTML `
` element is for creating a \"thematic break\" between paragraph-level elements. In markdown, you can create a `
` with any of the following:\n\n* `___`: three consecutive underscores\n* `---`: three consecutive dashes\n* `***`: three consecutive asterisks\n\nrenders to:\n\n___\n\n---\n\n***\n\n\n
\n
\n
\n\n\n## Body Copy \n\nBody copy written as normal, plain text will be wrapped with `

` tags in the rendered HTML.\n\nSo this body copy:\n\n``` markdown\nLorem ipsum dolor sit amet, graecis denique ei vel, at duo primis mandamus. Et legere ocurreret pri, animal tacimates complectitur ad cum. Cu eum inermis inimicus efficiendi. Labore officiis his ex, soluta officiis concludaturque ei qui, vide sensibus vim ad.\n```\nrenders to this HTML:\n\n``` html\n

Lorem ipsum dolor sit amet, graecis denique ei vel, at duo primis mandamus. Et legere ocurreret pri, animal tacimates complectitur ad cum. Cu eum inermis inimicus efficiendi. Labore officiis his ex, soluta officiis concludaturque ei qui, vide sensibus vim ad.

\n```\n\n\n
\n
\n
\n\n\n## Emphasis\n\n### Bold\nFor emphasizing a snippet of text with a heavier font-weight.\n\nThe following snippet of text is **rendered as bold text**.\n\n``` markdown\n**rendered as bold text**\n```\nrenders to:\n\n**rendered as bold text**\n\nand this HTML\n\n``` html\nrendered as bold text\n```\n\n### Italics\nFor emphasizing a snippet of text with italics.\n\nThe following snippet of text is _rendered as italicized text_.\n\n``` markdown\n_rendered as italicized text_\n```\n\nrenders to:\n\n_rendered as italicized text_\n\nand this HTML:\n\n``` html\nrendered as italicized text\n```\n\n\n### strikethrough\nIn GFM you can do strickthroughs. \n\n``` markdown\n~~Strike through this text.~~\n```\nWhich renders to:\n\n~~Strike through this text.~~\n\n\n
\n
\n
\n\n\n## Blockquotes\nFor quoting blocks of content from another source within your document.\n\nAdd `>` before any text you want to quote. \n\n``` markdown\nAdd `>` before any text you want to quote. \n```\n\nRenders to:\n\n> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.\n\nand this HTML:\n\n``` html\n
\n

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.

\n
\n```\n\nBlockquotes can also be nested:\n\n``` markdown\n> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n>> Sed adipiscing elit vitae augue consectetur a gravida nunc vehicula. Donec auctor \nodio non est accumsan facilisis. Aliquam id turpis in dolor tincidunt mollis ac eu diam.\n>>> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n```\n\nRenders to:\n\n> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n>> Sed adipiscing elit vitae augue consectetur a gravida nunc vehicula. Donec auctor \nodio non est accumsan facilisis. Aliquam id turpis in dolor tincidunt mollis ac eu diam.\n>>> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n\n\n
\n
\n
\n\n\n## Lists\n\n### Unordered\nA list of items in which the order of the items does not explicitly matter.\n\nYou may use any of the following symbols to denote bullets for each list item:\n\n```markdown\n* valid bullet\n- valid bullet\n+ valid bullet\n```\n\nFor example\n\n``` markdown\n+ Lorem ipsum dolor sit amet\n+ Consectetur adipiscing elit\n+ Integer molestie lorem at massa\n+ Facilisis in pretium nisl aliquet\n+ Nulla volutpat aliquam velit\n - Phasellus iaculis neque\n - Purus sodales ultricies\n - Vestibulum laoreet porttitor sem\n - Ac tristique libero volutpat at\n+ Faucibus porta lacus fringilla vel\n+ Aenean sit amet erat nunc\n+ Eget porttitor lorem\n```\nRenders to:\n\n+ Lorem ipsum dolor sit amet\n+ Consectetur adipiscing elit\n+ Integer molestie lorem at massa\n+ Facilisis in pretium nisl aliquet\n+ Nulla volutpat aliquam velit\n - Phasellus iaculis neque\n - Purus sodales ultricies\n - Vestibulum laoreet porttitor sem\n - Ac tristique libero volutpat at\n+ Faucibus porta lacus fringilla vel\n+ Aenean sit amet erat nunc\n+ Eget porttitor lorem\n\nAnd this HTML\n\n``` html\n
    \n
  • Lorem ipsum dolor sit amet
  • \n
  • Consectetur adipiscing elit
  • \n
  • Integer molestie lorem at massa
  • \n
  • Facilisis in pretium nisl aliquet
  • \n
  • Nulla volutpat aliquam velit\n
      \n
    • Phasellus iaculis neque
    • \n
    • Purus sodales ultricies
    • \n
    • Vestibulum laoreet porttitor sem
    • \n
    • Ac tristique libero volutpat at
    • \n
    \n
  • \n
  • Faucibus porta lacus fringilla vel
  • \n
  • Aenean sit amet erat nunc
  • \n
  • Eget porttitor lorem
  • \n
\n```\n\n### Ordered\n\nA list of items in which the order of items does explicitly matter.\n\n``` markdown\n1. Lorem ipsum dolor sit amet\n2. Consectetur adipiscing elit\n3. Integer molestie lorem at massa\n4. Facilisis in pretium nisl aliquet\n5. Nulla volutpat aliquam velit\n6. Faucibus porta lacus fringilla vel\n7. Aenean sit amet erat nunc\n8. Eget porttitor lorem\n```\nRenders to:\n\n1. Lorem ipsum dolor sit amet\n2. Consectetur adipiscing elit\n3. Integer molestie lorem at massa\n4. Facilisis in pretium nisl aliquet\n5. Nulla volutpat aliquam velit\n6. Faucibus porta lacus fringilla vel\n7. Aenean sit amet erat nunc\n8. Eget porttitor lorem\n\nAnd this HTML:\n\n``` html\n
    \n
  1. Lorem ipsum dolor sit amet
  2. \n
  3. Consectetur adipiscing elit
  4. \n
  5. Integer molestie lorem at massa
  6. \n
  7. Facilisis in pretium nisl aliquet
  8. \n
  9. Nulla volutpat aliquam velit
  10. \n
  11. Faucibus porta lacus fringilla vel
  12. \n
  13. Aenean sit amet erat nunc
  14. \n
  15. Eget porttitor lorem
  16. \n
\n```\n\n**TIP**: If you just use `1.` for each number, GitHub will automatically number each item. For example:\n\n``` markdown\n1. Lorem ipsum dolor sit amet\n1. Consectetur adipiscing elit\n1. Integer molestie lorem at massa\n1. Facilisis in pretium nisl aliquet\n1. Nulla volutpat aliquam velit\n1. Faucibus porta lacus fringilla vel\n1. Aenean sit amet erat nunc\n1. Eget porttitor lorem\n```\n\nRenders to:\n\n1. Lorem ipsum dolor sit amet\n2. Consectetur adipiscing elit\n3. Integer molestie lorem at massa\n4. Facilisis in pretium nisl aliquet\n5. Nulla volutpat aliquam velit\n6. Faucibus porta lacus fringilla vel\n7. Aenean sit amet erat nunc\n8. Eget porttitor lorem\n\n\n
\n
\n
\n\n\n## Code\n\n### Inline code\nWrap inline snippets of code with `` ` ``.\n\nFor example, `
` should be wrapped as \"inline\".\n\n``` html\nFor example, `
` should be wrapped as \"inline\".\n```\n\n\n### Indented code\n\nOr indent several lines of code by at least four spaces, as in:\n\n``` js\n // Some comments\n line 1 of code\n line 2 of code\n line 3 of code\n```\n\n // Some comments\n line 1 of code\n line 2 of code\n line 3 of code\n\n\n### Block code \"fences\"\n\nUse \"fences\" ```` ``` ```` to block in multiple lines of code. \n\n
\n``` html\nSample text here...\n```\n
\n\n\n```\nSample text here...\n```\n\nHTML:\n\n``` html\n
\n  

Sample text here...

\n
\n```\n\n### Syntax highlighting\n\nGFM, or \"GitHub Flavored Markdown\" also supports syntax highlighting. To activate it, simply add the file extension of the language you want to use directly after the first code \"fence\", ` ``` js `, and syntax highlighting will automatically be applied in the rendered HTML. For example, to apply syntax highlighting to JavaScript code:\n\n
\n``` javascript\ngrunt.initConfig({\n  assemble: {\n    options: {\n      assets: 'docs/assets',\n      data: 'src/data/*.{json,yml}',\n      helpers: 'src/custom-helpers.js',\n      partials: ['src/partials/**/*.{hbs,md}']\n    },\n    pages: {\n      options: {\n        layout: 'default.hbs'\n      },\n      files: {\n        './': ['src/templates/pages/index.hbs']\n      }\n    }\n  }\n};\n```\n
\n\nRenders to:\n\n``` javascript\ngrunt.initConfig({\n assemble: {\n options: {\n assets: 'docs/assets',\n data: 'src/data/*.{json,yml}',\n helpers: 'src/custom-helpers.js',\n partials: ['src/partials/**/*.{hbs,md}']\n },\n pages: {\n options: {\n layout: 'default.hbs'\n },\n files: {\n './': ['src/templates/pages/index.hbs']\n }\n }\n }\n};\n```\n\nAnd this complicated HTML:\n\n``` xml\n
grunt.initConfig({\n  assemble: {\n    options: {\n      assets: 'docs/assets',\n      data: 'src/data/*.{json,yml}',\n      helpers: 'src/custom-helpers.js',\n      partials: ['src/partials/**/*.{hbs,md}']\n    },\n    pages: {\n      options: {\n        layout: 'default.hbs'\n      },\n      files: {\n        './': ['src/templates/pages/index.hbs']\n      }\n    }\n  }\n};\n
\n```\n\n\n
\n
\n
\n\n\n\n## Tables\nTables are created by adding pipes as dividers between each cell, and by adding a line of dashes (also separated by bars) beneath the header. Note that the pipes do not need to be vertically aligned.\n\n\n``` markdown\n| Option | Description |\n| ------ | ----------- |\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n```\n\nRenders to:\n\n| Option | Description |\n| ------ | ----------- |\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n\nAnd this HTML:\n\n``` html\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
OptionDescription
datapath to data files to supply the data that will be passed into templates.
engineengine to be used for processing templates. Handlebars is the default.
extextension to be used for dest files.
\n```\n\n### Right aligned text\n\nAdding a colon on the right side of the dashes below any heading will right align text for that column.\n\n``` markdown\n| Option | Description |\n| ------:| -----------:|\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n```\n\n| Option | Description |\n| ------:| -----------:|\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n\n\n
\n
\n
\n\n\n## Links\n\n### Basic link\n\n``` markdown\n[Assemble](http://assemble.io)\n```\n\nRenders to (hover over the link, there is no tooltip):\n\n[Assemble](http://assemble.io)\n\nHTML:\n\n``` html\nAssemble\n```\n\n\n### Add a title\n\n``` markdown\n[Upstage](https://github.com/upstage/ \"Visit Upstage!\")\n```\n\nRenders to (hover over the link, there should be a tooltip):\n\n[Upstage](https://github.com/upstage/ \"Visit Upstage!\")\n\nHTML:\n\n``` html\nUpstage\n```\n\n### Named Anchors\n\nNamed anchors enable you to jump to the specified anchor point on the same page. For example, each of these chapters:\n\n```markdown\n# Table of Contents\n * [Chapter 1](#chapter-1)\n * [Chapter 2](#chapter-2)\n * [Chapter 3](#chapter-3)\n```\nwill jump to these sections:\n\n```markdown\n## Chapter 1 \nContent for chapter one.\n\n## Chapter 2 \nContent for chapter one.\n\n## Chapter 3 \nContent for chapter one.\n```\n**NOTE** that specific placement of the anchor tag seems to be arbitrary. They are placed inline here since it seems to be unobtrusive, and it works.\n\n\n
\n
\n
\n\n\n## Images\nImages have a similar syntax to links but include a preceding exclamation point.\n\n``` markdown\n![Minion](http://octodex.github.com/images/minion.png)\n```\n![Minion](http://octodex.github.com/images/minion.png)\n\nor\n``` markdown\n![Alt text](http://octodex.github.com/images/stormtroopocat.jpg \"The Stormtroopocat\")\n```\n![Alt text](http://octodex.github.com/images/stormtroopocat.jpg \"The Stormtroopocat\")\n\nLike links, Images also have a footnote style syntax\n\n``` markdown\n![Alt text][id]\n```\n![Alt text][id]\n\nWith a reference later in the document defining the URL location:\n\n[id]: http://octodex.github.com/images/dojocat.jpg \"The Dojocat\"\n\n\n [id]: http://octodex.github.com/images/dojocat.jpg \"The Dojocat\"\n\n","source":"docs/common/markdown.md","raw":"title: Markdown手册 \n---\n\n> 本手册参考自 [a Gist](https://gist.github.com/jonschlinkert/5854601)。 \n\n\n# Typography \n\n## Headings\n\nHeadings from `h1` through `h6` are constructed with a `#` for each level:\n\n``` markdown\n# h1 Heading\n## h2 Heading\n### h3 Heading\n#### h4 Heading\n##### h5 Heading\n###### h6 Heading\n```\n\nRenders to:\n\n# h1 Heading\n## h2 Heading\n### h3 Heading\n#### h4 Heading\n##### h5 Heading\n###### h6 Heading\n\nHTML:\n\n``` html\n

h1 Heading

\n

h2 Heading

\n

h3 Heading

\n

h4 Heading

\n
h5 Heading
\n
h6 Heading
\n```\n\n
\n
\n
\n\n\n## Horizontal Rules\n\nThe HTML `
` element is for creating a \"thematic break\" between paragraph-level elements. In markdown, you can create a `
` with any of the following:\n\n* `___`: three consecutive underscores\n* `---`: three consecutive dashes\n* `***`: three consecutive asterisks\n\nrenders to:\n\n___\n\n---\n\n***\n\n\n
\n
\n
\n\n\n## Body Copy \n\nBody copy written as normal, plain text will be wrapped with `

` tags in the rendered HTML.\n\nSo this body copy:\n\n``` markdown\nLorem ipsum dolor sit amet, graecis denique ei vel, at duo primis mandamus. Et legere ocurreret pri, animal tacimates complectitur ad cum. Cu eum inermis inimicus efficiendi. Labore officiis his ex, soluta officiis concludaturque ei qui, vide sensibus vim ad.\n```\nrenders to this HTML:\n\n``` html\n

Lorem ipsum dolor sit amet, graecis denique ei vel, at duo primis mandamus. Et legere ocurreret pri, animal tacimates complectitur ad cum. Cu eum inermis inimicus efficiendi. Labore officiis his ex, soluta officiis concludaturque ei qui, vide sensibus vim ad.

\n```\n\n\n
\n
\n
\n\n\n## Emphasis\n\n### Bold\nFor emphasizing a snippet of text with a heavier font-weight.\n\nThe following snippet of text is **rendered as bold text**.\n\n``` markdown\n**rendered as bold text**\n```\nrenders to:\n\n**rendered as bold text**\n\nand this HTML\n\n``` html\nrendered as bold text\n```\n\n### Italics\nFor emphasizing a snippet of text with italics.\n\nThe following snippet of text is _rendered as italicized text_.\n\n``` markdown\n_rendered as italicized text_\n```\n\nrenders to:\n\n_rendered as italicized text_\n\nand this HTML:\n\n``` html\nrendered as italicized text\n```\n\n\n### strikethrough\nIn GFM you can do strickthroughs. \n\n``` markdown\n~~Strike through this text.~~\n```\nWhich renders to:\n\n~~Strike through this text.~~\n\n\n
\n
\n
\n\n\n## Blockquotes\nFor quoting blocks of content from another source within your document.\n\nAdd `>` before any text you want to quote. \n\n``` markdown\nAdd `>` before any text you want to quote. \n```\n\nRenders to:\n\n> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.\n\nand this HTML:\n\n``` html\n
\n

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.

\n
\n```\n\nBlockquotes can also be nested:\n\n``` markdown\n> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n>> Sed adipiscing elit vitae augue consectetur a gravida nunc vehicula. Donec auctor \nodio non est accumsan facilisis. Aliquam id turpis in dolor tincidunt mollis ac eu diam.\n>>> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n```\n\nRenders to:\n\n> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n>> Sed adipiscing elit vitae augue consectetur a gravida nunc vehicula. Donec auctor \nodio non est accumsan facilisis. Aliquam id turpis in dolor tincidunt mollis ac eu diam.\n>>> Donec massa lacus, ultricies a ullamcorper in, fermentum sed augue. \nNunc augue augue, aliquam non hendrerit ac, commodo vel nisi. \n\n\n
\n
\n
\n\n\n## Lists\n\n### Unordered\nA list of items in which the order of the items does not explicitly matter.\n\nYou may use any of the following symbols to denote bullets for each list item:\n\n```markdown\n* valid bullet\n- valid bullet\n+ valid bullet\n```\n\nFor example\n\n``` markdown\n+ Lorem ipsum dolor sit amet\n+ Consectetur adipiscing elit\n+ Integer molestie lorem at massa\n+ Facilisis in pretium nisl aliquet\n+ Nulla volutpat aliquam velit\n - Phasellus iaculis neque\n - Purus sodales ultricies\n - Vestibulum laoreet porttitor sem\n - Ac tristique libero volutpat at\n+ Faucibus porta lacus fringilla vel\n+ Aenean sit amet erat nunc\n+ Eget porttitor lorem\n```\nRenders to:\n\n+ Lorem ipsum dolor sit amet\n+ Consectetur adipiscing elit\n+ Integer molestie lorem at massa\n+ Facilisis in pretium nisl aliquet\n+ Nulla volutpat aliquam velit\n - Phasellus iaculis neque\n - Purus sodales ultricies\n - Vestibulum laoreet porttitor sem\n - Ac tristique libero volutpat at\n+ Faucibus porta lacus fringilla vel\n+ Aenean sit amet erat nunc\n+ Eget porttitor lorem\n\nAnd this HTML\n\n``` html\n
    \n
  • Lorem ipsum dolor sit amet
  • \n
  • Consectetur adipiscing elit
  • \n
  • Integer molestie lorem at massa
  • \n
  • Facilisis in pretium nisl aliquet
  • \n
  • Nulla volutpat aliquam velit\n
      \n
    • Phasellus iaculis neque
    • \n
    • Purus sodales ultricies
    • \n
    • Vestibulum laoreet porttitor sem
    • \n
    • Ac tristique libero volutpat at
    • \n
    \n
  • \n
  • Faucibus porta lacus fringilla vel
  • \n
  • Aenean sit amet erat nunc
  • \n
  • Eget porttitor lorem
  • \n
\n```\n\n### Ordered\n\nA list of items in which the order of items does explicitly matter.\n\n``` markdown\n1. Lorem ipsum dolor sit amet\n2. Consectetur adipiscing elit\n3. Integer molestie lorem at massa\n4. Facilisis in pretium nisl aliquet\n5. Nulla volutpat aliquam velit\n6. Faucibus porta lacus fringilla vel\n7. Aenean sit amet erat nunc\n8. Eget porttitor lorem\n```\nRenders to:\n\n1. Lorem ipsum dolor sit amet\n2. Consectetur adipiscing elit\n3. Integer molestie lorem at massa\n4. Facilisis in pretium nisl aliquet\n5. Nulla volutpat aliquam velit\n6. Faucibus porta lacus fringilla vel\n7. Aenean sit amet erat nunc\n8. Eget porttitor lorem\n\nAnd this HTML:\n\n``` html\n
    \n
  1. Lorem ipsum dolor sit amet
  2. \n
  3. Consectetur adipiscing elit
  4. \n
  5. Integer molestie lorem at massa
  6. \n
  7. Facilisis in pretium nisl aliquet
  8. \n
  9. Nulla volutpat aliquam velit
  10. \n
  11. Faucibus porta lacus fringilla vel
  12. \n
  13. Aenean sit amet erat nunc
  14. \n
  15. Eget porttitor lorem
  16. \n
\n```\n\n**TIP**: If you just use `1.` for each number, GitHub will automatically number each item. For example:\n\n``` markdown\n1. Lorem ipsum dolor sit amet\n1. Consectetur adipiscing elit\n1. Integer molestie lorem at massa\n1. Facilisis in pretium nisl aliquet\n1. Nulla volutpat aliquam velit\n1. Faucibus porta lacus fringilla vel\n1. Aenean sit amet erat nunc\n1. Eget porttitor lorem\n```\n\nRenders to:\n\n1. Lorem ipsum dolor sit amet\n2. Consectetur adipiscing elit\n3. Integer molestie lorem at massa\n4. Facilisis in pretium nisl aliquet\n5. Nulla volutpat aliquam velit\n6. Faucibus porta lacus fringilla vel\n7. Aenean sit amet erat nunc\n8. Eget porttitor lorem\n\n\n
\n
\n
\n\n\n## Code\n\n### Inline code\nWrap inline snippets of code with `` ` ``.\n\nFor example, `
` should be wrapped as \"inline\".\n\n``` html\nFor example, `
` should be wrapped as \"inline\".\n```\n\n\n### Indented code\n\nOr indent several lines of code by at least four spaces, as in:\n\n``` js\n // Some comments\n line 1 of code\n line 2 of code\n line 3 of code\n```\n\n // Some comments\n line 1 of code\n line 2 of code\n line 3 of code\n\n\n### Block code \"fences\"\n\nUse \"fences\" ```` ``` ```` to block in multiple lines of code. \n\n
\n``` html\nSample text here...\n```\n
\n\n\n```\nSample text here...\n```\n\nHTML:\n\n``` html\n
\n  

Sample text here...

\n
\n```\n\n### Syntax highlighting\n\nGFM, or \"GitHub Flavored Markdown\" also supports syntax highlighting. To activate it, simply add the file extension of the language you want to use directly after the first code \"fence\", ` ``` js `, and syntax highlighting will automatically be applied in the rendered HTML. For example, to apply syntax highlighting to JavaScript code:\n\n
\n``` javascript\ngrunt.initConfig({\n  assemble: {\n    options: {\n      assets: 'docs/assets',\n      data: 'src/data/*.{json,yml}',\n      helpers: 'src/custom-helpers.js',\n      partials: ['src/partials/**/*.{hbs,md}']\n    },\n    pages: {\n      options: {\n        layout: 'default.hbs'\n      },\n      files: {\n        './': ['src/templates/pages/index.hbs']\n      }\n    }\n  }\n};\n```\n
\n\nRenders to:\n\n``` javascript\ngrunt.initConfig({\n assemble: {\n options: {\n assets: 'docs/assets',\n data: 'src/data/*.{json,yml}',\n helpers: 'src/custom-helpers.js',\n partials: ['src/partials/**/*.{hbs,md}']\n },\n pages: {\n options: {\n layout: 'default.hbs'\n },\n files: {\n './': ['src/templates/pages/index.hbs']\n }\n }\n }\n};\n```\n\nAnd this complicated HTML:\n\n``` xml\n
grunt.initConfig({\n  assemble: {\n    options: {\n      assets: 'docs/assets',\n      data: 'src/data/*.{json,yml}',\n      helpers: 'src/custom-helpers.js',\n      partials: ['src/partials/**/*.{hbs,md}']\n    },\n    pages: {\n      options: {\n        layout: 'default.hbs'\n      },\n      files: {\n        './': ['src/templates/pages/index.hbs']\n      }\n    }\n  }\n};\n
\n```\n\n\n
\n
\n
\n\n\n\n## Tables\nTables are created by adding pipes as dividers between each cell, and by adding a line of dashes (also separated by bars) beneath the header. Note that the pipes do not need to be vertically aligned.\n\n\n``` markdown\n| Option | Description |\n| ------ | ----------- |\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n```\n\nRenders to:\n\n| Option | Description |\n| ------ | ----------- |\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n\nAnd this HTML:\n\n``` html\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
OptionDescription
datapath to data files to supply the data that will be passed into templates.
engineengine to be used for processing templates. Handlebars is the default.
extextension to be used for dest files.
\n```\n\n### Right aligned text\n\nAdding a colon on the right side of the dashes below any heading will right align text for that column.\n\n``` markdown\n| Option | Description |\n| ------:| -----------:|\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n```\n\n| Option | Description |\n| ------:| -----------:|\n| data | path to data files to supply the data that will be passed into templates. |\n| engine | engine to be used for processing templates. Handlebars is the default. |\n| ext | extension to be used for dest files. |\n\n\n
\n
\n
\n\n\n## Links\n\n### Basic link\n\n``` markdown\n[Assemble](http://assemble.io)\n```\n\nRenders to (hover over the link, there is no tooltip):\n\n[Assemble](http://assemble.io)\n\nHTML:\n\n``` html\nAssemble\n```\n\n\n### Add a title\n\n``` markdown\n[Upstage](https://github.com/upstage/ \"Visit Upstage!\")\n```\n\nRenders to (hover over the link, there should be a tooltip):\n\n[Upstage](https://github.com/upstage/ \"Visit Upstage!\")\n\nHTML:\n\n``` html\nUpstage\n```\n\n### Named Anchors\n\nNamed anchors enable you to jump to the specified anchor point on the same page. For example, each of these chapters:\n\n```markdown\n# Table of Contents\n * [Chapter 1](#chapter-1)\n * [Chapter 2](#chapter-2)\n * [Chapter 3](#chapter-3)\n```\nwill jump to these sections:\n\n```markdown\n## Chapter 1 \nContent for chapter one.\n\n## Chapter 2 \nContent for chapter one.\n\n## Chapter 3 \nContent for chapter one.\n```\n**NOTE** that specific placement of the anchor tag seems to be arbitrary. They are placed inline here since it seems to be unobtrusive, and it works.\n\n\n
\n
\n
\n\n\n## Images\nImages have a similar syntax to links but include a preceding exclamation point.\n\n``` markdown\n![Minion](http://octodex.github.com/images/minion.png)\n```\n![Minion](http://octodex.github.com/images/minion.png)\n\nor\n``` markdown\n![Alt text](http://octodex.github.com/images/stormtroopocat.jpg \"The Stormtroopocat\")\n```\n![Alt text](http://octodex.github.com/images/stormtroopocat.jpg \"The Stormtroopocat\")\n\nLike links, Images also have a footnote style syntax\n\n``` markdown\n![Alt text][id]\n```\n![Alt text][id]\n\nWith a reference later in the document defining the URL location:\n\n[id]: http://octodex.github.com/images/dojocat.jpg \"The Dojocat\"\n\n\n [id]: http://octodex.github.com/images/dojocat.jpg \"The Dojocat\"\n\n","date":"2015-12-16T09:49:06.000Z","updated":"2015-12-16T09:49:06.000Z","path":"docs/common/markdown.html","comments":1,"layout":"page","_id":"ciitvml4o000t2ufyfu5t4zn5"}],"Post":[{"title":"V1.0.0 Beta Released","layout":"post","_content":"\n`MAC全栈开发环境搭建指南` 中英双语V1.0.0 Beta版本发布。感谢各位开源贡献人员。\n\n## 特性\n\n- 中文双语版本\n\n 英文为简版,6级刚刚及格抱歉了~\n 欢迎英文达人参与 `MAC全栈开发环境搭建指南` 的维护。\n\n- 修复了配置站点根目录为网站子目录时切换语言404的bug。\n- 去掉了retinajs的特性,现在srcset支持不错,没必要使用retinajs做响应式图片加载。\n","source":"_posts/2015-11-15-beta-released.md","raw":"title: V1.0.0 Beta Released\nlayout: post\n---\n\n`MAC全栈开发环境搭建指南` 中英双语V1.0.0 Beta版本发布。感谢各位开源贡献人员。\n\n## 特性\n\n- 中文双语版本\n\n 英文为简版,6级刚刚及格抱歉了~\n 欢迎英文达人参与 `MAC全栈开发环境搭建指南` 的维护。\n\n- 修复了配置站点根目录为网站子目录时切换语言404的bug。\n- 去掉了retinajs的特性,现在srcset支持不错,没必要使用retinajs做响应式图片加载。\n","slug":"beta-released","published":1,"date":"2015-11-15T00:00:00.000Z","updated":"2015-12-16T09:49:06.000Z","comments":1,"photos":[],"link":"","_id":"ciitvml4s000u2ufy9vq7to3f"},{"title":"V1.0.0 Preview (预览版)","layout":"post","_content":"\n`MAC全栈开发环境搭建指南` 中文预览版发布。感谢各位开源贡献人员。\n\n## 特性\n\n- **[HEXO](https://github.com/hexojs/hexo)**: 使用hexo作为指南的静态站点引擎。\n- 按照工作角色将指南分为通用、交互、视觉、前端开发、后台开发等几个部分。\n- 修复了hexo文档大纲的bug。\n","source":"_posts/2015-11-13-first-released.md","raw":"title: V1.0.0 Preview (预览版)\nlayout: post\n---\n\n`MAC全栈开发环境搭建指南` 中文预览版发布。感谢各位开源贡献人员。\n\n## 特性\n\n- **[HEXO](https://github.com/hexojs/hexo)**: 使用hexo作为指南的静态站点引擎。\n- 按照工作角色将指南分为通用、交互、视觉、前端开发、后台开发等几个部分。\n- 修复了hexo文档大纲的bug。\n","slug":"first-released","published":1,"date":"2015-11-13T00:00:00.000Z","updated":"2015-12-16T09:49:06.000Z","comments":1,"photos":[],"link":"","_id":"ciitvml4y000v2ufyd3qjucjn"}],"PostAsset":[],"PostCategory":[],"PostTag":[],"Tag":[]}} \ No newline at end of file From c4f48726bb33103ad3cbb3459ca0b21147871f7d Mon Sep 17 00:00:00 2001 From: waileung Date: Wed, 6 Jan 2016 16:15:15 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E5=88=A0=E9=99=A4=E7=94=9F=E6=88=90?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../assets/bootstrap/css/bootstrap-theme.css | 587 -- .../bootstrap/css/bootstrap-theme.css.map | 1 - .../bootstrap/css/bootstrap-theme.min.css | 5 - public/assets/bootstrap/css/bootstrap.css | 6800 ------------ public/assets/bootstrap/css/bootstrap.css.map | 1 - public/assets/bootstrap/css/bootstrap.min.css | 5 - .../fonts/glyphicons-halflings-regular.eot | Bin 20127 -> 0 bytes .../fonts/glyphicons-halflings-regular.svg | 288 - .../fonts/glyphicons-halflings-regular.ttf | Bin 45404 -> 0 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 23424 -> 0 bytes .../fonts/glyphicons-halflings-regular.woff2 | Bin 18028 -> 0 bytes public/assets/bootstrap/js/bootstrap.js | 2363 ----- public/assets/bootstrap/js/bootstrap.min.js | 7 - public/assets/bootstrap/js/npm.js | 13 - public/atom.xml | 60 - public/browserconfig.xml | 12 - public/css/navy.css | 3704 ------- public/docs/common.html | 215 - public/docs/common/markdown.html | 448 - public/docs/contributing.html | 265 - public/docs/css/code.html | 325 - public/docs/css/jdc_fd_guide_css.html | 493 - public/docs/css/note.html | 235 - public/docs/css/query.html | 235 - public/docs/css/reset.html | 216 - public/docs/css/sass.html | 261 - public/docs/css/webkit.html | 215 - public/docs/html/code.html | 356 - public/docs/html/jdc_fd_web_final_2.html | 632 -- public/docs/html/note.html | 257 - public/docs/html/template.html | 220 - public/docs/html/webapp.html | 277 - public/docs/image/format.html | 287 - public/docs/image/import.html | 279 - public/docs/image/jdc_fd_guide_image.html | 354 - public/docs/image/quality.html | 221 - public/docs/image/size.html | 244 - public/docs/index.html | 234 - public/docs/issues.html | 221 - public/docs/name/classname.html | 672 -- public/docs/name/dir.html | 236 - public/docs/name/htmlcss.html | 218 - public/docs/name/image.html | 345 - public/docs/name/jdc_fd_guide_name.html | 815 -- public/favicon.ico | Bin 381 -> 0 bytes public/fonts/FontAwesome.otf | Bin 106260 -> 0 bytes public/fonts/fontawesome-webfont.eot | Bin 68875 -> 0 bytes public/fonts/fontawesome-webfont.svg | 640 -- public/fonts/fontawesome-webfont.ttf | Bin 138204 -> 0 bytes public/fonts/fontawesome-webfont.woff | Bin 81284 -> 0 bytes public/fonts/fontawesome-webfont.woff2 | Bin 64464 -> 0 bytes ...ANxSmnAhzbFH8PgLUuEpTyoUstqEm5AMlJo4.woff2 | Bin 18908 -> 0 bytes ...rk_5HEcCpYdJu8BTbgVql8nDJpwnrE27mub0.woff2 | Bin 2768 -> 0 bytes ...I1cMoAHxvl0w9LVKPGs1ZzpMvnHX-7fPOuAc.woff2 | Bin 3380 -> 0 bytes ...Q_3oT6kvnUq_2r_esZW2xOQ-xsNqO47m55DA.woff2 | Bin 16436 -> 0 bytes ...1C_tIEuLEmicLmwLUuEpTyoUstqEm5AMlJo4.woff2 | Bin 16392 -> 0 bytes ...Xi8zxUjnybc2ZQFKPGs1ZzpMvnHX-7fPOuAc.woff2 | Bin 2808 -> 0 bytes public/img/android-chrome-144x144.png | Bin 2450 -> 0 bytes public/img/android-chrome-192x192.png | Bin 3402 -> 0 bytes public/img/android-chrome-36x36.png | Bin 604 -> 0 bytes public/img/android-chrome-48x48.png | Bin 745 -> 0 bytes public/img/android-chrome-72x72.png | Bin 1122 -> 0 bytes public/img/android-chrome-96x96.png | Bin 1516 -> 0 bytes public/img/apple-touch-icon-114x114.png | Bin 1937 -> 0 bytes public/img/apple-touch-icon-120x120.png | Bin 1929 -> 0 bytes public/img/apple-touch-icon-144x144.png | Bin 2450 -> 0 bytes public/img/apple-touch-icon-152x152.png | Bin 2584 -> 0 bytes public/img/apple-touch-icon-180x180.png | Bin 3006 -> 0 bytes public/img/apple-touch-icon-57x57.png | Bin 967 -> 0 bytes public/img/apple-touch-icon-60x60.png | Bin 946 -> 0 bytes public/img/apple-touch-icon-72x72.png | Bin 1122 -> 0 bytes public/img/apple-touch-icon-76x76.png | Bin 1222 -> 0 bytes public/img/apple-touch-icon-precomposed.png | Bin 3006 -> 0 bytes public/img/apple-touch-icon.png | Bin 3006 -> 0 bytes .../apple-touch-startup-image-1182x2208.png | Bin 59537 -> 0 bytes .../apple-touch-startup-image-1242x2148.png | Bin 59315 -> 0 bytes .../apple-touch-startup-image-1496x2048.png | Bin 80684 -> 0 bytes .../apple-touch-startup-image-1536x2008.png | Bin 77547 -> 0 bytes .../img/apple-touch-startup-image-320x460.png | Bin 7482 -> 0 bytes .../apple-touch-startup-image-640x1096.png | Bin 21993 -> 0 bytes .../img/apple-touch-startup-image-640x920.png | Bin 20961 -> 0 bytes .../apple-touch-startup-image-748x1024.png | Bin 28222 -> 0 bytes .../apple-touch-startup-image-750x1294.png | Bin 27804 -> 0 bytes .../apple-touch-startup-image-768x1004.png | Bin 27426 -> 0 bytes public/img/browserconfig.xml | 15 - public/img/coast-228x228.png | Bin 4340 -> 0 bytes public/img/favicon-16x16.png | Bin 262 -> 0 bytes public/img/favicon-230x230.png | Bin 4345 -> 0 bytes public/img/favicon-32x32.png | Bin 502 -> 0 bytes public/img/favicon-96x96.png | Bin 1516 -> 0 bytes public/img/favicon.ico | Bin 262 -> 0 bytes public/img/firefox_app_128x128.png | Bin 2079 -> 0 bytes public/img/firefox_app_512x512.png | Bin 13977 -> 0 bytes public/img/firefox_app_60x60.png | Bin 946 -> 0 bytes public/img/logo.png | Bin 2130 -> 0 bytes public/img/manifest.json | 1 - public/img/manifest.webapp | 14 - public/img/mstile-144x144.png | Bin 2450 -> 0 bytes public/img/mstile-150x150.png | Bin 5435 -> 0 bytes public/img/mstile-310x150.png | Bin 5945 -> 0 bytes public/img/mstile-310x310.png | Bin 15767 -> 0 bytes public/img/mstile-70x70.png | Bin 2079 -> 0 bytes public/img/open-graph.png | Bin 70183 -> 0 bytes public/img/twitter.png | Bin 26291 -> 0 bytes public/img/yandex-browser-50x50.png | Bin 764 -> 0 bytes public/img/yandex-browser-manifest.json | 1 - public/index.html | 202 - public/js/hammer.js | 2463 ----- public/js/jquery.js | 9210 ----------------- public/js/lang_select.js | 15 - public/js/lunr.js | 1968 ---- public/js/mobile_nav.js | 30 - public/js/plugins.js | 79 - public/js/toc.js | 45 - .../news/2015/11/13/first-released/index.html | 205 - .../news/2015/11/15/beta-released/index.html | 217 - public/news/2015/11/index.html | 211 - public/news/2015/index.html | 211 - public/news/index.html | 211 - public/plugins/index.html | 1252 --- public/robots.txt | 4 - public/sitemap.xml | 164 - public/themes/index.html | 727 -- 123 files changed, 40507 deletions(-) delete mode 100644 public/assets/bootstrap/css/bootstrap-theme.css delete mode 100644 public/assets/bootstrap/css/bootstrap-theme.css.map delete mode 100644 public/assets/bootstrap/css/bootstrap-theme.min.css delete mode 100644 public/assets/bootstrap/css/bootstrap.css delete mode 100644 public/assets/bootstrap/css/bootstrap.css.map delete mode 100644 public/assets/bootstrap/css/bootstrap.min.css delete mode 100644 public/assets/bootstrap/fonts/glyphicons-halflings-regular.eot delete mode 100644 public/assets/bootstrap/fonts/glyphicons-halflings-regular.svg delete mode 100644 public/assets/bootstrap/fonts/glyphicons-halflings-regular.ttf delete mode 100644 public/assets/bootstrap/fonts/glyphicons-halflings-regular.woff delete mode 100644 public/assets/bootstrap/fonts/glyphicons-halflings-regular.woff2 delete mode 100644 public/assets/bootstrap/js/bootstrap.js delete mode 100644 public/assets/bootstrap/js/bootstrap.min.js delete mode 100644 public/assets/bootstrap/js/npm.js delete mode 100644 public/atom.xml delete mode 100644 public/browserconfig.xml delete mode 100644 public/css/navy.css delete mode 100644 public/docs/common.html delete mode 100644 public/docs/common/markdown.html delete mode 100644 public/docs/contributing.html delete mode 100644 public/docs/css/code.html delete mode 100644 public/docs/css/jdc_fd_guide_css.html delete mode 100644 public/docs/css/note.html delete mode 100644 public/docs/css/query.html delete mode 100644 public/docs/css/reset.html delete mode 100644 public/docs/css/sass.html delete mode 100644 public/docs/css/webkit.html delete mode 100644 public/docs/html/code.html delete mode 100644 public/docs/html/jdc_fd_web_final_2.html delete mode 100644 public/docs/html/note.html delete mode 100644 public/docs/html/template.html delete mode 100644 public/docs/html/webapp.html delete mode 100644 public/docs/image/format.html delete mode 100644 public/docs/image/import.html delete mode 100644 public/docs/image/jdc_fd_guide_image.html delete mode 100644 public/docs/image/quality.html delete mode 100644 public/docs/image/size.html delete mode 100644 public/docs/index.html delete mode 100644 public/docs/issues.html delete mode 100644 public/docs/name/classname.html delete mode 100644 public/docs/name/dir.html delete mode 100644 public/docs/name/htmlcss.html delete mode 100644 public/docs/name/image.html delete mode 100644 public/docs/name/jdc_fd_guide_name.html delete mode 100644 public/favicon.ico delete mode 100644 public/fonts/FontAwesome.otf delete mode 100644 public/fonts/fontawesome-webfont.eot delete mode 100644 public/fonts/fontawesome-webfont.svg delete mode 100644 public/fonts/fontawesome-webfont.ttf delete mode 100644 public/fonts/fontawesome-webfont.woff delete mode 100644 public/fonts/fontawesome-webfont.woff2 delete mode 100644 public/fonts/lato/v11/22JRxvfANxSmnAhzbFH8PgLUuEpTyoUstqEm5AMlJo4.woff2 delete mode 100644 public/fonts/lato/v11/8qcEw_nrk_5HEcCpYdJu8BTbgVql8nDJpwnrE27mub0.woff2 delete mode 100644 public/fonts/lato/v11/IY9HZVvI1cMoAHxvl0w9LVKPGs1ZzpMvnHX-7fPOuAc.woff2 delete mode 100644 public/fonts/lato/v11/MDadn8DQ_3oT6kvnUq_2r_esZW2xOQ-xsNqO47m55DA.woff2 delete mode 100644 public/fonts/lato/v11/MgNNr5y1C_tIEuLEmicLmwLUuEpTyoUstqEm5AMlJo4.woff2 delete mode 100644 public/fonts/lato/v11/rZPI2gHXi8zxUjnybc2ZQFKPGs1ZzpMvnHX-7fPOuAc.woff2 delete mode 100644 public/img/android-chrome-144x144.png delete mode 100644 public/img/android-chrome-192x192.png delete mode 100644 public/img/android-chrome-36x36.png delete mode 100644 public/img/android-chrome-48x48.png delete mode 100644 public/img/android-chrome-72x72.png delete mode 100644 public/img/android-chrome-96x96.png delete mode 100644 public/img/apple-touch-icon-114x114.png delete mode 100644 public/img/apple-touch-icon-120x120.png delete mode 100644 public/img/apple-touch-icon-144x144.png delete mode 100644 public/img/apple-touch-icon-152x152.png delete mode 100644 public/img/apple-touch-icon-180x180.png delete mode 100644 public/img/apple-touch-icon-57x57.png delete mode 100644 public/img/apple-touch-icon-60x60.png delete mode 100644 public/img/apple-touch-icon-72x72.png delete mode 100644 public/img/apple-touch-icon-76x76.png delete mode 100644 public/img/apple-touch-icon-precomposed.png delete mode 100644 public/img/apple-touch-icon.png delete mode 100644 public/img/apple-touch-startup-image-1182x2208.png delete mode 100644 public/img/apple-touch-startup-image-1242x2148.png delete mode 100644 public/img/apple-touch-startup-image-1496x2048.png delete mode 100644 public/img/apple-touch-startup-image-1536x2008.png delete mode 100644 public/img/apple-touch-startup-image-320x460.png delete mode 100644 public/img/apple-touch-startup-image-640x1096.png delete mode 100644 public/img/apple-touch-startup-image-640x920.png delete mode 100644 public/img/apple-touch-startup-image-748x1024.png delete mode 100644 public/img/apple-touch-startup-image-750x1294.png delete mode 100644 public/img/apple-touch-startup-image-768x1004.png delete mode 100644 public/img/browserconfig.xml delete mode 100644 public/img/coast-228x228.png delete mode 100644 public/img/favicon-16x16.png delete mode 100644 public/img/favicon-230x230.png delete mode 100644 public/img/favicon-32x32.png delete mode 100644 public/img/favicon-96x96.png delete mode 100644 public/img/favicon.ico delete mode 100644 public/img/firefox_app_128x128.png delete mode 100644 public/img/firefox_app_512x512.png delete mode 100644 public/img/firefox_app_60x60.png delete mode 100644 public/img/logo.png delete mode 100644 public/img/manifest.json delete mode 100644 public/img/manifest.webapp delete mode 100644 public/img/mstile-144x144.png delete mode 100644 public/img/mstile-150x150.png delete mode 100644 public/img/mstile-310x150.png delete mode 100644 public/img/mstile-310x310.png delete mode 100644 public/img/mstile-70x70.png delete mode 100644 public/img/open-graph.png delete mode 100644 public/img/twitter.png delete mode 100644 public/img/yandex-browser-50x50.png delete mode 100644 public/img/yandex-browser-manifest.json delete mode 100644 public/index.html delete mode 100644 public/js/hammer.js delete mode 100644 public/js/jquery.js delete mode 100644 public/js/lang_select.js delete mode 100644 public/js/lunr.js delete mode 100644 public/js/mobile_nav.js delete mode 100644 public/js/plugins.js delete mode 100644 public/js/toc.js delete mode 100644 public/news/2015/11/13/first-released/index.html delete mode 100644 public/news/2015/11/15/beta-released/index.html delete mode 100644 public/news/2015/11/index.html delete mode 100644 public/news/2015/index.html delete mode 100644 public/news/index.html delete mode 100644 public/plugins/index.html delete mode 100644 public/robots.txt delete mode 100644 public/sitemap.xml delete mode 100644 public/themes/index.html diff --git a/public/assets/bootstrap/css/bootstrap-theme.css b/public/assets/bootstrap/css/bootstrap-theme.css deleted file mode 100644 index c19cd5c..0000000 --- a/public/assets/bootstrap/css/bootstrap-theme.css +++ /dev/null @@ -1,587 +0,0 @@ -/*! - * Bootstrap v3.3.5 (http://getbootstrap.com) - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */ -.btn-default, -.btn-primary, -.btn-success, -.btn-info, -.btn-warning, -.btn-danger { - text-shadow: 0 -1px 0 rgba(0, 0, 0, .2); - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075); -} -.btn-default:active, -.btn-primary:active, -.btn-success:active, -.btn-info:active, -.btn-warning:active, -.btn-danger:active, -.btn-default.active, -.btn-primary.active, -.btn-success.active, -.btn-info.active, -.btn-warning.active, -.btn-danger.active { - -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); - box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); -} -.btn-default.disabled, -.btn-primary.disabled, -.btn-success.disabled, -.btn-info.disabled, -.btn-warning.disabled, -.btn-danger.disabled, -.btn-default[disabled], -.btn-primary[disabled], -.btn-success[disabled], -.btn-info[disabled], -.btn-warning[disabled], -.btn-danger[disabled], -fieldset[disabled] .btn-default, -fieldset[disabled] .btn-primary, -fieldset[disabled] .btn-success, -fieldset[disabled] .btn-info, -fieldset[disabled] .btn-warning, -fieldset[disabled] .btn-danger { - -webkit-box-shadow: none; - box-shadow: none; -} -.btn-default .badge, -.btn-primary .badge, -.btn-success .badge, -.btn-info .badge, -.btn-warning .badge, -.btn-danger .badge { - text-shadow: none; -} -.btn:active, -.btn.active { - background-image: none; -} -.btn-default { - text-shadow: 0 1px 0 #fff; - background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%); - background-image: -o-linear-gradient(top, #fff 0%, #e0e0e0 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0)); - background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); - background-repeat: repeat-x; - border-color: #dbdbdb; - border-color: #ccc; -} -.btn-default:hover, -.btn-default:focus { - background-color: #e0e0e0; - background-position: 0 -15px; -} -.btn-default:active, -.btn-default.active { - background-color: #e0e0e0; - border-color: #dbdbdb; -} -.btn-default.disabled, -.btn-default[disabled], -fieldset[disabled] .btn-default, -.btn-default.disabled:hover, -.btn-default[disabled]:hover, -fieldset[disabled] .btn-default:hover, -.btn-default.disabled:focus, -.btn-default[disabled]:focus, -fieldset[disabled] .btn-default:focus, -.btn-default.disabled.focus, -.btn-default[disabled].focus, -fieldset[disabled] .btn-default.focus, -.btn-default.disabled:active, -.btn-default[disabled]:active, -fieldset[disabled] .btn-default:active, -.btn-default.disabled.active, -.btn-default[disabled].active, -fieldset[disabled] .btn-default.active { - background-color: #e0e0e0; - background-image: none; -} -.btn-primary { - background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%); - background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#265a88)); - background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); - background-repeat: repeat-x; - border-color: #245580; -} -.btn-primary:hover, -.btn-primary:focus { - background-color: #265a88; - background-position: 0 -15px; -} -.btn-primary:active, -.btn-primary.active { - background-color: #265a88; - border-color: #245580; -} -.btn-primary.disabled, -.btn-primary[disabled], -fieldset[disabled] .btn-primary, -.btn-primary.disabled:hover, -.btn-primary[disabled]:hover, -fieldset[disabled] .btn-primary:hover, -.btn-primary.disabled:focus, -.btn-primary[disabled]:focus, -fieldset[disabled] .btn-primary:focus, -.btn-primary.disabled.focus, -.btn-primary[disabled].focus, -fieldset[disabled] .btn-primary.focus, -.btn-primary.disabled:active, -.btn-primary[disabled]:active, -fieldset[disabled] .btn-primary:active, -.btn-primary.disabled.active, -.btn-primary[disabled].active, -fieldset[disabled] .btn-primary.active { - background-color: #265a88; - background-image: none; -} -.btn-success { - background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%); - background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#419641)); - background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); - background-repeat: repeat-x; - border-color: #3e8f3e; -} -.btn-success:hover, -.btn-success:focus { - background-color: #419641; - background-position: 0 -15px; -} -.btn-success:active, -.btn-success.active { - background-color: #419641; - border-color: #3e8f3e; -} -.btn-success.disabled, -.btn-success[disabled], -fieldset[disabled] .btn-success, -.btn-success.disabled:hover, -.btn-success[disabled]:hover, -fieldset[disabled] .btn-success:hover, -.btn-success.disabled:focus, -.btn-success[disabled]:focus, -fieldset[disabled] .btn-success:focus, -.btn-success.disabled.focus, -.btn-success[disabled].focus, -fieldset[disabled] .btn-success.focus, -.btn-success.disabled:active, -.btn-success[disabled]:active, -fieldset[disabled] .btn-success:active, -.btn-success.disabled.active, -.btn-success[disabled].active, -fieldset[disabled] .btn-success.active { - background-color: #419641; - background-image: none; -} -.btn-info { - background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); - background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#2aabd2)); - background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); - background-repeat: repeat-x; - border-color: #28a4c9; -} -.btn-info:hover, -.btn-info:focus { - background-color: #2aabd2; - background-position: 0 -15px; -} -.btn-info:active, -.btn-info.active { - background-color: #2aabd2; - border-color: #28a4c9; -} -.btn-info.disabled, -.btn-info[disabled], -fieldset[disabled] .btn-info, -.btn-info.disabled:hover, -.btn-info[disabled]:hover, -fieldset[disabled] .btn-info:hover, -.btn-info.disabled:focus, -.btn-info[disabled]:focus, -fieldset[disabled] .btn-info:focus, -.btn-info.disabled.focus, -.btn-info[disabled].focus, -fieldset[disabled] .btn-info.focus, -.btn-info.disabled:active, -.btn-info[disabled]:active, -fieldset[disabled] .btn-info:active, -.btn-info.disabled.active, -.btn-info[disabled].active, -fieldset[disabled] .btn-info.active { - background-color: #2aabd2; - background-image: none; -} -.btn-warning { - background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); - background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#eb9316)); - background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); - background-repeat: repeat-x; - border-color: #e38d13; -} -.btn-warning:hover, -.btn-warning:focus { - background-color: #eb9316; - background-position: 0 -15px; -} -.btn-warning:active, -.btn-warning.active { - background-color: #eb9316; - border-color: #e38d13; -} -.btn-warning.disabled, -.btn-warning[disabled], -fieldset[disabled] .btn-warning, -.btn-warning.disabled:hover, -.btn-warning[disabled]:hover, -fieldset[disabled] .btn-warning:hover, -.btn-warning.disabled:focus, -.btn-warning[disabled]:focus, -fieldset[disabled] .btn-warning:focus, -.btn-warning.disabled.focus, -.btn-warning[disabled].focus, -fieldset[disabled] .btn-warning.focus, -.btn-warning.disabled:active, -.btn-warning[disabled]:active, -fieldset[disabled] .btn-warning:active, -.btn-warning.disabled.active, -.btn-warning[disabled].active, -fieldset[disabled] .btn-warning.active { - background-color: #eb9316; - background-image: none; -} -.btn-danger { - background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%); - background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c12e2a)); - background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); - background-repeat: repeat-x; - border-color: #b92c28; -} -.btn-danger:hover, -.btn-danger:focus { - background-color: #c12e2a; - background-position: 0 -15px; -} -.btn-danger:active, -.btn-danger.active { - background-color: #c12e2a; - border-color: #b92c28; -} -.btn-danger.disabled, -.btn-danger[disabled], -fieldset[disabled] .btn-danger, -.btn-danger.disabled:hover, -.btn-danger[disabled]:hover, -fieldset[disabled] .btn-danger:hover, -.btn-danger.disabled:focus, -.btn-danger[disabled]:focus, -fieldset[disabled] .btn-danger:focus, -.btn-danger.disabled.focus, -.btn-danger[disabled].focus, -fieldset[disabled] .btn-danger.focus, -.btn-danger.disabled:active, -.btn-danger[disabled]:active, -fieldset[disabled] .btn-danger:active, -.btn-danger.disabled.active, -.btn-danger[disabled].active, -fieldset[disabled] .btn-danger.active { - background-color: #c12e2a; - background-image: none; -} -.thumbnail, -.img-thumbnail { - -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); - box-shadow: 0 1px 2px rgba(0, 0, 0, .075); -} -.dropdown-menu > li > a:hover, -.dropdown-menu > li > a:focus { - background-color: #e8e8e8; - background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); - background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); - background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); - background-repeat: repeat-x; -} -.dropdown-menu > .active > a, -.dropdown-menu > .active > a:hover, -.dropdown-menu > .active > a:focus { - background-color: #2e6da4; - background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); - background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); - background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); - background-repeat: repeat-x; -} -.navbar-default { - background-image: -webkit-linear-gradient(top, #fff 0%, #f8f8f8 100%); - background-image: -o-linear-gradient(top, #fff 0%, #f8f8f8 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f8f8f8)); - background-image: linear-gradient(to bottom, #fff 0%, #f8f8f8 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); - background-repeat: repeat-x; - border-radius: 4px; - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 5px rgba(0, 0, 0, .075); -} -.navbar-default .navbar-nav > .open > a, -.navbar-default .navbar-nav > .active > a { - background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); - background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#dbdbdb), to(#e2e2e2)); - background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0); - background-repeat: repeat-x; - -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); - box-shadow: inset 0 3px 9px rgba(0, 0, 0, .075); -} -.navbar-brand, -.navbar-nav > li > a { - text-shadow: 0 1px 0 rgba(255, 255, 255, .25); -} -.navbar-inverse { - background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222 100%); - background-image: -o-linear-gradient(top, #3c3c3c 0%, #222 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#3c3c3c), to(#222)); - background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); - background-repeat: repeat-x; - border-radius: 4px; -} -.navbar-inverse .navbar-nav > .open > a, -.navbar-inverse .navbar-nav > .active > a { - background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%); - background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#080808), to(#0f0f0f)); - background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0); - background-repeat: repeat-x; - -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); - box-shadow: inset 0 3px 9px rgba(0, 0, 0, .25); -} -.navbar-inverse .navbar-brand, -.navbar-inverse .navbar-nav > li > a { - text-shadow: 0 -1px 0 rgba(0, 0, 0, .25); -} -.navbar-static-top, -.navbar-fixed-top, -.navbar-fixed-bottom { - border-radius: 0; -} -@media (max-width: 767px) { - .navbar .navbar-nav .open .dropdown-menu > .active > a, - .navbar .navbar-nav .open .dropdown-menu > .active > a:hover, - .navbar .navbar-nav .open .dropdown-menu > .active > a:focus { - color: #fff; - background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); - background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); - background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); - background-repeat: repeat-x; - } -} -.alert { - text-shadow: 0 1px 0 rgba(255, 255, 255, .2); - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 1px 2px rgba(0, 0, 0, .05); -} -.alert-success { - background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); - background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#c8e5bc)); - background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0); - background-repeat: repeat-x; - border-color: #b2dba1; -} -.alert-info { - background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%); - background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#b9def0)); - background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0); - background-repeat: repeat-x; - border-color: #9acfea; -} -.alert-warning { - background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); - background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#f8efc0)); - background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0); - background-repeat: repeat-x; - border-color: #f5e79e; -} -.alert-danger { - background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); - background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#e7c3c3)); - background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0); - background-repeat: repeat-x; - border-color: #dca7a7; -} -.progress { - background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); - background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#ebebeb), to(#f5f5f5)); - background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0); - background-repeat: repeat-x; -} -.progress-bar { - background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%); - background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#286090)); - background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0); - background-repeat: repeat-x; -} -.progress-bar-success { - background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%); - background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#5cb85c), to(#449d44)); - background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0); - background-repeat: repeat-x; -} -.progress-bar-info { - background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); - background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#5bc0de), to(#31b0d5)); - background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0); - background-repeat: repeat-x; -} -.progress-bar-warning { - background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); - background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#f0ad4e), to(#ec971f)); - background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0); - background-repeat: repeat-x; -} -.progress-bar-danger { - background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%); - background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#d9534f), to(#c9302c)); - background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0); - background-repeat: repeat-x; -} -.progress-bar-striped { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); -} -.list-group { - border-radius: 4px; - -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .075); - box-shadow: 0 1px 2px rgba(0, 0, 0, .075); -} -.list-group-item.active, -.list-group-item.active:hover, -.list-group-item.active:focus { - text-shadow: 0 -1px 0 #286090; - background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%); - background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2b669a)); - background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0); - background-repeat: repeat-x; - border-color: #2b669a; -} -.list-group-item.active .badge, -.list-group-item.active:hover .badge, -.list-group-item.active:focus .badge { - text-shadow: none; -} -.panel { - -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, .05); - box-shadow: 0 1px 2px rgba(0, 0, 0, .05); -} -.panel-default > .panel-heading { - background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); - background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8)); - background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0); - background-repeat: repeat-x; -} -.panel-primary > .panel-heading { - background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%); - background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4)); - background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0); - background-repeat: repeat-x; -} -.panel-success > .panel-heading { - background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); - background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#dff0d8), to(#d0e9c6)); - background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0); - background-repeat: repeat-x; -} -.panel-info > .panel-heading { - background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); - background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#d9edf7), to(#c4e3f3)); - background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0); - background-repeat: repeat-x; -} -.panel-warning > .panel-heading { - background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); - background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#fcf8e3), to(#faf2cc)); - background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0); - background-repeat: repeat-x; -} -.panel-danger > .panel-heading { - background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%); - background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#f2dede), to(#ebcccc)); - background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0); - background-repeat: repeat-x; -} -.well { - background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); - background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%); - background-image: -webkit-gradient(linear, left top, left bottom, from(#e8e8e8), to(#f5f5f5)); - background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0); - background-repeat: repeat-x; - border-color: #dcdcdc; - -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); - box-shadow: inset 0 1px 3px rgba(0, 0, 0, .05), 0 1px 0 rgba(255, 255, 255, .1); -} -/*# sourceMappingURL=bootstrap-theme.css.map */ diff --git a/public/assets/bootstrap/css/bootstrap-theme.css.map b/public/assets/bootstrap/css/bootstrap-theme.css.map deleted file mode 100644 index 7535311..0000000 --- a/public/assets/bootstrap/css/bootstrap-theme.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["bootstrap-theme.css","less/theme.less","less/mixins/vendor-prefixes.less","less/mixins/gradients.less","less/mixins/reset-filter.less"],"names":[],"mappings":"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","file":"bootstrap-theme.css","sourcesContent":["/*!\n * Bootstrap v3.3.5 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.btn-default:active,\n.btn-primary:active,\n.btn-success:active,\n.btn-info:active,\n.btn-warning:active,\n.btn-danger:active,\n.btn-default.active,\n.btn-primary.active,\n.btn-success.active,\n.btn-info.active,\n.btn-warning.active,\n.btn-danger.active {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-default.disabled,\n.btn-primary.disabled,\n.btn-success.disabled,\n.btn-info.disabled,\n.btn-warning.disabled,\n.btn-danger.disabled,\n.btn-default[disabled],\n.btn-primary[disabled],\n.btn-success[disabled],\n.btn-info[disabled],\n.btn-warning[disabled],\n.btn-danger[disabled],\nfieldset[disabled] .btn-default,\nfieldset[disabled] .btn-primary,\nfieldset[disabled] .btn-success,\nfieldset[disabled] .btn-info,\nfieldset[disabled] .btn-warning,\nfieldset[disabled] .btn-danger {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-default .badge,\n.btn-primary .badge,\n.btn-success .badge,\n.btn-info .badge,\n.btn-warning .badge,\n.btn-danger .badge {\n text-shadow: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n}\n.btn-default {\n background-image: -webkit-linear-gradient(top, #ffffff 0%, #e0e0e0 100%);\n background-image: -o-linear-gradient(top, #ffffff 0%, #e0e0e0 100%);\n background-image: linear-gradient(to bottom, #ffffff 0%, #e0e0e0 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #dbdbdb;\n text-shadow: 0 1px 0 #fff;\n border-color: #ccc;\n}\n.btn-default:hover,\n.btn-default:focus {\n background-color: #e0e0e0;\n background-position: 0 -15px;\n}\n.btn-default:active,\n.btn-default.active {\n background-color: #e0e0e0;\n border-color: #dbdbdb;\n}\n.btn-default.disabled,\n.btn-default[disabled],\nfieldset[disabled] .btn-default,\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus,\n.btn-default.disabled:active,\n.btn-default[disabled]:active,\nfieldset[disabled] .btn-default:active,\n.btn-default.disabled.active,\n.btn-default[disabled].active,\nfieldset[disabled] .btn-default.active {\n background-color: #e0e0e0;\n background-image: none;\n}\n.btn-primary {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #265a88 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #265a88 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #245580;\n}\n.btn-primary:hover,\n.btn-primary:focus {\n background-color: #265a88;\n background-position: 0 -15px;\n}\n.btn-primary:active,\n.btn-primary.active {\n background-color: #265a88;\n border-color: #245580;\n}\n.btn-primary.disabled,\n.btn-primary[disabled],\nfieldset[disabled] .btn-primary,\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus,\n.btn-primary.disabled:active,\n.btn-primary[disabled]:active,\nfieldset[disabled] .btn-primary:active,\n.btn-primary.disabled.active,\n.btn-primary[disabled].active,\nfieldset[disabled] .btn-primary.active {\n background-color: #265a88;\n background-image: none;\n}\n.btn-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #419641 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #3e8f3e;\n}\n.btn-success:hover,\n.btn-success:focus {\n background-color: #419641;\n background-position: 0 -15px;\n}\n.btn-success:active,\n.btn-success.active {\n background-color: #419641;\n border-color: #3e8f3e;\n}\n.btn-success.disabled,\n.btn-success[disabled],\nfieldset[disabled] .btn-success,\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus,\n.btn-success.disabled:active,\n.btn-success[disabled]:active,\nfieldset[disabled] .btn-success:active,\n.btn-success.disabled.active,\n.btn-success[disabled].active,\nfieldset[disabled] .btn-success.active {\n background-color: #419641;\n background-image: none;\n}\n.btn-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #2aabd2 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #28a4c9;\n}\n.btn-info:hover,\n.btn-info:focus {\n background-color: #2aabd2;\n background-position: 0 -15px;\n}\n.btn-info:active,\n.btn-info.active {\n background-color: #2aabd2;\n border-color: #28a4c9;\n}\n.btn-info.disabled,\n.btn-info[disabled],\nfieldset[disabled] .btn-info,\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus,\n.btn-info.disabled:active,\n.btn-info[disabled]:active,\nfieldset[disabled] .btn-info:active,\n.btn-info.disabled.active,\n.btn-info[disabled].active,\nfieldset[disabled] .btn-info.active {\n background-color: #2aabd2;\n background-image: none;\n}\n.btn-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #eb9316 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #e38d13;\n}\n.btn-warning:hover,\n.btn-warning:focus {\n background-color: #eb9316;\n background-position: 0 -15px;\n}\n.btn-warning:active,\n.btn-warning.active {\n background-color: #eb9316;\n border-color: #e38d13;\n}\n.btn-warning.disabled,\n.btn-warning[disabled],\nfieldset[disabled] .btn-warning,\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus,\n.btn-warning.disabled:active,\n.btn-warning[disabled]:active,\nfieldset[disabled] .btn-warning:active,\n.btn-warning.disabled.active,\n.btn-warning[disabled].active,\nfieldset[disabled] .btn-warning.active {\n background-color: #eb9316;\n background-image: none;\n}\n.btn-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c12e2a 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n background-repeat: repeat-x;\n border-color: #b92c28;\n}\n.btn-danger:hover,\n.btn-danger:focus {\n background-color: #c12e2a;\n background-position: 0 -15px;\n}\n.btn-danger:active,\n.btn-danger.active {\n background-color: #c12e2a;\n border-color: #b92c28;\n}\n.btn-danger.disabled,\n.btn-danger[disabled],\nfieldset[disabled] .btn-danger,\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus,\n.btn-danger.disabled:active,\n.btn-danger[disabled]:active,\nfieldset[disabled] .btn-danger:active,\n.btn-danger.disabled.active,\n.btn-danger[disabled].active,\nfieldset[disabled] .btn-danger.active {\n background-color: #c12e2a;\n background-image: none;\n}\n.thumbnail,\n.img-thumbnail {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n background-color: #e8e8e8;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n background-color: #2e6da4;\n}\n.navbar-default {\n background-image: -webkit-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: -o-linear-gradient(top, #ffffff 0%, #f8f8f8 100%);\n background-image: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075);\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: -o-linear-gradient(top, #dbdbdb 0%, #e2e2e2 100%);\n background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075);\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25);\n}\n.navbar-inverse {\n background-image: -webkit-linear-gradient(top, #3c3c3c 0%, #222222 100%);\n background-image: -o-linear-gradient(top, #3c3c3c 0%, #222222 100%);\n background-image: linear-gradient(to bottom, #3c3c3c 0%, #222222 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n border-radius: 4px;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .active > a {\n background-image: -webkit-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: -o-linear-gradient(top, #080808 0%, #0f0f0f 100%);\n background-image: linear-gradient(to bottom, #080808 0%, #0f0f0f 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);\n -webkit-box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25);\n}\n.navbar-inverse .navbar-brand,\n.navbar-inverse .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n@media (max-width: 767px) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n }\n}\n.alert {\n text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.alert-success {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #c8e5bc 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);\n border-color: #b2dba1;\n}\n.alert-info {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #b9def0 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);\n border-color: #9acfea;\n}\n.alert-warning {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #f8efc0 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);\n border-color: #f5e79e;\n}\n.alert-danger {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #e7c3c3 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);\n border-color: #dca7a7;\n}\n.progress {\n background-image: -webkit-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #ebebeb 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);\n}\n.progress-bar {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #286090 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #286090 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);\n}\n.progress-bar-success {\n background-image: -webkit-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: -o-linear-gradient(top, #5cb85c 0%, #449d44 100%);\n background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);\n}\n.progress-bar-info {\n background-image: -webkit-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: -o-linear-gradient(top, #5bc0de 0%, #31b0d5 100%);\n background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);\n}\n.progress-bar-warning {\n background-image: -webkit-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: -o-linear-gradient(top, #f0ad4e 0%, #ec971f 100%);\n background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);\n}\n.progress-bar-danger {\n background-image: -webkit-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: -o-linear-gradient(top, #d9534f 0%, #c9302c 100%);\n background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);\n}\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.list-group {\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075);\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 #286090;\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2b669a 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2b669a 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);\n border-color: #2b669a;\n}\n.list-group-item.active .badge,\n.list-group-item.active:hover .badge,\n.list-group-item.active:focus .badge {\n text-shadow: none;\n}\n.panel {\n -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n}\n.panel-default > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);\n background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);\n}\n.panel-primary > .panel-heading {\n background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);\n background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);\n}\n.panel-success > .panel-heading {\n background-image: -webkit-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: -o-linear-gradient(top, #dff0d8 0%, #d0e9c6 100%);\n background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);\n}\n.panel-info > .panel-heading {\n background-image: -webkit-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: -o-linear-gradient(top, #d9edf7 0%, #c4e3f3 100%);\n background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);\n}\n.panel-warning > .panel-heading {\n background-image: -webkit-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: -o-linear-gradient(top, #fcf8e3 0%, #faf2cc 100%);\n background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);\n}\n.panel-danger > .panel-heading {\n background-image: -webkit-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: -o-linear-gradient(top, #f2dede 0%, #ebcccc 100%);\n background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);\n}\n.well {\n background-image: -webkit-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: -o-linear-gradient(top, #e8e8e8 0%, #f5f5f5 100%);\n background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);\n border-color: #dcdcdc;\n -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1);\n}\n/*# sourceMappingURL=bootstrap-theme.css.map */","/*!\n * Bootstrap v3.3.5 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n//\n// Load core variables and mixins\n// --------------------------------------------------\n\n@import \"variables.less\";\n@import \"mixins.less\";\n\n\n//\n// Buttons\n// --------------------------------------------------\n\n// Common styles\n.btn-default,\n.btn-primary,\n.btn-success,\n.btn-info,\n.btn-warning,\n.btn-danger {\n text-shadow: 0 -1px 0 rgba(0,0,0,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 1px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n // Reset the shadow\n &:active,\n &.active {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n .box-shadow(none);\n }\n\n .badge {\n text-shadow: none;\n }\n}\n\n// Mixin for generating new styles\n.btn-styles(@btn-color: #555) {\n #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));\n .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620\n background-repeat: repeat-x;\n border-color: darken(@btn-color, 14%);\n\n &:hover,\n &:focus {\n background-color: darken(@btn-color, 12%);\n background-position: 0 -15px;\n }\n\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n border-color: darken(@btn-color, 14%);\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &,\n &:hover,\n &:focus,\n &.focus,\n &:active,\n &.active {\n background-color: darken(@btn-color, 12%);\n background-image: none;\n }\n }\n}\n\n// Common styles\n.btn {\n // Remove the gradient for the pressed/active state\n &:active,\n &.active {\n background-image: none;\n }\n}\n\n// Apply the mixin to the buttons\n.btn-default { .btn-styles(@btn-default-bg); text-shadow: 0 1px 0 #fff; border-color: #ccc; }\n.btn-primary { .btn-styles(@btn-primary-bg); }\n.btn-success { .btn-styles(@btn-success-bg); }\n.btn-info { .btn-styles(@btn-info-bg); }\n.btn-warning { .btn-styles(@btn-warning-bg); }\n.btn-danger { .btn-styles(@btn-danger-bg); }\n\n\n//\n// Images\n// --------------------------------------------------\n\n.thumbnail,\n.img-thumbnail {\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n\n\n//\n// Dropdowns\n// --------------------------------------------------\n\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-hover-bg; @end-color: darken(@dropdown-link-hover-bg, 5%));\n background-color: darken(@dropdown-link-hover-bg, 5%);\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n background-color: darken(@dropdown-link-active-bg, 5%);\n}\n\n\n//\n// Navbar\n// --------------------------------------------------\n\n// Default navbar\n.navbar-default {\n #gradient > .vertical(@start-color: lighten(@navbar-default-bg, 10%); @end-color: @navbar-default-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered\n border-radius: @navbar-border-radius;\n @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);\n .box-shadow(@shadow);\n\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-bg, 2%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.075));\n }\n}\n.navbar-brand,\n.navbar-nav > li > a {\n text-shadow: 0 1px 0 rgba(255,255,255,.25);\n}\n\n// Inverted navbar\n.navbar-inverse {\n #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);\n .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257\n border-radius: @navbar-border-radius;\n .navbar-nav > .open > a,\n .navbar-nav > .active > a {\n #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));\n .box-shadow(inset 0 3px 9px rgba(0,0,0,.25));\n }\n\n .navbar-brand,\n .navbar-nav > li > a {\n text-shadow: 0 -1px 0 rgba(0,0,0,.25);\n }\n}\n\n// Undo rounded corners in static and fixed navbars\n.navbar-static-top,\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n border-radius: 0;\n}\n\n// Fix active state of dropdown items in collapsed mode\n@media (max-width: @grid-float-breakpoint-max) {\n .navbar .navbar-nav .open .dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: #fff;\n #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));\n }\n }\n}\n\n\n//\n// Alerts\n// --------------------------------------------------\n\n// Common styles\n.alert {\n text-shadow: 0 1px 0 rgba(255,255,255,.2);\n @shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 1px 2px rgba(0,0,0,.05);\n .box-shadow(@shadow);\n}\n\n// Mixin for generating new styles\n.alert-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 7.5%));\n border-color: darken(@color, 15%);\n}\n\n// Apply the mixin to the alerts\n.alert-success { .alert-styles(@alert-success-bg); }\n.alert-info { .alert-styles(@alert-info-bg); }\n.alert-warning { .alert-styles(@alert-warning-bg); }\n.alert-danger { .alert-styles(@alert-danger-bg); }\n\n\n//\n// Progress bars\n// --------------------------------------------------\n\n// Give the progress background some depth\n.progress {\n #gradient > .vertical(@start-color: darken(@progress-bg, 4%); @end-color: @progress-bg)\n}\n\n// Mixin for generating new styles\n.progress-bar-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 10%));\n}\n\n// Apply the mixin to the progress bars\n.progress-bar { .progress-bar-styles(@progress-bar-bg); }\n.progress-bar-success { .progress-bar-styles(@progress-bar-success-bg); }\n.progress-bar-info { .progress-bar-styles(@progress-bar-info-bg); }\n.progress-bar-warning { .progress-bar-styles(@progress-bar-warning-bg); }\n.progress-bar-danger { .progress-bar-styles(@progress-bar-danger-bg); }\n\n// Reset the striped class because our mixins don't do multiple gradients and\n// the above custom styles override the new `.progress-bar-striped` in v3.2.0.\n.progress-bar-striped {\n #gradient > .striped();\n}\n\n\n//\n// List groups\n// --------------------------------------------------\n\n.list-group {\n border-radius: @border-radius-base;\n .box-shadow(0 1px 2px rgba(0,0,0,.075));\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);\n #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));\n border-color: darken(@list-group-active-border, 7.5%);\n\n .badge {\n text-shadow: none;\n }\n}\n\n\n//\n// Panels\n// --------------------------------------------------\n\n// Common styles\n.panel {\n .box-shadow(0 1px 2px rgba(0,0,0,.05));\n}\n\n// Mixin for generating new styles\n.panel-heading-styles(@color) {\n #gradient > .vertical(@start-color: @color; @end-color: darken(@color, 5%));\n}\n\n// Apply the mixin to the panel headings only\n.panel-default > .panel-heading { .panel-heading-styles(@panel-default-heading-bg); }\n.panel-primary > .panel-heading { .panel-heading-styles(@panel-primary-heading-bg); }\n.panel-success > .panel-heading { .panel-heading-styles(@panel-success-heading-bg); }\n.panel-info > .panel-heading { .panel-heading-styles(@panel-info-heading-bg); }\n.panel-warning > .panel-heading { .panel-heading-styles(@panel-warning-heading-bg); }\n.panel-danger > .panel-heading { .panel-heading-styles(@panel-danger-heading-bg); }\n\n\n//\n// Wells\n// --------------------------------------------------\n\n.well {\n #gradient > .vertical(@start-color: darken(@well-bg, 5%); @end-color: @well-bg);\n border-color: darken(@well-bg, 10%);\n @shadow: inset 0 1px 3px rgba(0,0,0,.05), 0 1px 0 rgba(255,255,255,.1);\n .box-shadow(@shadow);\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They will be removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility){\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// Gradients\n\n#gradient {\n\n // Horizontal gradient, from left to right\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .horizontal(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(left, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to right, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n // Vertical gradient, from top to bottom\n //\n // Creates two color stops, start and end, by specifying a color and position for each color stop.\n // Color stops are not available in IE9 and below.\n .vertical(@start-color: #555; @end-color: #333; @start-percent: 0%; @end-percent: 100%) {\n background-image: -webkit-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(top, @start-color @start-percent, @end-color @end-percent); // Opera 12\n background-image: linear-gradient(to bottom, @start-color @start-percent, @end-color @end-percent); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n background-repeat: repeat-x;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down\n }\n\n .directional(@start-color: #555; @end-color: #333; @deg: 45deg) {\n background-repeat: repeat-x;\n background-image: -webkit-linear-gradient(@deg, @start-color, @end-color); // Safari 5.1-6, Chrome 10+\n background-image: -o-linear-gradient(@deg, @start-color, @end-color); // Opera 12\n background-image: linear-gradient(@deg, @start-color, @end-color); // Standard, IE10, Firefox 16+, Opera 12.10+, Safari 7+, Chrome 26+\n }\n .horizontal-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(left, @start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(to right, @start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .vertical-three-colors(@start-color: #00b3ee; @mid-color: #7a43b6; @color-stop: 50%; @end-color: #c3325f) {\n background-image: -webkit-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: -o-linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-image: linear-gradient(@start-color, @mid-color @color-stop, @end-color);\n background-repeat: no-repeat;\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)\",argb(@start-color),argb(@end-color))); // IE9 and down, gets no color-stop at all for proper fallback\n }\n .radial(@inner-color: #555; @outer-color: #333) {\n background-image: -webkit-radial-gradient(circle, @inner-color, @outer-color);\n background-image: radial-gradient(circle, @inner-color, @outer-color);\n background-repeat: no-repeat;\n }\n .striped(@color: rgba(255,255,255,.15); @angle: 45deg) {\n background-image: -webkit-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n background-image: linear-gradient(@angle, @color 25%, transparent 25%, transparent 50%, @color 50%, @color 75%, transparent 75%, transparent);\n }\n}\n","// Reset filters for IE\n//\n// When you need to remove a gradient background, do not forget to use this to reset\n// the IE filter for IE9 and below.\n\n.reset-filter() {\n filter: e(%(\"progid:DXImageTransform.Microsoft.gradient(enabled = false)\"));\n}\n"]} \ No newline at end of file diff --git a/public/assets/bootstrap/css/bootstrap-theme.min.css b/public/assets/bootstrap/css/bootstrap-theme.min.css deleted file mode 100644 index 61358b1..0000000 --- a/public/assets/bootstrap/css/bootstrap-theme.min.css +++ /dev/null @@ -1,5 +0,0 @@ -/*! - * Bootstrap v3.3.5 (http://getbootstrap.com) - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */.btn-danger,.btn-default,.btn-info,.btn-primary,.btn-success,.btn-warning{text-shadow:0 -1px 0 rgba(0,0,0,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 1px rgba(0,0,0,.075)}.btn-danger.active,.btn-danger:active,.btn-default.active,.btn-default:active,.btn-info.active,.btn-info:active,.btn-primary.active,.btn-primary:active,.btn-success.active,.btn-success:active,.btn-warning.active,.btn-warning:active{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-danger.disabled,.btn-danger[disabled],.btn-default.disabled,.btn-default[disabled],.btn-info.disabled,.btn-info[disabled],.btn-primary.disabled,.btn-primary[disabled],.btn-success.disabled,.btn-success[disabled],.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-danger,fieldset[disabled] .btn-default,fieldset[disabled] .btn-info,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-success,fieldset[disabled] .btn-warning{-webkit-box-shadow:none;box-shadow:none}.btn-danger .badge,.btn-default .badge,.btn-info .badge,.btn-primary .badge,.btn-success .badge,.btn-warning .badge{text-shadow:none}.btn.active,.btn:active{background-image:none}.btn-default{text-shadow:0 1px 0 #fff;background-image:-webkit-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-o-linear-gradient(top,#fff 0,#e0e0e0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#e0e0e0));background-image:linear-gradient(to bottom,#fff 0,#e0e0e0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#dbdbdb;border-color:#ccc}.btn-default:focus,.btn-default:hover{background-color:#e0e0e0;background-position:0 -15px}.btn-default.active,.btn-default:active{background-color:#e0e0e0;border-color:#dbdbdb}.btn-default.disabled,.btn-default.disabled.active,.btn-default.disabled.focus,.btn-default.disabled:active,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled],.btn-default[disabled].active,.btn-default[disabled].focus,.btn-default[disabled]:active,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default,fieldset[disabled] .btn-default.active,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:active,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#e0e0e0;background-image:none}.btn-primary{background-image:-webkit-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-o-linear-gradient(top,#337ab7 0,#265a88 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#265a88));background-image:linear-gradient(to bottom,#337ab7 0,#265a88 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff265a88', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#245580}.btn-primary:focus,.btn-primary:hover{background-color:#265a88;background-position:0 -15px}.btn-primary.active,.btn-primary:active{background-color:#265a88;border-color:#245580}.btn-primary.disabled,.btn-primary.disabled.active,.btn-primary.disabled.focus,.btn-primary.disabled:active,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled],.btn-primary[disabled].active,.btn-primary[disabled].focus,.btn-primary[disabled]:active,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary,fieldset[disabled] .btn-primary.active,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:active,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#265a88;background-image:none}.btn-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#419641 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#419641));background-image:linear-gradient(to bottom,#5cb85c 0,#419641 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff419641', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#3e8f3e}.btn-success:focus,.btn-success:hover{background-color:#419641;background-position:0 -15px}.btn-success.active,.btn-success:active{background-color:#419641;border-color:#3e8f3e}.btn-success.disabled,.btn-success.disabled.active,.btn-success.disabled.focus,.btn-success.disabled:active,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled],.btn-success[disabled].active,.btn-success[disabled].focus,.btn-success[disabled]:active,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success,fieldset[disabled] .btn-success.active,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:active,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#419641;background-image:none}.btn-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#2aabd2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#2aabd2));background-image:linear-gradient(to bottom,#5bc0de 0,#2aabd2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2aabd2', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#28a4c9}.btn-info:focus,.btn-info:hover{background-color:#2aabd2;background-position:0 -15px}.btn-info.active,.btn-info:active{background-color:#2aabd2;border-color:#28a4c9}.btn-info.disabled,.btn-info.disabled.active,.btn-info.disabled.focus,.btn-info.disabled:active,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled],.btn-info[disabled].active,.btn-info[disabled].focus,.btn-info[disabled]:active,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info,fieldset[disabled] .btn-info.active,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:active,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#2aabd2;background-image:none}.btn-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#eb9316 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#eb9316));background-image:linear-gradient(to bottom,#f0ad4e 0,#eb9316 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffeb9316', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#e38d13}.btn-warning:focus,.btn-warning:hover{background-color:#eb9316;background-position:0 -15px}.btn-warning.active,.btn-warning:active{background-color:#eb9316;border-color:#e38d13}.btn-warning.disabled,.btn-warning.disabled.active,.btn-warning.disabled.focus,.btn-warning.disabled:active,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled],.btn-warning[disabled].active,.btn-warning[disabled].focus,.btn-warning[disabled]:active,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning,fieldset[disabled] .btn-warning.active,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:active,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#eb9316;background-image:none}.btn-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c12e2a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c12e2a));background-image:linear-gradient(to bottom,#d9534f 0,#c12e2a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc12e2a', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-color:#b92c28}.btn-danger:focus,.btn-danger:hover{background-color:#c12e2a;background-position:0 -15px}.btn-danger.active,.btn-danger:active{background-color:#c12e2a;border-color:#b92c28}.btn-danger.disabled,.btn-danger.disabled.active,.btn-danger.disabled.focus,.btn-danger.disabled:active,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled],.btn-danger[disabled].active,.btn-danger[disabled].focus,.btn-danger[disabled]:active,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger,fieldset[disabled] .btn-danger.active,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:active,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#c12e2a;background-image:none}.img-thumbnail,.thumbnail{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{background-color:#e8e8e8;background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{background-color:#2e6da4;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.navbar-default{background-image:-webkit-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-o-linear-gradient(top,#fff 0,#f8f8f8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f8f8f8));background-image:linear-gradient(to bottom,#fff 0,#f8f8f8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff8f8f8', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.15),0 1px 5px rgba(0,0,0,.075)}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-o-linear-gradient(top,#dbdbdb 0,#e2e2e2 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dbdbdb),to(#e2e2e2));background-image:linear-gradient(to bottom,#dbdbdb 0,#e2e2e2 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdbdbdb', endColorstr='#ffe2e2e2', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.075);box-shadow:inset 0 3px 9px rgba(0,0,0,.075)}.navbar-brand,.navbar-nav>li>a{text-shadow:0 1px 0 rgba(255,255,255,.25)}.navbar-inverse{background-image:-webkit-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-o-linear-gradient(top,#3c3c3c 0,#222 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#3c3c3c),to(#222));background-image:linear-gradient(to bottom,#3c3c3c 0,#222 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff3c3c3c', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);background-repeat:repeat-x;border-radius:4px}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.open>a{background-image:-webkit-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-o-linear-gradient(top,#080808 0,#0f0f0f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#080808),to(#0f0f0f));background-image:linear-gradient(to bottom,#080808 0,#0f0f0f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff080808', endColorstr='#ff0f0f0f', GradientType=0);background-repeat:repeat-x;-webkit-box-shadow:inset 0 3px 9px rgba(0,0,0,.25);box-shadow:inset 0 3px 9px rgba(0,0,0,.25)}.navbar-inverse .navbar-brand,.navbar-inverse .navbar-nav>li>a{text-shadow:0 -1px 0 rgba(0,0,0,.25)}.navbar-fixed-bottom,.navbar-fixed-top,.navbar-static-top{border-radius:0}@media (max-width:767px){.navbar .navbar-nav .open .dropdown-menu>.active>a,.navbar .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}}.alert{text-shadow:0 1px 0 rgba(255,255,255,.2);-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05)}.alert-success{background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#c8e5bc));background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);background-repeat:repeat-x;border-color:#b2dba1}.alert-info{background-image:-webkit-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#b9def0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#b9def0));background-image:linear-gradient(to bottom,#d9edf7 0,#b9def0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffb9def0', GradientType=0);background-repeat:repeat-x;border-color:#9acfea}.alert-warning{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#f8efc0 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#f8efc0));background-image:linear-gradient(to bottom,#fcf8e3 0,#f8efc0 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fff8efc0', GradientType=0);background-repeat:repeat-x;border-color:#f5e79e}.alert-danger{background-image:-webkit-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-o-linear-gradient(top,#f2dede 0,#e7c3c3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#e7c3c3));background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);background-repeat:repeat-x;border-color:#dca7a7}.progress{background-image:-webkit-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#ebebeb 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#ebebeb),to(#f5f5f5));background-image:linear-gradient(to bottom,#ebebeb 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffebebeb', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x}.progress-bar{background-image:-webkit-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-o-linear-gradient(top,#337ab7 0,#286090 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#286090));background-image:linear-gradient(to bottom,#337ab7 0,#286090 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff286090', GradientType=0);background-repeat:repeat-x}.progress-bar-success{background-image:-webkit-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-o-linear-gradient(top,#5cb85c 0,#449d44 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5cb85c),to(#449d44));background-image:linear-gradient(to bottom,#5cb85c 0,#449d44 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5cb85c', endColorstr='#ff449d44', GradientType=0);background-repeat:repeat-x}.progress-bar-info{background-image:-webkit-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-o-linear-gradient(top,#5bc0de 0,#31b0d5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#5bc0de),to(#31b0d5));background-image:linear-gradient(to bottom,#5bc0de 0,#31b0d5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff31b0d5', GradientType=0);background-repeat:repeat-x}.progress-bar-warning{background-image:-webkit-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-o-linear-gradient(top,#f0ad4e 0,#ec971f 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f0ad4e),to(#ec971f));background-image:linear-gradient(to bottom,#f0ad4e 0,#ec971f 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff0ad4e', endColorstr='#ffec971f', GradientType=0);background-repeat:repeat-x}.progress-bar-danger{background-image:-webkit-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-o-linear-gradient(top,#d9534f 0,#c9302c 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9534f),to(#c9302c));background-image:linear-gradient(to bottom,#d9534f 0,#c9302c 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9534f', endColorstr='#ffc9302c', GradientType=0);background-repeat:repeat-x}.progress-bar-striped{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.list-group{border-radius:4px;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.075);box-shadow:0 1px 2px rgba(0,0,0,.075)}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{text-shadow:0 -1px 0 #286090;background-image:-webkit-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2b669a 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2b669a));background-image:linear-gradient(to bottom,#337ab7 0,#2b669a 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2b669a', GradientType=0);background-repeat:repeat-x;border-color:#2b669a}.list-group-item.active .badge,.list-group-item.active:focus .badge,.list-group-item.active:hover .badge{text-shadow:none}.panel{-webkit-box-shadow:0 1px 2px rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.05)}.panel-default>.panel-heading{background-image:-webkit-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-o-linear-gradient(top,#f5f5f5 0,#e8e8e8 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f5f5f5),to(#e8e8e8));background-image:linear-gradient(to bottom,#f5f5f5 0,#e8e8e8 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);background-repeat:repeat-x}.panel-primary>.panel-heading{background-image:-webkit-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-o-linear-gradient(top,#337ab7 0,#2e6da4 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#337ab7),to(#2e6da4));background-image:linear-gradient(to bottom,#337ab7 0,#2e6da4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);background-repeat:repeat-x}.panel-success>.panel-heading{background-image:-webkit-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-o-linear-gradient(top,#dff0d8 0,#d0e9c6 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#d0e9c6));background-image:linear-gradient(to bottom,#dff0d8 0,#d0e9c6 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffd0e9c6', GradientType=0);background-repeat:repeat-x}.panel-info>.panel-heading{background-image:-webkit-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-o-linear-gradient(top,#d9edf7 0,#c4e3f3 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#d9edf7),to(#c4e3f3));background-image:linear-gradient(to bottom,#d9edf7 0,#c4e3f3 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffd9edf7', endColorstr='#ffc4e3f3', GradientType=0);background-repeat:repeat-x}.panel-warning>.panel-heading{background-image:-webkit-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-o-linear-gradient(top,#fcf8e3 0,#faf2cc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#fcf8e3),to(#faf2cc));background-image:linear-gradient(to bottom,#fcf8e3 0,#faf2cc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffcf8e3', endColorstr='#fffaf2cc', GradientType=0);background-repeat:repeat-x}.panel-danger>.panel-heading{background-image:-webkit-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-o-linear-gradient(top,#f2dede 0,#ebcccc 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#ebcccc));background-image:linear-gradient(to bottom,#f2dede 0,#ebcccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffebcccc', GradientType=0);background-repeat:repeat-x}.well{background-image:-webkit-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-o-linear-gradient(top,#e8e8e8 0,#f5f5f5 100%);background-image:-webkit-gradient(linear,left top,left bottom,from(#e8e8e8),to(#f5f5f5));background-image:linear-gradient(to bottom,#e8e8e8 0,#f5f5f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe8e8e8', endColorstr='#fff5f5f5', GradientType=0);background-repeat:repeat-x;border-color:#dcdcdc;-webkit-box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 3px rgba(0,0,0,.05),0 1px 0 rgba(255,255,255,.1)} \ No newline at end of file diff --git a/public/assets/bootstrap/css/bootstrap.css b/public/assets/bootstrap/css/bootstrap.css deleted file mode 100644 index 680e768..0000000 --- a/public/assets/bootstrap/css/bootstrap.css +++ /dev/null @@ -1,6800 +0,0 @@ -/*! - * Bootstrap v3.3.5 (http://getbootstrap.com) - * Copyright 2011-2015 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) - */ -/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ -html { - font-family: sans-serif; - -webkit-text-size-adjust: 100%; - -ms-text-size-adjust: 100%; -} -body { - margin: 0; -} -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -menu, -nav, -section, -summary { - display: block; -} -audio, -canvas, -progress, -video { - display: inline-block; - vertical-align: baseline; -} -audio:not([controls]) { - display: none; - height: 0; -} -[hidden], -template { - display: none; -} -a { - background-color: transparent; -} -a:active, -a:hover { - outline: 0; -} -abbr[title] { - border-bottom: 1px dotted; -} -b, -strong { - font-weight: bold; -} -dfn { - font-style: italic; -} -h1 { - margin: .67em 0; - font-size: 2em; -} -mark { - color: #000; - background: #ff0; -} -small { - font-size: 80%; -} -sub, -sup { - position: relative; - font-size: 75%; - line-height: 0; - vertical-align: baseline; -} -sup { - top: -.5em; -} -sub { - bottom: -.25em; -} -img { - border: 0; -} -svg:not(:root) { - overflow: hidden; -} -figure { - margin: 1em 40px; -} -hr { - height: 0; - -webkit-box-sizing: content-box; - -moz-box-sizing: content-box; - box-sizing: content-box; -} -pre { - overflow: auto; -} -code, -kbd, -pre, -samp { - font-family: monospace, monospace; - font-size: 1em; -} -button, -input, -optgroup, -select, -textarea { - margin: 0; - font: inherit; - color: inherit; -} -button { - overflow: visible; -} -button, -select { - text-transform: none; -} -button, -html input[type="button"], -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; - cursor: pointer; -} -button[disabled], -html input[disabled] { - cursor: default; -} -button::-moz-focus-inner, -input::-moz-focus-inner { - padding: 0; - border: 0; -} -input { - line-height: normal; -} -input[type="checkbox"], -input[type="radio"] { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; - padding: 0; -} -input[type="number"]::-webkit-inner-spin-button, -input[type="number"]::-webkit-outer-spin-button { - height: auto; -} -input[type="search"] { - -webkit-box-sizing: content-box; - -moz-box-sizing: content-box; - box-sizing: content-box; - -webkit-appearance: textfield; -} -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} -fieldset { - padding: .35em .625em .75em; - margin: 0 2px; - border: 1px solid #c0c0c0; -} -legend { - padding: 0; - border: 0; -} -textarea { - overflow: auto; -} -optgroup { - font-weight: bold; -} -table { - border-spacing: 0; - border-collapse: collapse; -} -td, -th { - padding: 0; -} -/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ -@media print { - *, - *:before, - *:after { - color: #000 !important; - text-shadow: none !important; - background: transparent !important; - -webkit-box-shadow: none !important; - box-shadow: none !important; - } - a, - a:visited { - text-decoration: underline; - } - a[href]:after { - content: " (" attr(href) ")"; - } - abbr[title]:after { - content: " (" attr(title) ")"; - } - a[href^="#"]:after, - a[href^="javascript:"]:after { - content: ""; - } - pre, - blockquote { - border: 1px solid #999; - - page-break-inside: avoid; - } - thead { - display: table-header-group; - } - tr, - img { - page-break-inside: avoid; - } - img { - max-width: 100% !important; - } - p, - h2, - h3 { - orphans: 3; - widows: 3; - } - h2, - h3 { - page-break-after: avoid; - } - .navbar { - display: none; - } - .btn > .caret, - .dropup > .btn > .caret { - border-top-color: #000 !important; - } - .label { - border: 1px solid #000; - } - .table { - border-collapse: collapse !important; - } - .table td, - .table th { - background-color: #fff !important; - } - .table-bordered th, - .table-bordered td { - border: 1px solid #ddd !important; - } -} -@font-face { - font-family: 'Glyphicons Halflings'; - - src: url('../fonts/glyphicons-halflings-regular.eot'); - src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); -} -.glyphicon { - position: relative; - top: 1px; - display: inline-block; - font-family: 'Glyphicons Halflings'; - font-style: normal; - font-weight: normal; - line-height: 1; - - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} -.glyphicon-asterisk:before { - content: "\2a"; -} -.glyphicon-plus:before { - content: "\2b"; -} -.glyphicon-euro:before, -.glyphicon-eur:before { - content: "\20ac"; -} -.glyphicon-minus:before { - content: "\2212"; -} -.glyphicon-cloud:before { - content: "\2601"; -} -.glyphicon-envelope:before { - content: "\2709"; -} -.glyphicon-pencil:before { - content: "\270f"; -} -.glyphicon-glass:before { - content: "\e001"; -} -.glyphicon-music:before { - content: "\e002"; -} -.glyphicon-search:before { - content: "\e003"; -} -.glyphicon-heart:before { - content: "\e005"; -} -.glyphicon-star:before { - content: "\e006"; -} -.glyphicon-star-empty:before { - content: "\e007"; -} -.glyphicon-user:before { - content: "\e008"; -} -.glyphicon-film:before { - content: "\e009"; -} -.glyphicon-th-large:before { - content: "\e010"; -} -.glyphicon-th:before { - content: "\e011"; -} -.glyphicon-th-list:before { - content: "\e012"; -} -.glyphicon-ok:before { - content: "\e013"; -} -.glyphicon-remove:before { - content: "\e014"; -} -.glyphicon-zoom-in:before { - content: "\e015"; -} -.glyphicon-zoom-out:before { - content: "\e016"; -} -.glyphicon-off:before { - content: "\e017"; -} -.glyphicon-signal:before { - content: "\e018"; -} -.glyphicon-cog:before { - content: "\e019"; -} -.glyphicon-trash:before { - content: "\e020"; -} -.glyphicon-home:before { - content: "\e021"; -} -.glyphicon-file:before { - content: "\e022"; -} -.glyphicon-time:before { - content: "\e023"; -} -.glyphicon-road:before { - content: "\e024"; -} -.glyphicon-download-alt:before { - content: "\e025"; -} -.glyphicon-download:before { - content: "\e026"; -} -.glyphicon-upload:before { - content: "\e027"; -} -.glyphicon-inbox:before { - content: "\e028"; -} -.glyphicon-play-circle:before { - content: "\e029"; -} -.glyphicon-repeat:before { - content: "\e030"; -} -.glyphicon-refresh:before { - content: "\e031"; -} -.glyphicon-list-alt:before { - content: "\e032"; -} -.glyphicon-lock:before { - content: "\e033"; -} -.glyphicon-flag:before { - content: "\e034"; -} -.glyphicon-headphones:before { - content: "\e035"; -} -.glyphicon-volume-off:before { - content: "\e036"; -} -.glyphicon-volume-down:before { - content: "\e037"; -} -.glyphicon-volume-up:before { - content: "\e038"; -} -.glyphicon-qrcode:before { - content: "\e039"; -} -.glyphicon-barcode:before { - content: "\e040"; -} -.glyphicon-tag:before { - content: "\e041"; -} -.glyphicon-tags:before { - content: "\e042"; -} -.glyphicon-book:before { - content: "\e043"; -} -.glyphicon-bookmark:before { - content: "\e044"; -} -.glyphicon-print:before { - content: "\e045"; -} -.glyphicon-camera:before { - content: "\e046"; -} -.glyphicon-font:before { - content: "\e047"; -} -.glyphicon-bold:before { - content: "\e048"; -} -.glyphicon-italic:before { - content: "\e049"; -} -.glyphicon-text-height:before { - content: "\e050"; -} -.glyphicon-text-width:before { - content: "\e051"; -} -.glyphicon-align-left:before { - content: "\e052"; -} -.glyphicon-align-center:before { - content: "\e053"; -} -.glyphicon-align-right:before { - content: "\e054"; -} -.glyphicon-align-justify:before { - content: "\e055"; -} -.glyphicon-list:before { - content: "\e056"; -} -.glyphicon-indent-left:before { - content: "\e057"; -} -.glyphicon-indent-right:before { - content: "\e058"; -} -.glyphicon-facetime-video:before { - content: "\e059"; -} -.glyphicon-picture:before { - content: "\e060"; -} -.glyphicon-map-marker:before { - content: "\e062"; -} -.glyphicon-adjust:before { - content: "\e063"; -} -.glyphicon-tint:before { - content: "\e064"; -} -.glyphicon-edit:before { - content: "\e065"; -} -.glyphicon-share:before { - content: "\e066"; -} -.glyphicon-check:before { - content: "\e067"; -} -.glyphicon-move:before { - content: "\e068"; -} -.glyphicon-step-backward:before { - content: "\e069"; -} -.glyphicon-fast-backward:before { - content: "\e070"; -} -.glyphicon-backward:before { - content: "\e071"; -} -.glyphicon-play:before { - content: "\e072"; -} -.glyphicon-pause:before { - content: "\e073"; -} -.glyphicon-stop:before { - content: "\e074"; -} -.glyphicon-forward:before { - content: "\e075"; -} -.glyphicon-fast-forward:before { - content: "\e076"; -} -.glyphicon-step-forward:before { - content: "\e077"; -} -.glyphicon-eject:before { - content: "\e078"; -} -.glyphicon-chevron-left:before { - content: "\e079"; -} -.glyphicon-chevron-right:before { - content: "\e080"; -} -.glyphicon-plus-sign:before { - content: "\e081"; -} -.glyphicon-minus-sign:before { - content: "\e082"; -} -.glyphicon-remove-sign:before { - content: "\e083"; -} -.glyphicon-ok-sign:before { - content: "\e084"; -} -.glyphicon-question-sign:before { - content: "\e085"; -} -.glyphicon-info-sign:before { - content: "\e086"; -} -.glyphicon-screenshot:before { - content: "\e087"; -} -.glyphicon-remove-circle:before { - content: "\e088"; -} -.glyphicon-ok-circle:before { - content: "\e089"; -} -.glyphicon-ban-circle:before { - content: "\e090"; -} -.glyphicon-arrow-left:before { - content: "\e091"; -} -.glyphicon-arrow-right:before { - content: "\e092"; -} -.glyphicon-arrow-up:before { - content: "\e093"; -} -.glyphicon-arrow-down:before { - content: "\e094"; -} -.glyphicon-share-alt:before { - content: "\e095"; -} -.glyphicon-resize-full:before { - content: "\e096"; -} -.glyphicon-resize-small:before { - content: "\e097"; -} -.glyphicon-exclamation-sign:before { - content: "\e101"; -} -.glyphicon-gift:before { - content: "\e102"; -} -.glyphicon-leaf:before { - content: "\e103"; -} -.glyphicon-fire:before { - content: "\e104"; -} -.glyphicon-eye-open:before { - content: "\e105"; -} -.glyphicon-eye-close:before { - content: "\e106"; -} -.glyphicon-warning-sign:before { - content: "\e107"; -} -.glyphicon-plane:before { - content: "\e108"; -} -.glyphicon-calendar:before { - content: "\e109"; -} -.glyphicon-random:before { - content: "\e110"; -} -.glyphicon-comment:before { - content: "\e111"; -} -.glyphicon-magnet:before { - content: "\e112"; -} -.glyphicon-chevron-up:before { - content: "\e113"; -} -.glyphicon-chevron-down:before { - content: "\e114"; -} -.glyphicon-retweet:before { - content: "\e115"; -} -.glyphicon-shopping-cart:before { - content: "\e116"; -} -.glyphicon-folder-close:before { - content: "\e117"; -} -.glyphicon-folder-open:before { - content: "\e118"; -} -.glyphicon-resize-vertical:before { - content: "\e119"; -} -.glyphicon-resize-horizontal:before { - content: "\e120"; -} -.glyphicon-hdd:before { - content: "\e121"; -} -.glyphicon-bullhorn:before { - content: "\e122"; -} -.glyphicon-bell:before { - content: "\e123"; -} -.glyphicon-certificate:before { - content: "\e124"; -} -.glyphicon-thumbs-up:before { - content: "\e125"; -} -.glyphicon-thumbs-down:before { - content: "\e126"; -} -.glyphicon-hand-right:before { - content: "\e127"; -} -.glyphicon-hand-left:before { - content: "\e128"; -} -.glyphicon-hand-up:before { - content: "\e129"; -} -.glyphicon-hand-down:before { - content: "\e130"; -} -.glyphicon-circle-arrow-right:before { - content: "\e131"; -} -.glyphicon-circle-arrow-left:before { - content: "\e132"; -} -.glyphicon-circle-arrow-up:before { - content: "\e133"; -} -.glyphicon-circle-arrow-down:before { - content: "\e134"; -} -.glyphicon-globe:before { - content: "\e135"; -} -.glyphicon-wrench:before { - content: "\e136"; -} -.glyphicon-tasks:before { - content: "\e137"; -} -.glyphicon-filter:before { - content: "\e138"; -} -.glyphicon-briefcase:before { - content: "\e139"; -} -.glyphicon-fullscreen:before { - content: "\e140"; -} -.glyphicon-dashboard:before { - content: "\e141"; -} -.glyphicon-paperclip:before { - content: "\e142"; -} -.glyphicon-heart-empty:before { - content: "\e143"; -} -.glyphicon-link:before { - content: "\e144"; -} -.glyphicon-phone:before { - content: "\e145"; -} -.glyphicon-pushpin:before { - content: "\e146"; -} -.glyphicon-usd:before { - content: "\e148"; -} -.glyphicon-gbp:before { - content: "\e149"; -} -.glyphicon-sort:before { - content: "\e150"; -} -.glyphicon-sort-by-alphabet:before { - content: "\e151"; -} -.glyphicon-sort-by-alphabet-alt:before { - content: "\e152"; -} -.glyphicon-sort-by-order:before { - content: "\e153"; -} -.glyphicon-sort-by-order-alt:before { - content: "\e154"; -} -.glyphicon-sort-by-attributes:before { - content: "\e155"; -} -.glyphicon-sort-by-attributes-alt:before { - content: "\e156"; -} -.glyphicon-unchecked:before { - content: "\e157"; -} -.glyphicon-expand:before { - content: "\e158"; -} -.glyphicon-collapse-down:before { - content: "\e159"; -} -.glyphicon-collapse-up:before { - content: "\e160"; -} -.glyphicon-log-in:before { - content: "\e161"; -} -.glyphicon-flash:before { - content: "\e162"; -} -.glyphicon-log-out:before { - content: "\e163"; -} -.glyphicon-new-window:before { - content: "\e164"; -} -.glyphicon-record:before { - content: "\e165"; -} -.glyphicon-save:before { - content: "\e166"; -} -.glyphicon-open:before { - content: "\e167"; -} -.glyphicon-saved:before { - content: "\e168"; -} -.glyphicon-import:before { - content: "\e169"; -} -.glyphicon-export:before { - content: "\e170"; -} -.glyphicon-send:before { - content: "\e171"; -} -.glyphicon-floppy-disk:before { - content: "\e172"; -} -.glyphicon-floppy-saved:before { - content: "\e173"; -} -.glyphicon-floppy-remove:before { - content: "\e174"; -} -.glyphicon-floppy-save:before { - content: "\e175"; -} -.glyphicon-floppy-open:before { - content: "\e176"; -} -.glyphicon-credit-card:before { - content: "\e177"; -} -.glyphicon-transfer:before { - content: "\e178"; -} -.glyphicon-cutlery:before { - content: "\e179"; -} -.glyphicon-header:before { - content: "\e180"; -} -.glyphicon-compressed:before { - content: "\e181"; -} -.glyphicon-earphone:before { - content: "\e182"; -} -.glyphicon-phone-alt:before { - content: "\e183"; -} -.glyphicon-tower:before { - content: "\e184"; -} -.glyphicon-stats:before { - content: "\e185"; -} -.glyphicon-sd-video:before { - content: "\e186"; -} -.glyphicon-hd-video:before { - content: "\e187"; -} -.glyphicon-subtitles:before { - content: "\e188"; -} -.glyphicon-sound-stereo:before { - content: "\e189"; -} -.glyphicon-sound-dolby:before { - content: "\e190"; -} -.glyphicon-sound-5-1:before { - content: "\e191"; -} -.glyphicon-sound-6-1:before { - content: "\e192"; -} -.glyphicon-sound-7-1:before { - content: "\e193"; -} -.glyphicon-copyright-mark:before { - content: "\e194"; -} -.glyphicon-registration-mark:before { - content: "\e195"; -} -.glyphicon-cloud-download:before { - content: "\e197"; -} -.glyphicon-cloud-upload:before { - content: "\e198"; -} -.glyphicon-tree-conifer:before { - content: "\e199"; -} -.glyphicon-tree-deciduous:before { - content: "\e200"; -} -.glyphicon-cd:before { - content: "\e201"; -} -.glyphicon-save-file:before { - content: "\e202"; -} -.glyphicon-open-file:before { - content: "\e203"; -} -.glyphicon-level-up:before { - content: "\e204"; -} -.glyphicon-copy:before { - content: "\e205"; -} -.glyphicon-paste:before { - content: "\e206"; -} -.glyphicon-alert:before { - content: "\e209"; -} -.glyphicon-equalizer:before { - content: "\e210"; -} -.glyphicon-king:before { - content: "\e211"; -} -.glyphicon-queen:before { - content: "\e212"; -} -.glyphicon-pawn:before { - content: "\e213"; -} -.glyphicon-bishop:before { - content: "\e214"; -} -.glyphicon-knight:before { - content: "\e215"; -} -.glyphicon-baby-formula:before { - content: "\e216"; -} -.glyphicon-tent:before { - content: "\26fa"; -} -.glyphicon-blackboard:before { - content: "\e218"; -} -.glyphicon-bed:before { - content: "\e219"; -} -.glyphicon-apple:before { - content: "\f8ff"; -} -.glyphicon-erase:before { - content: "\e221"; -} -.glyphicon-hourglass:before { - content: "\231b"; -} -.glyphicon-lamp:before { - content: "\e223"; -} -.glyphicon-duplicate:before { - content: "\e224"; -} -.glyphicon-piggy-bank:before { - content: "\e225"; -} -.glyphicon-scissors:before { - content: "\e226"; -} -.glyphicon-bitcoin:before { - content: "\e227"; -} -.glyphicon-btc:before { - content: "\e227"; -} -.glyphicon-xbt:before { - content: "\e227"; -} -.glyphicon-yen:before { - content: "\00a5"; -} -.glyphicon-jpy:before { - content: "\00a5"; -} -.glyphicon-ruble:before { - content: "\20bd"; -} -.glyphicon-rub:before { - content: "\20bd"; -} -.glyphicon-scale:before { - content: "\e230"; -} -.glyphicon-ice-lolly:before { - content: "\e231"; -} -.glyphicon-ice-lolly-tasted:before { - content: "\e232"; -} -.glyphicon-education:before { - content: "\e233"; -} -.glyphicon-option-horizontal:before { - content: "\e234"; -} -.glyphicon-option-vertical:before { - content: "\e235"; -} -.glyphicon-menu-hamburger:before { - content: "\e236"; -} -.glyphicon-modal-window:before { - content: "\e237"; -} -.glyphicon-oil:before { - content: "\e238"; -} -.glyphicon-grain:before { - content: "\e239"; -} -.glyphicon-sunglasses:before { - content: "\e240"; -} -.glyphicon-text-size:before { - content: "\e241"; -} -.glyphicon-text-color:before { - content: "\e242"; -} -.glyphicon-text-background:before { - content: "\e243"; -} -.glyphicon-object-align-top:before { - content: "\e244"; -} -.glyphicon-object-align-bottom:before { - content: "\e245"; -} -.glyphicon-object-align-horizontal:before { - content: "\e246"; -} -.glyphicon-object-align-left:before { - content: "\e247"; -} -.glyphicon-object-align-vertical:before { - content: "\e248"; -} -.glyphicon-object-align-right:before { - content: "\e249"; -} -.glyphicon-triangle-right:before { - content: "\e250"; -} -.glyphicon-triangle-left:before { - content: "\e251"; -} -.glyphicon-triangle-bottom:before { - content: "\e252"; -} -.glyphicon-triangle-top:before { - content: "\e253"; -} -.glyphicon-console:before { - content: "\e254"; -} -.glyphicon-superscript:before { - content: "\e255"; -} -.glyphicon-subscript:before { - content: "\e256"; -} -.glyphicon-menu-left:before { - content: "\e257"; -} -.glyphicon-menu-right:before { - content: "\e258"; -} -.glyphicon-menu-down:before { - content: "\e259"; -} -.glyphicon-menu-up:before { - content: "\e260"; -} -* { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; -} -*:before, -*:after { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; -} -html { - font-size: 10px; - - -webkit-tap-highlight-color: rgba(0, 0, 0, 0); -} -body { - font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - font-size: 14px; - line-height: 1.42857143; - color: #333; - background-color: #fff; -} -input, -button, -select, -textarea { - font-family: inherit; - font-size: inherit; - line-height: inherit; -} -a { - color: #337ab7; - text-decoration: none; -} -a:hover, -a:focus { - color: #23527c; - text-decoration: underline; -} -a:focus { - outline: thin dotted; - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; -} -figure { - margin: 0; -} -img { - vertical-align: middle; -} -.img-responsive, -.thumbnail > img, -.thumbnail a > img, -.carousel-inner > .item > img, -.carousel-inner > .item > a > img { - display: block; - max-width: 100%; - height: auto; -} -.img-rounded { - border-radius: 6px; -} -.img-thumbnail { - display: inline-block; - max-width: 100%; - height: auto; - padding: 4px; - line-height: 1.42857143; - background-color: #fff; - border: 1px solid #ddd; - border-radius: 4px; - -webkit-transition: all .2s ease-in-out; - -o-transition: all .2s ease-in-out; - transition: all .2s ease-in-out; -} -.img-circle { - border-radius: 50%; -} -hr { - margin-top: 20px; - margin-bottom: 20px; - border: 0; - border-top: 1px solid #eee; -} -.sr-only { - position: absolute; - width: 1px; - height: 1px; - padding: 0; - margin: -1px; - overflow: hidden; - clip: rect(0, 0, 0, 0); - border: 0; -} -.sr-only-focusable:active, -.sr-only-focusable:focus { - position: static; - width: auto; - height: auto; - margin: 0; - overflow: visible; - clip: auto; -} -[role="button"] { - cursor: pointer; -} -h1, -h2, -h3, -h4, -h5, -h6, -.h1, -.h2, -.h3, -.h4, -.h5, -.h6 { - font-family: inherit; - font-weight: 500; - line-height: 1.1; - color: inherit; -} -h1 small, -h2 small, -h3 small, -h4 small, -h5 small, -h6 small, -.h1 small, -.h2 small, -.h3 small, -.h4 small, -.h5 small, -.h6 small, -h1 .small, -h2 .small, -h3 .small, -h4 .small, -h5 .small, -h6 .small, -.h1 .small, -.h2 .small, -.h3 .small, -.h4 .small, -.h5 .small, -.h6 .small { - font-weight: normal; - line-height: 1; - color: #777; -} -h1, -.h1, -h2, -.h2, -h3, -.h3 { - margin-top: 20px; - margin-bottom: 10px; -} -h1 small, -.h1 small, -h2 small, -.h2 small, -h3 small, -.h3 small, -h1 .small, -.h1 .small, -h2 .small, -.h2 .small, -h3 .small, -.h3 .small { - font-size: 65%; -} -h4, -.h4, -h5, -.h5, -h6, -.h6 { - margin-top: 10px; - margin-bottom: 10px; -} -h4 small, -.h4 small, -h5 small, -.h5 small, -h6 small, -.h6 small, -h4 .small, -.h4 .small, -h5 .small, -.h5 .small, -h6 .small, -.h6 .small { - font-size: 75%; -} -h1, -.h1 { - font-size: 36px; -} -h2, -.h2 { - font-size: 30px; -} -h3, -.h3 { - font-size: 24px; -} -h4, -.h4 { - font-size: 18px; -} -h5, -.h5 { - font-size: 14px; -} -h6, -.h6 { - font-size: 12px; -} -p { - margin: 0 0 10px; -} -.lead { - margin-bottom: 20px; - font-size: 16px; - font-weight: 300; - line-height: 1.4; -} -@media (min-width: 768px) { - .lead { - font-size: 21px; - } -} -small, -.small { - font-size: 85%; -} -mark, -.mark { - padding: .2em; - background-color: #fcf8e3; -} -.text-left { - text-align: left; -} -.text-right { - text-align: right; -} -.text-center { - text-align: center; -} -.text-justify { - text-align: justify; -} -.text-nowrap { - white-space: nowrap; -} -.text-lowercase { - text-transform: lowercase; -} -.text-uppercase { - text-transform: uppercase; -} -.text-capitalize { - text-transform: capitalize; -} -.text-muted { - color: #777; -} -.text-primary { - color: #337ab7; -} -a.text-primary:hover, -a.text-primary:focus { - color: #286090; -} -.text-success { - color: #3c763d; -} -a.text-success:hover, -a.text-success:focus { - color: #2b542c; -} -.text-info { - color: #31708f; -} -a.text-info:hover, -a.text-info:focus { - color: #245269; -} -.text-warning { - color: #8a6d3b; -} -a.text-warning:hover, -a.text-warning:focus { - color: #66512c; -} -.text-danger { - color: #a94442; -} -a.text-danger:hover, -a.text-danger:focus { - color: #843534; -} -.bg-primary { - color: #fff; - background-color: #337ab7; -} -a.bg-primary:hover, -a.bg-primary:focus { - background-color: #286090; -} -.bg-success { - background-color: #dff0d8; -} -a.bg-success:hover, -a.bg-success:focus { - background-color: #c1e2b3; -} -.bg-info { - background-color: #d9edf7; -} -a.bg-info:hover, -a.bg-info:focus { - background-color: #afd9ee; -} -.bg-warning { - background-color: #fcf8e3; -} -a.bg-warning:hover, -a.bg-warning:focus { - background-color: #f7ecb5; -} -.bg-danger { - background-color: #f2dede; -} -a.bg-danger:hover, -a.bg-danger:focus { - background-color: #e4b9b9; -} -.page-header { - padding-bottom: 9px; - margin: 40px 0 20px; - border-bottom: 1px solid #eee; -} -ul, -ol { - margin-top: 0; - margin-bottom: 10px; -} -ul ul, -ol ul, -ul ol, -ol ol { - margin-bottom: 0; -} -.list-unstyled { - padding-left: 0; - list-style: none; -} -.list-inline { - padding-left: 0; - margin-left: -5px; - list-style: none; -} -.list-inline > li { - display: inline-block; - padding-right: 5px; - padding-left: 5px; -} -dl { - margin-top: 0; - margin-bottom: 20px; -} -dt, -dd { - line-height: 1.42857143; -} -dt { - font-weight: bold; -} -dd { - margin-left: 0; -} -@media (min-width: 768px) { - .dl-horizontal dt { - float: left; - width: 160px; - overflow: hidden; - clear: left; - text-align: right; - text-overflow: ellipsis; - white-space: nowrap; - } - .dl-horizontal dd { - margin-left: 180px; - } -} -abbr[title], -abbr[data-original-title] { - cursor: help; - border-bottom: 1px dotted #777; -} -.initialism { - font-size: 90%; - text-transform: uppercase; -} -blockquote { - padding: 10px 20px; - margin: 0 0 20px; - font-size: 17.5px; - border-left: 5px solid #eee; -} -blockquote p:last-child, -blockquote ul:last-child, -blockquote ol:last-child { - margin-bottom: 0; -} -blockquote footer, -blockquote small, -blockquote .small { - display: block; - font-size: 80%; - line-height: 1.42857143; - color: #777; -} -blockquote footer:before, -blockquote small:before, -blockquote .small:before { - content: '\2014 \00A0'; -} -.blockquote-reverse, -blockquote.pull-right { - padding-right: 15px; - padding-left: 0; - text-align: right; - border-right: 5px solid #eee; - border-left: 0; -} -.blockquote-reverse footer:before, -blockquote.pull-right footer:before, -.blockquote-reverse small:before, -blockquote.pull-right small:before, -.blockquote-reverse .small:before, -blockquote.pull-right .small:before { - content: ''; -} -.blockquote-reverse footer:after, -blockquote.pull-right footer:after, -.blockquote-reverse small:after, -blockquote.pull-right small:after, -.blockquote-reverse .small:after, -blockquote.pull-right .small:after { - content: '\00A0 \2014'; -} -address { - margin-bottom: 20px; - font-style: normal; - line-height: 1.42857143; -} -code, -kbd, -pre, -samp { - font-family: Menlo, Monaco, Consolas, "Courier New", monospace; -} -code { - padding: 2px 4px; - font-size: 90%; - color: #c7254e; - background-color: #f9f2f4; - border-radius: 4px; -} -kbd { - padding: 2px 4px; - font-size: 90%; - color: #fff; - background-color: #333; - border-radius: 3px; - -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); - box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); -} -kbd kbd { - padding: 0; - font-size: 100%; - font-weight: bold; - -webkit-box-shadow: none; - box-shadow: none; -} -pre { - display: block; - padding: 9.5px; - margin: 0 0 10px; - font-size: 13px; - line-height: 1.42857143; - color: #333; - word-break: break-all; - word-wrap: break-word; - background-color: #f5f5f5; - border: 1px solid #ccc; - border-radius: 4px; -} -pre code { - padding: 0; - font-size: inherit; - color: inherit; - white-space: pre-wrap; - background-color: transparent; - border-radius: 0; -} -.pre-scrollable { - max-height: 340px; - overflow-y: scroll; -} -.container { - padding-right: 15px; - padding-left: 15px; - margin-right: auto; - margin-left: auto; -} -@media (min-width: 768px) { - .container { - width: 750px; - } -} -@media (min-width: 992px) { - .container { - width: 970px; - } -} -@media (min-width: 1200px) { - .container { - width: 1170px; - } -} -.container-fluid { - padding-right: 15px; - padding-left: 15px; - margin-right: auto; - margin-left: auto; -} -.row { - margin-right: -15px; - margin-left: -15px; -} -.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { - position: relative; - min-height: 1px; - padding-right: 15px; - padding-left: 15px; -} -.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { - float: left; -} -.col-xs-12 { - width: 100%; -} -.col-xs-11 { - width: 91.66666667%; -} -.col-xs-10 { - width: 83.33333333%; -} -.col-xs-9 { - width: 75%; -} -.col-xs-8 { - width: 66.66666667%; -} -.col-xs-7 { - width: 58.33333333%; -} -.col-xs-6 { - width: 50%; -} -.col-xs-5 { - width: 41.66666667%; -} -.col-xs-4 { - width: 33.33333333%; -} -.col-xs-3 { - width: 25%; -} -.col-xs-2 { - width: 16.66666667%; -} -.col-xs-1 { - width: 8.33333333%; -} -.col-xs-pull-12 { - right: 100%; -} -.col-xs-pull-11 { - right: 91.66666667%; -} -.col-xs-pull-10 { - right: 83.33333333%; -} -.col-xs-pull-9 { - right: 75%; -} -.col-xs-pull-8 { - right: 66.66666667%; -} -.col-xs-pull-7 { - right: 58.33333333%; -} -.col-xs-pull-6 { - right: 50%; -} -.col-xs-pull-5 { - right: 41.66666667%; -} -.col-xs-pull-4 { - right: 33.33333333%; -} -.col-xs-pull-3 { - right: 25%; -} -.col-xs-pull-2 { - right: 16.66666667%; -} -.col-xs-pull-1 { - right: 8.33333333%; -} -.col-xs-pull-0 { - right: auto; -} -.col-xs-push-12 { - left: 100%; -} -.col-xs-push-11 { - left: 91.66666667%; -} -.col-xs-push-10 { - left: 83.33333333%; -} -.col-xs-push-9 { - left: 75%; -} -.col-xs-push-8 { - left: 66.66666667%; -} -.col-xs-push-7 { - left: 58.33333333%; -} -.col-xs-push-6 { - left: 50%; -} -.col-xs-push-5 { - left: 41.66666667%; -} -.col-xs-push-4 { - left: 33.33333333%; -} -.col-xs-push-3 { - left: 25%; -} -.col-xs-push-2 { - left: 16.66666667%; -} -.col-xs-push-1 { - left: 8.33333333%; -} -.col-xs-push-0 { - left: auto; -} -.col-xs-offset-12 { - margin-left: 100%; -} -.col-xs-offset-11 { - margin-left: 91.66666667%; -} -.col-xs-offset-10 { - margin-left: 83.33333333%; -} -.col-xs-offset-9 { - margin-left: 75%; -} -.col-xs-offset-8 { - margin-left: 66.66666667%; -} -.col-xs-offset-7 { - margin-left: 58.33333333%; -} -.col-xs-offset-6 { - margin-left: 50%; -} -.col-xs-offset-5 { - margin-left: 41.66666667%; -} -.col-xs-offset-4 { - margin-left: 33.33333333%; -} -.col-xs-offset-3 { - margin-left: 25%; -} -.col-xs-offset-2 { - margin-left: 16.66666667%; -} -.col-xs-offset-1 { - margin-left: 8.33333333%; -} -.col-xs-offset-0 { - margin-left: 0; -} -@media (min-width: 768px) { - .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { - float: left; - } - .col-sm-12 { - width: 100%; - } - .col-sm-11 { - width: 91.66666667%; - } - .col-sm-10 { - width: 83.33333333%; - } - .col-sm-9 { - width: 75%; - } - .col-sm-8 { - width: 66.66666667%; - } - .col-sm-7 { - width: 58.33333333%; - } - .col-sm-6 { - width: 50%; - } - .col-sm-5 { - width: 41.66666667%; - } - .col-sm-4 { - width: 33.33333333%; - } - .col-sm-3 { - width: 25%; - } - .col-sm-2 { - width: 16.66666667%; - } - .col-sm-1 { - width: 8.33333333%; - } - .col-sm-pull-12 { - right: 100%; - } - .col-sm-pull-11 { - right: 91.66666667%; - } - .col-sm-pull-10 { - right: 83.33333333%; - } - .col-sm-pull-9 { - right: 75%; - } - .col-sm-pull-8 { - right: 66.66666667%; - } - .col-sm-pull-7 { - right: 58.33333333%; - } - .col-sm-pull-6 { - right: 50%; - } - .col-sm-pull-5 { - right: 41.66666667%; - } - .col-sm-pull-4 { - right: 33.33333333%; - } - .col-sm-pull-3 { - right: 25%; - } - .col-sm-pull-2 { - right: 16.66666667%; - } - .col-sm-pull-1 { - right: 8.33333333%; - } - .col-sm-pull-0 { - right: auto; - } - .col-sm-push-12 { - left: 100%; - } - .col-sm-push-11 { - left: 91.66666667%; - } - .col-sm-push-10 { - left: 83.33333333%; - } - .col-sm-push-9 { - left: 75%; - } - .col-sm-push-8 { - left: 66.66666667%; - } - .col-sm-push-7 { - left: 58.33333333%; - } - .col-sm-push-6 { - left: 50%; - } - .col-sm-push-5 { - left: 41.66666667%; - } - .col-sm-push-4 { - left: 33.33333333%; - } - .col-sm-push-3 { - left: 25%; - } - .col-sm-push-2 { - left: 16.66666667%; - } - .col-sm-push-1 { - left: 8.33333333%; - } - .col-sm-push-0 { - left: auto; - } - .col-sm-offset-12 { - margin-left: 100%; - } - .col-sm-offset-11 { - margin-left: 91.66666667%; - } - .col-sm-offset-10 { - margin-left: 83.33333333%; - } - .col-sm-offset-9 { - margin-left: 75%; - } - .col-sm-offset-8 { - margin-left: 66.66666667%; - } - .col-sm-offset-7 { - margin-left: 58.33333333%; - } - .col-sm-offset-6 { - margin-left: 50%; - } - .col-sm-offset-5 { - margin-left: 41.66666667%; - } - .col-sm-offset-4 { - margin-left: 33.33333333%; - } - .col-sm-offset-3 { - margin-left: 25%; - } - .col-sm-offset-2 { - margin-left: 16.66666667%; - } - .col-sm-offset-1 { - margin-left: 8.33333333%; - } - .col-sm-offset-0 { - margin-left: 0; - } -} -@media (min-width: 992px) { - .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { - float: left; - } - .col-md-12 { - width: 100%; - } - .col-md-11 { - width: 91.66666667%; - } - .col-md-10 { - width: 83.33333333%; - } - .col-md-9 { - width: 75%; - } - .col-md-8 { - width: 66.66666667%; - } - .col-md-7 { - width: 58.33333333%; - } - .col-md-6 { - width: 50%; - } - .col-md-5 { - width: 41.66666667%; - } - .col-md-4 { - width: 33.33333333%; - } - .col-md-3 { - width: 25%; - } - .col-md-2 { - width: 16.66666667%; - } - .col-md-1 { - width: 8.33333333%; - } - .col-md-pull-12 { - right: 100%; - } - .col-md-pull-11 { - right: 91.66666667%; - } - .col-md-pull-10 { - right: 83.33333333%; - } - .col-md-pull-9 { - right: 75%; - } - .col-md-pull-8 { - right: 66.66666667%; - } - .col-md-pull-7 { - right: 58.33333333%; - } - .col-md-pull-6 { - right: 50%; - } - .col-md-pull-5 { - right: 41.66666667%; - } - .col-md-pull-4 { - right: 33.33333333%; - } - .col-md-pull-3 { - right: 25%; - } - .col-md-pull-2 { - right: 16.66666667%; - } - .col-md-pull-1 { - right: 8.33333333%; - } - .col-md-pull-0 { - right: auto; - } - .col-md-push-12 { - left: 100%; - } - .col-md-push-11 { - left: 91.66666667%; - } - .col-md-push-10 { - left: 83.33333333%; - } - .col-md-push-9 { - left: 75%; - } - .col-md-push-8 { - left: 66.66666667%; - } - .col-md-push-7 { - left: 58.33333333%; - } - .col-md-push-6 { - left: 50%; - } - .col-md-push-5 { - left: 41.66666667%; - } - .col-md-push-4 { - left: 33.33333333%; - } - .col-md-push-3 { - left: 25%; - } - .col-md-push-2 { - left: 16.66666667%; - } - .col-md-push-1 { - left: 8.33333333%; - } - .col-md-push-0 { - left: auto; - } - .col-md-offset-12 { - margin-left: 100%; - } - .col-md-offset-11 { - margin-left: 91.66666667%; - } - .col-md-offset-10 { - margin-left: 83.33333333%; - } - .col-md-offset-9 { - margin-left: 75%; - } - .col-md-offset-8 { - margin-left: 66.66666667%; - } - .col-md-offset-7 { - margin-left: 58.33333333%; - } - .col-md-offset-6 { - margin-left: 50%; - } - .col-md-offset-5 { - margin-left: 41.66666667%; - } - .col-md-offset-4 { - margin-left: 33.33333333%; - } - .col-md-offset-3 { - margin-left: 25%; - } - .col-md-offset-2 { - margin-left: 16.66666667%; - } - .col-md-offset-1 { - margin-left: 8.33333333%; - } - .col-md-offset-0 { - margin-left: 0; - } -} -@media (min-width: 1200px) { - .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { - float: left; - } - .col-lg-12 { - width: 100%; - } - .col-lg-11 { - width: 91.66666667%; - } - .col-lg-10 { - width: 83.33333333%; - } - .col-lg-9 { - width: 75%; - } - .col-lg-8 { - width: 66.66666667%; - } - .col-lg-7 { - width: 58.33333333%; - } - .col-lg-6 { - width: 50%; - } - .col-lg-5 { - width: 41.66666667%; - } - .col-lg-4 { - width: 33.33333333%; - } - .col-lg-3 { - width: 25%; - } - .col-lg-2 { - width: 16.66666667%; - } - .col-lg-1 { - width: 8.33333333%; - } - .col-lg-pull-12 { - right: 100%; - } - .col-lg-pull-11 { - right: 91.66666667%; - } - .col-lg-pull-10 { - right: 83.33333333%; - } - .col-lg-pull-9 { - right: 75%; - } - .col-lg-pull-8 { - right: 66.66666667%; - } - .col-lg-pull-7 { - right: 58.33333333%; - } - .col-lg-pull-6 { - right: 50%; - } - .col-lg-pull-5 { - right: 41.66666667%; - } - .col-lg-pull-4 { - right: 33.33333333%; - } - .col-lg-pull-3 { - right: 25%; - } - .col-lg-pull-2 { - right: 16.66666667%; - } - .col-lg-pull-1 { - right: 8.33333333%; - } - .col-lg-pull-0 { - right: auto; - } - .col-lg-push-12 { - left: 100%; - } - .col-lg-push-11 { - left: 91.66666667%; - } - .col-lg-push-10 { - left: 83.33333333%; - } - .col-lg-push-9 { - left: 75%; - } - .col-lg-push-8 { - left: 66.66666667%; - } - .col-lg-push-7 { - left: 58.33333333%; - } - .col-lg-push-6 { - left: 50%; - } - .col-lg-push-5 { - left: 41.66666667%; - } - .col-lg-push-4 { - left: 33.33333333%; - } - .col-lg-push-3 { - left: 25%; - } - .col-lg-push-2 { - left: 16.66666667%; - } - .col-lg-push-1 { - left: 8.33333333%; - } - .col-lg-push-0 { - left: auto; - } - .col-lg-offset-12 { - margin-left: 100%; - } - .col-lg-offset-11 { - margin-left: 91.66666667%; - } - .col-lg-offset-10 { - margin-left: 83.33333333%; - } - .col-lg-offset-9 { - margin-left: 75%; - } - .col-lg-offset-8 { - margin-left: 66.66666667%; - } - .col-lg-offset-7 { - margin-left: 58.33333333%; - } - .col-lg-offset-6 { - margin-left: 50%; - } - .col-lg-offset-5 { - margin-left: 41.66666667%; - } - .col-lg-offset-4 { - margin-left: 33.33333333%; - } - .col-lg-offset-3 { - margin-left: 25%; - } - .col-lg-offset-2 { - margin-left: 16.66666667%; - } - .col-lg-offset-1 { - margin-left: 8.33333333%; - } - .col-lg-offset-0 { - margin-left: 0; - } -} -table { - background-color: transparent; -} -caption { - padding-top: 8px; - padding-bottom: 8px; - color: #777; - text-align: left; -} -th { - text-align: left; -} -.table { - width: 100%; - max-width: 100%; - margin-bottom: 20px; -} -.table > thead > tr > th, -.table > tbody > tr > th, -.table > tfoot > tr > th, -.table > thead > tr > td, -.table > tbody > tr > td, -.table > tfoot > tr > td { - padding: 8px; - line-height: 1.42857143; - vertical-align: top; - border-top: 1px solid #ddd; -} -.table > thead > tr > th { - vertical-align: bottom; - border-bottom: 2px solid #ddd; -} -.table > caption + thead > tr:first-child > th, -.table > colgroup + thead > tr:first-child > th, -.table > thead:first-child > tr:first-child > th, -.table > caption + thead > tr:first-child > td, -.table > colgroup + thead > tr:first-child > td, -.table > thead:first-child > tr:first-child > td { - border-top: 0; -} -.table > tbody + tbody { - border-top: 2px solid #ddd; -} -.table .table { - background-color: #fff; -} -.table-condensed > thead > tr > th, -.table-condensed > tbody > tr > th, -.table-condensed > tfoot > tr > th, -.table-condensed > thead > tr > td, -.table-condensed > tbody > tr > td, -.table-condensed > tfoot > tr > td { - padding: 5px; -} -.table-bordered { - border: 1px solid #ddd; -} -.table-bordered > thead > tr > th, -.table-bordered > tbody > tr > th, -.table-bordered > tfoot > tr > th, -.table-bordered > thead > tr > td, -.table-bordered > tbody > tr > td, -.table-bordered > tfoot > tr > td { - border: 1px solid #ddd; -} -.table-bordered > thead > tr > th, -.table-bordered > thead > tr > td { - border-bottom-width: 2px; -} -.table-striped > tbody > tr:nth-of-type(odd) { - background-color: #f9f9f9; -} -.table-hover > tbody > tr:hover { - background-color: #f5f5f5; -} -table col[class*="col-"] { - position: static; - display: table-column; - float: none; -} -table td[class*="col-"], -table th[class*="col-"] { - position: static; - display: table-cell; - float: none; -} -.table > thead > tr > td.active, -.table > tbody > tr > td.active, -.table > tfoot > tr > td.active, -.table > thead > tr > th.active, -.table > tbody > tr > th.active, -.table > tfoot > tr > th.active, -.table > thead > tr.active > td, -.table > tbody > tr.active > td, -.table > tfoot > tr.active > td, -.table > thead > tr.active > th, -.table > tbody > tr.active > th, -.table > tfoot > tr.active > th { - background-color: #f5f5f5; -} -.table-hover > tbody > tr > td.active:hover, -.table-hover > tbody > tr > th.active:hover, -.table-hover > tbody > tr.active:hover > td, -.table-hover > tbody > tr:hover > .active, -.table-hover > tbody > tr.active:hover > th { - background-color: #e8e8e8; -} -.table > thead > tr > td.success, -.table > tbody > tr > td.success, -.table > tfoot > tr > td.success, -.table > thead > tr > th.success, -.table > tbody > tr > th.success, -.table > tfoot > tr > th.success, -.table > thead > tr.success > td, -.table > tbody > tr.success > td, -.table > tfoot > tr.success > td, -.table > thead > tr.success > th, -.table > tbody > tr.success > th, -.table > tfoot > tr.success > th { - background-color: #dff0d8; -} -.table-hover > tbody > tr > td.success:hover, -.table-hover > tbody > tr > th.success:hover, -.table-hover > tbody > tr.success:hover > td, -.table-hover > tbody > tr:hover > .success, -.table-hover > tbody > tr.success:hover > th { - background-color: #d0e9c6; -} -.table > thead > tr > td.info, -.table > tbody > tr > td.info, -.table > tfoot > tr > td.info, -.table > thead > tr > th.info, -.table > tbody > tr > th.info, -.table > tfoot > tr > th.info, -.table > thead > tr.info > td, -.table > tbody > tr.info > td, -.table > tfoot > tr.info > td, -.table > thead > tr.info > th, -.table > tbody > tr.info > th, -.table > tfoot > tr.info > th { - background-color: #d9edf7; -} -.table-hover > tbody > tr > td.info:hover, -.table-hover > tbody > tr > th.info:hover, -.table-hover > tbody > tr.info:hover > td, -.table-hover > tbody > tr:hover > .info, -.table-hover > tbody > tr.info:hover > th { - background-color: #c4e3f3; -} -.table > thead > tr > td.warning, -.table > tbody > tr > td.warning, -.table > tfoot > tr > td.warning, -.table > thead > tr > th.warning, -.table > tbody > tr > th.warning, -.table > tfoot > tr > th.warning, -.table > thead > tr.warning > td, -.table > tbody > tr.warning > td, -.table > tfoot > tr.warning > td, -.table > thead > tr.warning > th, -.table > tbody > tr.warning > th, -.table > tfoot > tr.warning > th { - background-color: #fcf8e3; -} -.table-hover > tbody > tr > td.warning:hover, -.table-hover > tbody > tr > th.warning:hover, -.table-hover > tbody > tr.warning:hover > td, -.table-hover > tbody > tr:hover > .warning, -.table-hover > tbody > tr.warning:hover > th { - background-color: #faf2cc; -} -.table > thead > tr > td.danger, -.table > tbody > tr > td.danger, -.table > tfoot > tr > td.danger, -.table > thead > tr > th.danger, -.table > tbody > tr > th.danger, -.table > tfoot > tr > th.danger, -.table > thead > tr.danger > td, -.table > tbody > tr.danger > td, -.table > tfoot > tr.danger > td, -.table > thead > tr.danger > th, -.table > tbody > tr.danger > th, -.table > tfoot > tr.danger > th { - background-color: #f2dede; -} -.table-hover > tbody > tr > td.danger:hover, -.table-hover > tbody > tr > th.danger:hover, -.table-hover > tbody > tr.danger:hover > td, -.table-hover > tbody > tr:hover > .danger, -.table-hover > tbody > tr.danger:hover > th { - background-color: #ebcccc; -} -.table-responsive { - min-height: .01%; - overflow-x: auto; -} -@media screen and (max-width: 767px) { - .table-responsive { - width: 100%; - margin-bottom: 15px; - overflow-y: hidden; - -ms-overflow-style: -ms-autohiding-scrollbar; - border: 1px solid #ddd; - } - .table-responsive > .table { - margin-bottom: 0; - } - .table-responsive > .table > thead > tr > th, - .table-responsive > .table > tbody > tr > th, - .table-responsive > .table > tfoot > tr > th, - .table-responsive > .table > thead > tr > td, - .table-responsive > .table > tbody > tr > td, - .table-responsive > .table > tfoot > tr > td { - white-space: nowrap; - } - .table-responsive > .table-bordered { - border: 0; - } - .table-responsive > .table-bordered > thead > tr > th:first-child, - .table-responsive > .table-bordered > tbody > tr > th:first-child, - .table-responsive > .table-bordered > tfoot > tr > th:first-child, - .table-responsive > .table-bordered > thead > tr > td:first-child, - .table-responsive > .table-bordered > tbody > tr > td:first-child, - .table-responsive > .table-bordered > tfoot > tr > td:first-child { - border-left: 0; - } - .table-responsive > .table-bordered > thead > tr > th:last-child, - .table-responsive > .table-bordered > tbody > tr > th:last-child, - .table-responsive > .table-bordered > tfoot > tr > th:last-child, - .table-responsive > .table-bordered > thead > tr > td:last-child, - .table-responsive > .table-bordered > tbody > tr > td:last-child, - .table-responsive > .table-bordered > tfoot > tr > td:last-child { - border-right: 0; - } - .table-responsive > .table-bordered > tbody > tr:last-child > th, - .table-responsive > .table-bordered > tfoot > tr:last-child > th, - .table-responsive > .table-bordered > tbody > tr:last-child > td, - .table-responsive > .table-bordered > tfoot > tr:last-child > td { - border-bottom: 0; - } -} -fieldset { - min-width: 0; - padding: 0; - margin: 0; - border: 0; -} -legend { - display: block; - width: 100%; - padding: 0; - margin-bottom: 20px; - font-size: 21px; - line-height: inherit; - color: #333; - border: 0; - border-bottom: 1px solid #e5e5e5; -} -label { - display: inline-block; - max-width: 100%; - margin-bottom: 5px; - font-weight: bold; -} -input[type="search"] { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; -} -input[type="radio"], -input[type="checkbox"] { - margin: 4px 0 0; - margin-top: 1px \9; - line-height: normal; -} -input[type="file"] { - display: block; -} -input[type="range"] { - display: block; - width: 100%; -} -select[multiple], -select[size] { - height: auto; -} -input[type="file"]:focus, -input[type="radio"]:focus, -input[type="checkbox"]:focus { - outline: thin dotted; - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; -} -output { - display: block; - padding-top: 7px; - font-size: 14px; - line-height: 1.42857143; - color: #555; -} -.form-control { - display: block; - width: 100%; - height: 34px; - padding: 6px 12px; - font-size: 14px; - line-height: 1.42857143; - color: #555; - background-color: #fff; - background-image: none; - border: 1px solid #ccc; - border-radius: 4px; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); - -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; - -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; - transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; -} -.form-control:focus { - border-color: #66afe9; - outline: 0; - -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); - box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); -} -.form-control::-moz-placeholder { - color: #999; - opacity: 1; -} -.form-control:-ms-input-placeholder { - color: #999; -} -.form-control::-webkit-input-placeholder { - color: #999; -} -.form-control[disabled], -.form-control[readonly], -fieldset[disabled] .form-control { - background-color: #eee; - opacity: 1; -} -.form-control[disabled], -fieldset[disabled] .form-control { - cursor: not-allowed; -} -textarea.form-control { - height: auto; -} -input[type="search"] { - -webkit-appearance: none; -} -@media screen and (-webkit-min-device-pixel-ratio: 0) { - input[type="date"].form-control, - input[type="time"].form-control, - input[type="datetime-local"].form-control, - input[type="month"].form-control { - line-height: 34px; - } - input[type="date"].input-sm, - input[type="time"].input-sm, - input[type="datetime-local"].input-sm, - input[type="month"].input-sm, - .input-group-sm input[type="date"], - .input-group-sm input[type="time"], - .input-group-sm input[type="datetime-local"], - .input-group-sm input[type="month"] { - line-height: 30px; - } - input[type="date"].input-lg, - input[type="time"].input-lg, - input[type="datetime-local"].input-lg, - input[type="month"].input-lg, - .input-group-lg input[type="date"], - .input-group-lg input[type="time"], - .input-group-lg input[type="datetime-local"], - .input-group-lg input[type="month"] { - line-height: 46px; - } -} -.form-group { - margin-bottom: 15px; -} -.radio, -.checkbox { - position: relative; - display: block; - margin-top: 10px; - margin-bottom: 10px; -} -.radio label, -.checkbox label { - min-height: 20px; - padding-left: 20px; - margin-bottom: 0; - font-weight: normal; - cursor: pointer; -} -.radio input[type="radio"], -.radio-inline input[type="radio"], -.checkbox input[type="checkbox"], -.checkbox-inline input[type="checkbox"] { - position: absolute; - margin-top: 4px \9; - margin-left: -20px; -} -.radio + .radio, -.checkbox + .checkbox { - margin-top: -5px; -} -.radio-inline, -.checkbox-inline { - position: relative; - display: inline-block; - padding-left: 20px; - margin-bottom: 0; - font-weight: normal; - vertical-align: middle; - cursor: pointer; -} -.radio-inline + .radio-inline, -.checkbox-inline + .checkbox-inline { - margin-top: 0; - margin-left: 10px; -} -input[type="radio"][disabled], -input[type="checkbox"][disabled], -input[type="radio"].disabled, -input[type="checkbox"].disabled, -fieldset[disabled] input[type="radio"], -fieldset[disabled] input[type="checkbox"] { - cursor: not-allowed; -} -.radio-inline.disabled, -.checkbox-inline.disabled, -fieldset[disabled] .radio-inline, -fieldset[disabled] .checkbox-inline { - cursor: not-allowed; -} -.radio.disabled label, -.checkbox.disabled label, -fieldset[disabled] .radio label, -fieldset[disabled] .checkbox label { - cursor: not-allowed; -} -.form-control-static { - min-height: 34px; - padding-top: 7px; - padding-bottom: 7px; - margin-bottom: 0; -} -.form-control-static.input-lg, -.form-control-static.input-sm { - padding-right: 0; - padding-left: 0; -} -.input-sm { - height: 30px; - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} -select.input-sm { - height: 30px; - line-height: 30px; -} -textarea.input-sm, -select[multiple].input-sm { - height: auto; -} -.form-group-sm .form-control { - height: 30px; - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} -.form-group-sm select.form-control { - height: 30px; - line-height: 30px; -} -.form-group-sm textarea.form-control, -.form-group-sm select[multiple].form-control { - height: auto; -} -.form-group-sm .form-control-static { - height: 30px; - min-height: 32px; - padding: 6px 10px; - font-size: 12px; - line-height: 1.5; -} -.input-lg { - height: 46px; - padding: 10px 16px; - font-size: 18px; - line-height: 1.3333333; - border-radius: 6px; -} -select.input-lg { - height: 46px; - line-height: 46px; -} -textarea.input-lg, -select[multiple].input-lg { - height: auto; -} -.form-group-lg .form-control { - height: 46px; - padding: 10px 16px; - font-size: 18px; - line-height: 1.3333333; - border-radius: 6px; -} -.form-group-lg select.form-control { - height: 46px; - line-height: 46px; -} -.form-group-lg textarea.form-control, -.form-group-lg select[multiple].form-control { - height: auto; -} -.form-group-lg .form-control-static { - height: 46px; - min-height: 38px; - padding: 11px 16px; - font-size: 18px; - line-height: 1.3333333; -} -.has-feedback { - position: relative; -} -.has-feedback .form-control { - padding-right: 42.5px; -} -.form-control-feedback { - position: absolute; - top: 0; - right: 0; - z-index: 2; - display: block; - width: 34px; - height: 34px; - line-height: 34px; - text-align: center; - pointer-events: none; -} -.input-lg + .form-control-feedback, -.input-group-lg + .form-control-feedback, -.form-group-lg .form-control + .form-control-feedback { - width: 46px; - height: 46px; - line-height: 46px; -} -.input-sm + .form-control-feedback, -.input-group-sm + .form-control-feedback, -.form-group-sm .form-control + .form-control-feedback { - width: 30px; - height: 30px; - line-height: 30px; -} -.has-success .help-block, -.has-success .control-label, -.has-success .radio, -.has-success .checkbox, -.has-success .radio-inline, -.has-success .checkbox-inline, -.has-success.radio label, -.has-success.checkbox label, -.has-success.radio-inline label, -.has-success.checkbox-inline label { - color: #3c763d; -} -.has-success .form-control { - border-color: #3c763d; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); -} -.has-success .form-control:focus { - border-color: #2b542c; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; -} -.has-success .input-group-addon { - color: #3c763d; - background-color: #dff0d8; - border-color: #3c763d; -} -.has-success .form-control-feedback { - color: #3c763d; -} -.has-warning .help-block, -.has-warning .control-label, -.has-warning .radio, -.has-warning .checkbox, -.has-warning .radio-inline, -.has-warning .checkbox-inline, -.has-warning.radio label, -.has-warning.checkbox label, -.has-warning.radio-inline label, -.has-warning.checkbox-inline label { - color: #8a6d3b; -} -.has-warning .form-control { - border-color: #8a6d3b; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); -} -.has-warning .form-control:focus { - border-color: #66512c; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; -} -.has-warning .input-group-addon { - color: #8a6d3b; - background-color: #fcf8e3; - border-color: #8a6d3b; -} -.has-warning .form-control-feedback { - color: #8a6d3b; -} -.has-error .help-block, -.has-error .control-label, -.has-error .radio, -.has-error .checkbox, -.has-error .radio-inline, -.has-error .checkbox-inline, -.has-error.radio label, -.has-error.checkbox label, -.has-error.radio-inline label, -.has-error.checkbox-inline label { - color: #a94442; -} -.has-error .form-control { - border-color: #a94442; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); -} -.has-error .form-control:focus { - border-color: #843534; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; -} -.has-error .input-group-addon { - color: #a94442; - background-color: #f2dede; - border-color: #a94442; -} -.has-error .form-control-feedback { - color: #a94442; -} -.has-feedback label ~ .form-control-feedback { - top: 25px; -} -.has-feedback label.sr-only ~ .form-control-feedback { - top: 0; -} -.help-block { - display: block; - margin-top: 5px; - margin-bottom: 10px; - color: #737373; -} -@media (min-width: 768px) { - .form-inline .form-group { - display: inline-block; - margin-bottom: 0; - vertical-align: middle; - } - .form-inline .form-control { - display: inline-block; - width: auto; - vertical-align: middle; - } - .form-inline .form-control-static { - display: inline-block; - } - .form-inline .input-group { - display: inline-table; - vertical-align: middle; - } - .form-inline .input-group .input-group-addon, - .form-inline .input-group .input-group-btn, - .form-inline .input-group .form-control { - width: auto; - } - .form-inline .input-group > .form-control { - width: 100%; - } - .form-inline .control-label { - margin-bottom: 0; - vertical-align: middle; - } - .form-inline .radio, - .form-inline .checkbox { - display: inline-block; - margin-top: 0; - margin-bottom: 0; - vertical-align: middle; - } - .form-inline .radio label, - .form-inline .checkbox label { - padding-left: 0; - } - .form-inline .radio input[type="radio"], - .form-inline .checkbox input[type="checkbox"] { - position: relative; - margin-left: 0; - } - .form-inline .has-feedback .form-control-feedback { - top: 0; - } -} -.form-horizontal .radio, -.form-horizontal .checkbox, -.form-horizontal .radio-inline, -.form-horizontal .checkbox-inline { - padding-top: 7px; - margin-top: 0; - margin-bottom: 0; -} -.form-horizontal .radio, -.form-horizontal .checkbox { - min-height: 27px; -} -.form-horizontal .form-group { - margin-right: -15px; - margin-left: -15px; -} -@media (min-width: 768px) { - .form-horizontal .control-label { - padding-top: 7px; - margin-bottom: 0; - text-align: right; - } -} -.form-horizontal .has-feedback .form-control-feedback { - right: 15px; -} -@media (min-width: 768px) { - .form-horizontal .form-group-lg .control-label { - padding-top: 14.333333px; - font-size: 18px; - } -} -@media (min-width: 768px) { - .form-horizontal .form-group-sm .control-label { - padding-top: 6px; - font-size: 12px; - } -} -.btn { - display: inline-block; - padding: 6px 12px; - margin-bottom: 0; - font-size: 14px; - font-weight: normal; - line-height: 1.42857143; - text-align: center; - white-space: nowrap; - vertical-align: middle; - -ms-touch-action: manipulation; - touch-action: manipulation; - cursor: pointer; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - background-image: none; - border: 1px solid transparent; - border-radius: 4px; -} -.btn:focus, -.btn:active:focus, -.btn.active:focus, -.btn.focus, -.btn:active.focus, -.btn.active.focus { - outline: thin dotted; - outline: 5px auto -webkit-focus-ring-color; - outline-offset: -2px; -} -.btn:hover, -.btn:focus, -.btn.focus { - color: #333; - text-decoration: none; -} -.btn:active, -.btn.active { - background-image: none; - outline: 0; - -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); - box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); -} -.btn.disabled, -.btn[disabled], -fieldset[disabled] .btn { - cursor: not-allowed; - filter: alpha(opacity=65); - -webkit-box-shadow: none; - box-shadow: none; - opacity: .65; -} -a.btn.disabled, -fieldset[disabled] a.btn { - pointer-events: none; -} -.btn-default { - color: #333; - background-color: #fff; - border-color: #ccc; -} -.btn-default:focus, -.btn-default.focus { - color: #333; - background-color: #e6e6e6; - border-color: #8c8c8c; -} -.btn-default:hover { - color: #333; - background-color: #e6e6e6; - border-color: #adadad; -} -.btn-default:active, -.btn-default.active, -.open > .dropdown-toggle.btn-default { - color: #333; - background-color: #e6e6e6; - border-color: #adadad; -} -.btn-default:active:hover, -.btn-default.active:hover, -.open > .dropdown-toggle.btn-default:hover, -.btn-default:active:focus, -.btn-default.active:focus, -.open > .dropdown-toggle.btn-default:focus, -.btn-default:active.focus, -.btn-default.active.focus, -.open > .dropdown-toggle.btn-default.focus { - color: #333; - background-color: #d4d4d4; - border-color: #8c8c8c; -} -.btn-default:active, -.btn-default.active, -.open > .dropdown-toggle.btn-default { - background-image: none; -} -.btn-default.disabled, -.btn-default[disabled], -fieldset[disabled] .btn-default, -.btn-default.disabled:hover, -.btn-default[disabled]:hover, -fieldset[disabled] .btn-default:hover, -.btn-default.disabled:focus, -.btn-default[disabled]:focus, -fieldset[disabled] .btn-default:focus, -.btn-default.disabled.focus, -.btn-default[disabled].focus, -fieldset[disabled] .btn-default.focus, -.btn-default.disabled:active, -.btn-default[disabled]:active, -fieldset[disabled] .btn-default:active, -.btn-default.disabled.active, -.btn-default[disabled].active, -fieldset[disabled] .btn-default.active { - background-color: #fff; - border-color: #ccc; -} -.btn-default .badge { - color: #fff; - background-color: #333; -} -.btn-primary { - color: #fff; - background-color: #337ab7; - border-color: #2e6da4; -} -.btn-primary:focus, -.btn-primary.focus { - color: #fff; - background-color: #286090; - border-color: #122b40; -} -.btn-primary:hover { - color: #fff; - background-color: #286090; - border-color: #204d74; -} -.btn-primary:active, -.btn-primary.active, -.open > .dropdown-toggle.btn-primary { - color: #fff; - background-color: #286090; - border-color: #204d74; -} -.btn-primary:active:hover, -.btn-primary.active:hover, -.open > .dropdown-toggle.btn-primary:hover, -.btn-primary:active:focus, -.btn-primary.active:focus, -.open > .dropdown-toggle.btn-primary:focus, -.btn-primary:active.focus, -.btn-primary.active.focus, -.open > .dropdown-toggle.btn-primary.focus { - color: #fff; - background-color: #204d74; - border-color: #122b40; -} -.btn-primary:active, -.btn-primary.active, -.open > .dropdown-toggle.btn-primary { - background-image: none; -} -.btn-primary.disabled, -.btn-primary[disabled], -fieldset[disabled] .btn-primary, -.btn-primary.disabled:hover, -.btn-primary[disabled]:hover, -fieldset[disabled] .btn-primary:hover, -.btn-primary.disabled:focus, -.btn-primary[disabled]:focus, -fieldset[disabled] .btn-primary:focus, -.btn-primary.disabled.focus, -.btn-primary[disabled].focus, -fieldset[disabled] .btn-primary.focus, -.btn-primary.disabled:active, -.btn-primary[disabled]:active, -fieldset[disabled] .btn-primary:active, -.btn-primary.disabled.active, -.btn-primary[disabled].active, -fieldset[disabled] .btn-primary.active { - background-color: #337ab7; - border-color: #2e6da4; -} -.btn-primary .badge { - color: #337ab7; - background-color: #fff; -} -.btn-success { - color: #fff; - background-color: #5cb85c; - border-color: #4cae4c; -} -.btn-success:focus, -.btn-success.focus { - color: #fff; - background-color: #449d44; - border-color: #255625; -} -.btn-success:hover { - color: #fff; - background-color: #449d44; - border-color: #398439; -} -.btn-success:active, -.btn-success.active, -.open > .dropdown-toggle.btn-success { - color: #fff; - background-color: #449d44; - border-color: #398439; -} -.btn-success:active:hover, -.btn-success.active:hover, -.open > .dropdown-toggle.btn-success:hover, -.btn-success:active:focus, -.btn-success.active:focus, -.open > .dropdown-toggle.btn-success:focus, -.btn-success:active.focus, -.btn-success.active.focus, -.open > .dropdown-toggle.btn-success.focus { - color: #fff; - background-color: #398439; - border-color: #255625; -} -.btn-success:active, -.btn-success.active, -.open > .dropdown-toggle.btn-success { - background-image: none; -} -.btn-success.disabled, -.btn-success[disabled], -fieldset[disabled] .btn-success, -.btn-success.disabled:hover, -.btn-success[disabled]:hover, -fieldset[disabled] .btn-success:hover, -.btn-success.disabled:focus, -.btn-success[disabled]:focus, -fieldset[disabled] .btn-success:focus, -.btn-success.disabled.focus, -.btn-success[disabled].focus, -fieldset[disabled] .btn-success.focus, -.btn-success.disabled:active, -.btn-success[disabled]:active, -fieldset[disabled] .btn-success:active, -.btn-success.disabled.active, -.btn-success[disabled].active, -fieldset[disabled] .btn-success.active { - background-color: #5cb85c; - border-color: #4cae4c; -} -.btn-success .badge { - color: #5cb85c; - background-color: #fff; -} -.btn-info { - color: #fff; - background-color: #5bc0de; - border-color: #46b8da; -} -.btn-info:focus, -.btn-info.focus { - color: #fff; - background-color: #31b0d5; - border-color: #1b6d85; -} -.btn-info:hover { - color: #fff; - background-color: #31b0d5; - border-color: #269abc; -} -.btn-info:active, -.btn-info.active, -.open > .dropdown-toggle.btn-info { - color: #fff; - background-color: #31b0d5; - border-color: #269abc; -} -.btn-info:active:hover, -.btn-info.active:hover, -.open > .dropdown-toggle.btn-info:hover, -.btn-info:active:focus, -.btn-info.active:focus, -.open > .dropdown-toggle.btn-info:focus, -.btn-info:active.focus, -.btn-info.active.focus, -.open > .dropdown-toggle.btn-info.focus { - color: #fff; - background-color: #269abc; - border-color: #1b6d85; -} -.btn-info:active, -.btn-info.active, -.open > .dropdown-toggle.btn-info { - background-image: none; -} -.btn-info.disabled, -.btn-info[disabled], -fieldset[disabled] .btn-info, -.btn-info.disabled:hover, -.btn-info[disabled]:hover, -fieldset[disabled] .btn-info:hover, -.btn-info.disabled:focus, -.btn-info[disabled]:focus, -fieldset[disabled] .btn-info:focus, -.btn-info.disabled.focus, -.btn-info[disabled].focus, -fieldset[disabled] .btn-info.focus, -.btn-info.disabled:active, -.btn-info[disabled]:active, -fieldset[disabled] .btn-info:active, -.btn-info.disabled.active, -.btn-info[disabled].active, -fieldset[disabled] .btn-info.active { - background-color: #5bc0de; - border-color: #46b8da; -} -.btn-info .badge { - color: #5bc0de; - background-color: #fff; -} -.btn-warning { - color: #fff; - background-color: #f0ad4e; - border-color: #eea236; -} -.btn-warning:focus, -.btn-warning.focus { - color: #fff; - background-color: #ec971f; - border-color: #985f0d; -} -.btn-warning:hover { - color: #fff; - background-color: #ec971f; - border-color: #d58512; -} -.btn-warning:active, -.btn-warning.active, -.open > .dropdown-toggle.btn-warning { - color: #fff; - background-color: #ec971f; - border-color: #d58512; -} -.btn-warning:active:hover, -.btn-warning.active:hover, -.open > .dropdown-toggle.btn-warning:hover, -.btn-warning:active:focus, -.btn-warning.active:focus, -.open > .dropdown-toggle.btn-warning:focus, -.btn-warning:active.focus, -.btn-warning.active.focus, -.open > .dropdown-toggle.btn-warning.focus { - color: #fff; - background-color: #d58512; - border-color: #985f0d; -} -.btn-warning:active, -.btn-warning.active, -.open > .dropdown-toggle.btn-warning { - background-image: none; -} -.btn-warning.disabled, -.btn-warning[disabled], -fieldset[disabled] .btn-warning, -.btn-warning.disabled:hover, -.btn-warning[disabled]:hover, -fieldset[disabled] .btn-warning:hover, -.btn-warning.disabled:focus, -.btn-warning[disabled]:focus, -fieldset[disabled] .btn-warning:focus, -.btn-warning.disabled.focus, -.btn-warning[disabled].focus, -fieldset[disabled] .btn-warning.focus, -.btn-warning.disabled:active, -.btn-warning[disabled]:active, -fieldset[disabled] .btn-warning:active, -.btn-warning.disabled.active, -.btn-warning[disabled].active, -fieldset[disabled] .btn-warning.active { - background-color: #f0ad4e; - border-color: #eea236; -} -.btn-warning .badge { - color: #f0ad4e; - background-color: #fff; -} -.btn-danger { - color: #fff; - background-color: #d9534f; - border-color: #d43f3a; -} -.btn-danger:focus, -.btn-danger.focus { - color: #fff; - background-color: #c9302c; - border-color: #761c19; -} -.btn-danger:hover { - color: #fff; - background-color: #c9302c; - border-color: #ac2925; -} -.btn-danger:active, -.btn-danger.active, -.open > .dropdown-toggle.btn-danger { - color: #fff; - background-color: #c9302c; - border-color: #ac2925; -} -.btn-danger:active:hover, -.btn-danger.active:hover, -.open > .dropdown-toggle.btn-danger:hover, -.btn-danger:active:focus, -.btn-danger.active:focus, -.open > .dropdown-toggle.btn-danger:focus, -.btn-danger:active.focus, -.btn-danger.active.focus, -.open > .dropdown-toggle.btn-danger.focus { - color: #fff; - background-color: #ac2925; - border-color: #761c19; -} -.btn-danger:active, -.btn-danger.active, -.open > .dropdown-toggle.btn-danger { - background-image: none; -} -.btn-danger.disabled, -.btn-danger[disabled], -fieldset[disabled] .btn-danger, -.btn-danger.disabled:hover, -.btn-danger[disabled]:hover, -fieldset[disabled] .btn-danger:hover, -.btn-danger.disabled:focus, -.btn-danger[disabled]:focus, -fieldset[disabled] .btn-danger:focus, -.btn-danger.disabled.focus, -.btn-danger[disabled].focus, -fieldset[disabled] .btn-danger.focus, -.btn-danger.disabled:active, -.btn-danger[disabled]:active, -fieldset[disabled] .btn-danger:active, -.btn-danger.disabled.active, -.btn-danger[disabled].active, -fieldset[disabled] .btn-danger.active { - background-color: #d9534f; - border-color: #d43f3a; -} -.btn-danger .badge { - color: #d9534f; - background-color: #fff; -} -.btn-link { - font-weight: normal; - color: #337ab7; - border-radius: 0; -} -.btn-link, -.btn-link:active, -.btn-link.active, -.btn-link[disabled], -fieldset[disabled] .btn-link { - background-color: transparent; - -webkit-box-shadow: none; - box-shadow: none; -} -.btn-link, -.btn-link:hover, -.btn-link:focus, -.btn-link:active { - border-color: transparent; -} -.btn-link:hover, -.btn-link:focus { - color: #23527c; - text-decoration: underline; - background-color: transparent; -} -.btn-link[disabled]:hover, -fieldset[disabled] .btn-link:hover, -.btn-link[disabled]:focus, -fieldset[disabled] .btn-link:focus { - color: #777; - text-decoration: none; -} -.btn-lg, -.btn-group-lg > .btn { - padding: 10px 16px; - font-size: 18px; - line-height: 1.3333333; - border-radius: 6px; -} -.btn-sm, -.btn-group-sm > .btn { - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} -.btn-xs, -.btn-group-xs > .btn { - padding: 1px 5px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} -.btn-block { - display: block; - width: 100%; -} -.btn-block + .btn-block { - margin-top: 5px; -} -input[type="submit"].btn-block, -input[type="reset"].btn-block, -input[type="button"].btn-block { - width: 100%; -} -.fade { - opacity: 0; - -webkit-transition: opacity .15s linear; - -o-transition: opacity .15s linear; - transition: opacity .15s linear; -} -.fade.in { - opacity: 1; -} -.collapse { - display: none; -} -.collapse.in { - display: block; -} -tr.collapse.in { - display: table-row; -} -tbody.collapse.in { - display: table-row-group; -} -.collapsing { - position: relative; - height: 0; - overflow: hidden; - -webkit-transition-timing-function: ease; - -o-transition-timing-function: ease; - transition-timing-function: ease; - -webkit-transition-duration: .35s; - -o-transition-duration: .35s; - transition-duration: .35s; - -webkit-transition-property: height, visibility; - -o-transition-property: height, visibility; - transition-property: height, visibility; -} -.caret { - display: inline-block; - width: 0; - height: 0; - margin-left: 2px; - vertical-align: middle; - border-top: 4px dashed; - border-top: 4px solid \9; - border-right: 4px solid transparent; - border-left: 4px solid transparent; -} -.dropup, -.dropdown { - position: relative; -} -.dropdown-toggle:focus { - outline: 0; -} -.dropdown-menu { - position: absolute; - top: 100%; - left: 0; - z-index: 1000; - display: none; - float: left; - min-width: 160px; - padding: 5px 0; - margin: 2px 0 0; - font-size: 14px; - text-align: left; - list-style: none; - background-color: #fff; - -webkit-background-clip: padding-box; - background-clip: padding-box; - border: 1px solid #ccc; - border: 1px solid rgba(0, 0, 0, .15); - border-radius: 4px; - -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175); - box-shadow: 0 6px 12px rgba(0, 0, 0, .175); -} -.dropdown-menu.pull-right { - right: 0; - left: auto; -} -.dropdown-menu .divider { - height: 1px; - margin: 9px 0; - overflow: hidden; - background-color: #e5e5e5; -} -.dropdown-menu > li > a { - display: block; - padding: 3px 20px; - clear: both; - font-weight: normal; - line-height: 1.42857143; - color: #333; - white-space: nowrap; -} -.dropdown-menu > li > a:hover, -.dropdown-menu > li > a:focus { - color: #262626; - text-decoration: none; - background-color: #f5f5f5; -} -.dropdown-menu > .active > a, -.dropdown-menu > .active > a:hover, -.dropdown-menu > .active > a:focus { - color: #fff; - text-decoration: none; - background-color: #337ab7; - outline: 0; -} -.dropdown-menu > .disabled > a, -.dropdown-menu > .disabled > a:hover, -.dropdown-menu > .disabled > a:focus { - color: #777; -} -.dropdown-menu > .disabled > a:hover, -.dropdown-menu > .disabled > a:focus { - text-decoration: none; - cursor: not-allowed; - background-color: transparent; - background-image: none; - filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); -} -.open > .dropdown-menu { - display: block; -} -.open > a { - outline: 0; -} -.dropdown-menu-right { - right: 0; - left: auto; -} -.dropdown-menu-left { - right: auto; - left: 0; -} -.dropdown-header { - display: block; - padding: 3px 20px; - font-size: 12px; - line-height: 1.42857143; - color: #777; - white-space: nowrap; -} -.dropdown-backdrop { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 990; -} -.pull-right > .dropdown-menu { - right: 0; - left: auto; -} -.dropup .caret, -.navbar-fixed-bottom .dropdown .caret { - content: ""; - border-top: 0; - border-bottom: 4px dashed; - border-bottom: 4px solid \9; -} -.dropup .dropdown-menu, -.navbar-fixed-bottom .dropdown .dropdown-menu { - top: auto; - bottom: 100%; - margin-bottom: 2px; -} -@media (min-width: 768px) { - .navbar-right .dropdown-menu { - right: 0; - left: auto; - } - .navbar-right .dropdown-menu-left { - right: auto; - left: 0; - } -} -.btn-group, -.btn-group-vertical { - position: relative; - display: inline-block; - vertical-align: middle; -} -.btn-group > .btn, -.btn-group-vertical > .btn { - position: relative; - float: left; -} -.btn-group > .btn:hover, -.btn-group-vertical > .btn:hover, -.btn-group > .btn:focus, -.btn-group-vertical > .btn:focus, -.btn-group > .btn:active, -.btn-group-vertical > .btn:active, -.btn-group > .btn.active, -.btn-group-vertical > .btn.active { - z-index: 2; -} -.btn-group .btn + .btn, -.btn-group .btn + .btn-group, -.btn-group .btn-group + .btn, -.btn-group .btn-group + .btn-group { - margin-left: -1px; -} -.btn-toolbar { - margin-left: -5px; -} -.btn-toolbar .btn, -.btn-toolbar .btn-group, -.btn-toolbar .input-group { - float: left; -} -.btn-toolbar > .btn, -.btn-toolbar > .btn-group, -.btn-toolbar > .input-group { - margin-left: 5px; -} -.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { - border-radius: 0; -} -.btn-group > .btn:first-child { - margin-left: 0; -} -.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} -.btn-group > .btn:last-child:not(:first-child), -.btn-group > .dropdown-toggle:not(:first-child) { - border-top-left-radius: 0; - border-bottom-left-radius: 0; -} -.btn-group > .btn-group { - float: left; -} -.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { - border-radius: 0; -} -.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child, -.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} -.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { - border-top-left-radius: 0; - border-bottom-left-radius: 0; -} -.btn-group .dropdown-toggle:active, -.btn-group.open .dropdown-toggle { - outline: 0; -} -.btn-group > .btn + .dropdown-toggle { - padding-right: 8px; - padding-left: 8px; -} -.btn-group > .btn-lg + .dropdown-toggle { - padding-right: 12px; - padding-left: 12px; -} -.btn-group.open .dropdown-toggle { - -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); - box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); -} -.btn-group.open .dropdown-toggle.btn-link { - -webkit-box-shadow: none; - box-shadow: none; -} -.btn .caret { - margin-left: 0; -} -.btn-lg .caret { - border-width: 5px 5px 0; - border-bottom-width: 0; -} -.dropup .btn-lg .caret { - border-width: 0 5px 5px; -} -.btn-group-vertical > .btn, -.btn-group-vertical > .btn-group, -.btn-group-vertical > .btn-group > .btn { - display: block; - float: none; - width: 100%; - max-width: 100%; -} -.btn-group-vertical > .btn-group > .btn { - float: none; -} -.btn-group-vertical > .btn + .btn, -.btn-group-vertical > .btn + .btn-group, -.btn-group-vertical > .btn-group + .btn, -.btn-group-vertical > .btn-group + .btn-group { - margin-top: -1px; - margin-left: 0; -} -.btn-group-vertical > .btn:not(:first-child):not(:last-child) { - border-radius: 0; -} -.btn-group-vertical > .btn:first-child:not(:last-child) { - border-top-right-radius: 4px; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} -.btn-group-vertical > .btn:last-child:not(:first-child) { - border-top-left-radius: 0; - border-top-right-radius: 0; - border-bottom-left-radius: 4px; -} -.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { - border-radius: 0; -} -.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, -.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} -.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { - border-top-left-radius: 0; - border-top-right-radius: 0; -} -.btn-group-justified { - display: table; - width: 100%; - table-layout: fixed; - border-collapse: separate; -} -.btn-group-justified > .btn, -.btn-group-justified > .btn-group { - display: table-cell; - float: none; - width: 1%; -} -.btn-group-justified > .btn-group .btn { - width: 100%; -} -.btn-group-justified > .btn-group .dropdown-menu { - left: auto; -} -[data-toggle="buttons"] > .btn input[type="radio"], -[data-toggle="buttons"] > .btn-group > .btn input[type="radio"], -[data-toggle="buttons"] > .btn input[type="checkbox"], -[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] { - position: absolute; - clip: rect(0, 0, 0, 0); - pointer-events: none; -} -.input-group { - position: relative; - display: table; - border-collapse: separate; -} -.input-group[class*="col-"] { - float: none; - padding-right: 0; - padding-left: 0; -} -.input-group .form-control { - position: relative; - z-index: 2; - float: left; - width: 100%; - margin-bottom: 0; -} -.input-group-lg > .form-control, -.input-group-lg > .input-group-addon, -.input-group-lg > .input-group-btn > .btn { - height: 46px; - padding: 10px 16px; - font-size: 18px; - line-height: 1.3333333; - border-radius: 6px; -} -select.input-group-lg > .form-control, -select.input-group-lg > .input-group-addon, -select.input-group-lg > .input-group-btn > .btn { - height: 46px; - line-height: 46px; -} -textarea.input-group-lg > .form-control, -textarea.input-group-lg > .input-group-addon, -textarea.input-group-lg > .input-group-btn > .btn, -select[multiple].input-group-lg > .form-control, -select[multiple].input-group-lg > .input-group-addon, -select[multiple].input-group-lg > .input-group-btn > .btn { - height: auto; -} -.input-group-sm > .form-control, -.input-group-sm > .input-group-addon, -.input-group-sm > .input-group-btn > .btn { - height: 30px; - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - border-radius: 3px; -} -select.input-group-sm > .form-control, -select.input-group-sm > .input-group-addon, -select.input-group-sm > .input-group-btn > .btn { - height: 30px; - line-height: 30px; -} -textarea.input-group-sm > .form-control, -textarea.input-group-sm > .input-group-addon, -textarea.input-group-sm > .input-group-btn > .btn, -select[multiple].input-group-sm > .form-control, -select[multiple].input-group-sm > .input-group-addon, -select[multiple].input-group-sm > .input-group-btn > .btn { - height: auto; -} -.input-group-addon, -.input-group-btn, -.input-group .form-control { - display: table-cell; -} -.input-group-addon:not(:first-child):not(:last-child), -.input-group-btn:not(:first-child):not(:last-child), -.input-group .form-control:not(:first-child):not(:last-child) { - border-radius: 0; -} -.input-group-addon, -.input-group-btn { - width: 1%; - white-space: nowrap; - vertical-align: middle; -} -.input-group-addon { - padding: 6px 12px; - font-size: 14px; - font-weight: normal; - line-height: 1; - color: #555; - text-align: center; - background-color: #eee; - border: 1px solid #ccc; - border-radius: 4px; -} -.input-group-addon.input-sm { - padding: 5px 10px; - font-size: 12px; - border-radius: 3px; -} -.input-group-addon.input-lg { - padding: 10px 16px; - font-size: 18px; - border-radius: 6px; -} -.input-group-addon input[type="radio"], -.input-group-addon input[type="checkbox"] { - margin-top: 0; -} -.input-group .form-control:first-child, -.input-group-addon:first-child, -.input-group-btn:first-child > .btn, -.input-group-btn:first-child > .btn-group > .btn, -.input-group-btn:first-child > .dropdown-toggle, -.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), -.input-group-btn:last-child > .btn-group:not(:last-child) > .btn { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} -.input-group-addon:first-child { - border-right: 0; -} -.input-group .form-control:last-child, -.input-group-addon:last-child, -.input-group-btn:last-child > .btn, -.input-group-btn:last-child > .btn-group > .btn, -.input-group-btn:last-child > .dropdown-toggle, -.input-group-btn:first-child > .btn:not(:first-child), -.input-group-btn:first-child > .btn-group:not(:first-child) > .btn { - border-top-left-radius: 0; - border-bottom-left-radius: 0; -} -.input-group-addon:last-child { - border-left: 0; -} -.input-group-btn { - position: relative; - font-size: 0; - white-space: nowrap; -} -.input-group-btn > .btn { - position: relative; -} -.input-group-btn > .btn + .btn { - margin-left: -1px; -} -.input-group-btn > .btn:hover, -.input-group-btn > .btn:focus, -.input-group-btn > .btn:active { - z-index: 2; -} -.input-group-btn:first-child > .btn, -.input-group-btn:first-child > .btn-group { - margin-right: -1px; -} -.input-group-btn:last-child > .btn, -.input-group-btn:last-child > .btn-group { - z-index: 2; - margin-left: -1px; -} -.nav { - padding-left: 0; - margin-bottom: 0; - list-style: none; -} -.nav > li { - position: relative; - display: block; -} -.nav > li > a { - position: relative; - display: block; - padding: 10px 15px; -} -.nav > li > a:hover, -.nav > li > a:focus { - text-decoration: none; - background-color: #eee; -} -.nav > li.disabled > a { - color: #777; -} -.nav > li.disabled > a:hover, -.nav > li.disabled > a:focus { - color: #777; - text-decoration: none; - cursor: not-allowed; - background-color: transparent; -} -.nav .open > a, -.nav .open > a:hover, -.nav .open > a:focus { - background-color: #eee; - border-color: #337ab7; -} -.nav .nav-divider { - height: 1px; - margin: 9px 0; - overflow: hidden; - background-color: #e5e5e5; -} -.nav > li > a > img { - max-width: none; -} -.nav-tabs { - border-bottom: 1px solid #ddd; -} -.nav-tabs > li { - float: left; - margin-bottom: -1px; -} -.nav-tabs > li > a { - margin-right: 2px; - line-height: 1.42857143; - border: 1px solid transparent; - border-radius: 4px 4px 0 0; -} -.nav-tabs > li > a:hover { - border-color: #eee #eee #ddd; -} -.nav-tabs > li.active > a, -.nav-tabs > li.active > a:hover, -.nav-tabs > li.active > a:focus { - color: #555; - cursor: default; - background-color: #fff; - border: 1px solid #ddd; - border-bottom-color: transparent; -} -.nav-tabs.nav-justified { - width: 100%; - border-bottom: 0; -} -.nav-tabs.nav-justified > li { - float: none; -} -.nav-tabs.nav-justified > li > a { - margin-bottom: 5px; - text-align: center; -} -.nav-tabs.nav-justified > .dropdown .dropdown-menu { - top: auto; - left: auto; -} -@media (min-width: 768px) { - .nav-tabs.nav-justified > li { - display: table-cell; - width: 1%; - } - .nav-tabs.nav-justified > li > a { - margin-bottom: 0; - } -} -.nav-tabs.nav-justified > li > a { - margin-right: 0; - border-radius: 4px; -} -.nav-tabs.nav-justified > .active > a, -.nav-tabs.nav-justified > .active > a:hover, -.nav-tabs.nav-justified > .active > a:focus { - border: 1px solid #ddd; -} -@media (min-width: 768px) { - .nav-tabs.nav-justified > li > a { - border-bottom: 1px solid #ddd; - border-radius: 4px 4px 0 0; - } - .nav-tabs.nav-justified > .active > a, - .nav-tabs.nav-justified > .active > a:hover, - .nav-tabs.nav-justified > .active > a:focus { - border-bottom-color: #fff; - } -} -.nav-pills > li { - float: left; -} -.nav-pills > li > a { - border-radius: 4px; -} -.nav-pills > li + li { - margin-left: 2px; -} -.nav-pills > li.active > a, -.nav-pills > li.active > a:hover, -.nav-pills > li.active > a:focus { - color: #fff; - background-color: #337ab7; -} -.nav-stacked > li { - float: none; -} -.nav-stacked > li + li { - margin-top: 2px; - margin-left: 0; -} -.nav-justified { - width: 100%; -} -.nav-justified > li { - float: none; -} -.nav-justified > li > a { - margin-bottom: 5px; - text-align: center; -} -.nav-justified > .dropdown .dropdown-menu { - top: auto; - left: auto; -} -@media (min-width: 768px) { - .nav-justified > li { - display: table-cell; - width: 1%; - } - .nav-justified > li > a { - margin-bottom: 0; - } -} -.nav-tabs-justified { - border-bottom: 0; -} -.nav-tabs-justified > li > a { - margin-right: 0; - border-radius: 4px; -} -.nav-tabs-justified > .active > a, -.nav-tabs-justified > .active > a:hover, -.nav-tabs-justified > .active > a:focus { - border: 1px solid #ddd; -} -@media (min-width: 768px) { - .nav-tabs-justified > li > a { - border-bottom: 1px solid #ddd; - border-radius: 4px 4px 0 0; - } - .nav-tabs-justified > .active > a, - .nav-tabs-justified > .active > a:hover, - .nav-tabs-justified > .active > a:focus { - border-bottom-color: #fff; - } -} -.tab-content > .tab-pane { - display: none; -} -.tab-content > .active { - display: block; -} -.nav-tabs .dropdown-menu { - margin-top: -1px; - border-top-left-radius: 0; - border-top-right-radius: 0; -} -.navbar { - position: relative; - min-height: 50px; - margin-bottom: 20px; - border: 1px solid transparent; -} -@media (min-width: 768px) { - .navbar { - border-radius: 4px; - } -} -@media (min-width: 768px) { - .navbar-header { - float: left; - } -} -.navbar-collapse { - padding-right: 15px; - padding-left: 15px; - overflow-x: visible; - -webkit-overflow-scrolling: touch; - border-top: 1px solid transparent; - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); -} -.navbar-collapse.in { - overflow-y: auto; -} -@media (min-width: 768px) { - .navbar-collapse { - width: auto; - border-top: 0; - -webkit-box-shadow: none; - box-shadow: none; - } - .navbar-collapse.collapse { - display: block !important; - height: auto !important; - padding-bottom: 0; - overflow: visible !important; - } - .navbar-collapse.in { - overflow-y: visible; - } - .navbar-fixed-top .navbar-collapse, - .navbar-static-top .navbar-collapse, - .navbar-fixed-bottom .navbar-collapse { - padding-right: 0; - padding-left: 0; - } -} -.navbar-fixed-top .navbar-collapse, -.navbar-fixed-bottom .navbar-collapse { - max-height: 340px; -} -@media (max-device-width: 480px) and (orientation: landscape) { - .navbar-fixed-top .navbar-collapse, - .navbar-fixed-bottom .navbar-collapse { - max-height: 200px; - } -} -.container > .navbar-header, -.container-fluid > .navbar-header, -.container > .navbar-collapse, -.container-fluid > .navbar-collapse { - margin-right: -15px; - margin-left: -15px; -} -@media (min-width: 768px) { - .container > .navbar-header, - .container-fluid > .navbar-header, - .container > .navbar-collapse, - .container-fluid > .navbar-collapse { - margin-right: 0; - margin-left: 0; - } -} -.navbar-static-top { - z-index: 1000; - border-width: 0 0 1px; -} -@media (min-width: 768px) { - .navbar-static-top { - border-radius: 0; - } -} -.navbar-fixed-top, -.navbar-fixed-bottom { - position: fixed; - right: 0; - left: 0; - z-index: 1030; -} -@media (min-width: 768px) { - .navbar-fixed-top, - .navbar-fixed-bottom { - border-radius: 0; - } -} -.navbar-fixed-top { - top: 0; - border-width: 0 0 1px; -} -.navbar-fixed-bottom { - bottom: 0; - margin-bottom: 0; - border-width: 1px 0 0; -} -.navbar-brand { - float: left; - height: 50px; - padding: 15px 15px; - font-size: 18px; - line-height: 20px; -} -.navbar-brand:hover, -.navbar-brand:focus { - text-decoration: none; -} -.navbar-brand > img { - display: block; -} -@media (min-width: 768px) { - .navbar > .container .navbar-brand, - .navbar > .container-fluid .navbar-brand { - margin-left: -15px; - } -} -.navbar-toggle { - position: relative; - float: right; - padding: 9px 10px; - margin-top: 8px; - margin-right: 15px; - margin-bottom: 8px; - background-color: transparent; - background-image: none; - border: 1px solid transparent; - border-radius: 4px; -} -.navbar-toggle:focus { - outline: 0; -} -.navbar-toggle .icon-bar { - display: block; - width: 22px; - height: 2px; - border-radius: 1px; -} -.navbar-toggle .icon-bar + .icon-bar { - margin-top: 4px; -} -@media (min-width: 768px) { - .navbar-toggle { - display: none; - } -} -.navbar-nav { - margin: 7.5px -15px; -} -.navbar-nav > li > a { - padding-top: 10px; - padding-bottom: 10px; - line-height: 20px; -} -@media (max-width: 767px) { - .navbar-nav .open .dropdown-menu { - position: static; - float: none; - width: auto; - margin-top: 0; - background-color: transparent; - border: 0; - -webkit-box-shadow: none; - box-shadow: none; - } - .navbar-nav .open .dropdown-menu > li > a, - .navbar-nav .open .dropdown-menu .dropdown-header { - padding: 5px 15px 5px 25px; - } - .navbar-nav .open .dropdown-menu > li > a { - line-height: 20px; - } - .navbar-nav .open .dropdown-menu > li > a:hover, - .navbar-nav .open .dropdown-menu > li > a:focus { - background-image: none; - } -} -@media (min-width: 768px) { - .navbar-nav { - float: left; - margin: 0; - } - .navbar-nav > li { - float: left; - } - .navbar-nav > li > a { - padding-top: 15px; - padding-bottom: 15px; - } -} -.navbar-form { - padding: 10px 15px; - margin-top: 8px; - margin-right: -15px; - margin-bottom: 8px; - margin-left: -15px; - border-top: 1px solid transparent; - border-bottom: 1px solid transparent; - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); -} -@media (min-width: 768px) { - .navbar-form .form-group { - display: inline-block; - margin-bottom: 0; - vertical-align: middle; - } - .navbar-form .form-control { - display: inline-block; - width: auto; - vertical-align: middle; - } - .navbar-form .form-control-static { - display: inline-block; - } - .navbar-form .input-group { - display: inline-table; - vertical-align: middle; - } - .navbar-form .input-group .input-group-addon, - .navbar-form .input-group .input-group-btn, - .navbar-form .input-group .form-control { - width: auto; - } - .navbar-form .input-group > .form-control { - width: 100%; - } - .navbar-form .control-label { - margin-bottom: 0; - vertical-align: middle; - } - .navbar-form .radio, - .navbar-form .checkbox { - display: inline-block; - margin-top: 0; - margin-bottom: 0; - vertical-align: middle; - } - .navbar-form .radio label, - .navbar-form .checkbox label { - padding-left: 0; - } - .navbar-form .radio input[type="radio"], - .navbar-form .checkbox input[type="checkbox"] { - position: relative; - margin-left: 0; - } - .navbar-form .has-feedback .form-control-feedback { - top: 0; - } -} -@media (max-width: 767px) { - .navbar-form .form-group { - margin-bottom: 5px; - } - .navbar-form .form-group:last-child { - margin-bottom: 0; - } -} -@media (min-width: 768px) { - .navbar-form { - width: auto; - padding-top: 0; - padding-bottom: 0; - margin-right: 0; - margin-left: 0; - border: 0; - -webkit-box-shadow: none; - box-shadow: none; - } -} -.navbar-nav > li > .dropdown-menu { - margin-top: 0; - border-top-left-radius: 0; - border-top-right-radius: 0; -} -.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { - margin-bottom: 0; - border-top-left-radius: 4px; - border-top-right-radius: 4px; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} -.navbar-btn { - margin-top: 8px; - margin-bottom: 8px; -} -.navbar-btn.btn-sm { - margin-top: 10px; - margin-bottom: 10px; -} -.navbar-btn.btn-xs { - margin-top: 14px; - margin-bottom: 14px; -} -.navbar-text { - margin-top: 15px; - margin-bottom: 15px; -} -@media (min-width: 768px) { - .navbar-text { - float: left; - margin-right: 15px; - margin-left: 15px; - } -} -@media (min-width: 768px) { - .navbar-left { - float: left !important; - } - .navbar-right { - float: right !important; - margin-right: -15px; - } - .navbar-right ~ .navbar-right { - margin-right: 0; - } -} -.navbar-default { - background-color: #f8f8f8; - border-color: #e7e7e7; -} -.navbar-default .navbar-brand { - color: #777; -} -.navbar-default .navbar-brand:hover, -.navbar-default .navbar-brand:focus { - color: #5e5e5e; - background-color: transparent; -} -.navbar-default .navbar-text { - color: #777; -} -.navbar-default .navbar-nav > li > a { - color: #777; -} -.navbar-default .navbar-nav > li > a:hover, -.navbar-default .navbar-nav > li > a:focus { - color: #333; - background-color: transparent; -} -.navbar-default .navbar-nav > .active > a, -.navbar-default .navbar-nav > .active > a:hover, -.navbar-default .navbar-nav > .active > a:focus { - color: #555; - background-color: #e7e7e7; -} -.navbar-default .navbar-nav > .disabled > a, -.navbar-default .navbar-nav > .disabled > a:hover, -.navbar-default .navbar-nav > .disabled > a:focus { - color: #ccc; - background-color: transparent; -} -.navbar-default .navbar-toggle { - border-color: #ddd; -} -.navbar-default .navbar-toggle:hover, -.navbar-default .navbar-toggle:focus { - background-color: #ddd; -} -.navbar-default .navbar-toggle .icon-bar { - background-color: #888; -} -.navbar-default .navbar-collapse, -.navbar-default .navbar-form { - border-color: #e7e7e7; -} -.navbar-default .navbar-nav > .open > a, -.navbar-default .navbar-nav > .open > a:hover, -.navbar-default .navbar-nav > .open > a:focus { - color: #555; - background-color: #e7e7e7; -} -@media (max-width: 767px) { - .navbar-default .navbar-nav .open .dropdown-menu > li > a { - color: #777; - } - .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, - .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { - color: #333; - background-color: transparent; - } - .navbar-default .navbar-nav .open .dropdown-menu > .active > a, - .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, - .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { - color: #555; - background-color: #e7e7e7; - } - .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, - .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, - .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { - color: #ccc; - background-color: transparent; - } -} -.navbar-default .navbar-link { - color: #777; -} -.navbar-default .navbar-link:hover { - color: #333; -} -.navbar-default .btn-link { - color: #777; -} -.navbar-default .btn-link:hover, -.navbar-default .btn-link:focus { - color: #333; -} -.navbar-default .btn-link[disabled]:hover, -fieldset[disabled] .navbar-default .btn-link:hover, -.navbar-default .btn-link[disabled]:focus, -fieldset[disabled] .navbar-default .btn-link:focus { - color: #ccc; -} -.navbar-inverse { - background-color: #222; - border-color: #080808; -} -.navbar-inverse .navbar-brand { - color: #9d9d9d; -} -.navbar-inverse .navbar-brand:hover, -.navbar-inverse .navbar-brand:focus { - color: #fff; - background-color: transparent; -} -.navbar-inverse .navbar-text { - color: #9d9d9d; -} -.navbar-inverse .navbar-nav > li > a { - color: #9d9d9d; -} -.navbar-inverse .navbar-nav > li > a:hover, -.navbar-inverse .navbar-nav > li > a:focus { - color: #fff; - background-color: transparent; -} -.navbar-inverse .navbar-nav > .active > a, -.navbar-inverse .navbar-nav > .active > a:hover, -.navbar-inverse .navbar-nav > .active > a:focus { - color: #fff; - background-color: #080808; -} -.navbar-inverse .navbar-nav > .disabled > a, -.navbar-inverse .navbar-nav > .disabled > a:hover, -.navbar-inverse .navbar-nav > .disabled > a:focus { - color: #444; - background-color: transparent; -} -.navbar-inverse .navbar-toggle { - border-color: #333; -} -.navbar-inverse .navbar-toggle:hover, -.navbar-inverse .navbar-toggle:focus { - background-color: #333; -} -.navbar-inverse .navbar-toggle .icon-bar { - background-color: #fff; -} -.navbar-inverse .navbar-collapse, -.navbar-inverse .navbar-form { - border-color: #101010; -} -.navbar-inverse .navbar-nav > .open > a, -.navbar-inverse .navbar-nav > .open > a:hover, -.navbar-inverse .navbar-nav > .open > a:focus { - color: #fff; - background-color: #080808; -} -@media (max-width: 767px) { - .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { - border-color: #080808; - } - .navbar-inverse .navbar-nav .open .dropdown-menu .divider { - background-color: #080808; - } - .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { - color: #9d9d9d; - } - .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, - .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { - color: #fff; - background-color: transparent; - } - .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, - .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, - .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { - color: #fff; - background-color: #080808; - } - .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, - .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, - .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { - color: #444; - background-color: transparent; - } -} -.navbar-inverse .navbar-link { - color: #9d9d9d; -} -.navbar-inverse .navbar-link:hover { - color: #fff; -} -.navbar-inverse .btn-link { - color: #9d9d9d; -} -.navbar-inverse .btn-link:hover, -.navbar-inverse .btn-link:focus { - color: #fff; -} -.navbar-inverse .btn-link[disabled]:hover, -fieldset[disabled] .navbar-inverse .btn-link:hover, -.navbar-inverse .btn-link[disabled]:focus, -fieldset[disabled] .navbar-inverse .btn-link:focus { - color: #444; -} -.breadcrumb { - padding: 8px 15px; - margin-bottom: 20px; - list-style: none; - background-color: #f5f5f5; - border-radius: 4px; -} -.breadcrumb > li { - display: inline-block; -} -.breadcrumb > li + li:before { - padding: 0 5px; - color: #ccc; - content: "/\00a0"; -} -.breadcrumb > .active { - color: #777; -} -.pagination { - display: inline-block; - padding-left: 0; - margin: 20px 0; - border-radius: 4px; -} -.pagination > li { - display: inline; -} -.pagination > li > a, -.pagination > li > span { - position: relative; - float: left; - padding: 6px 12px; - margin-left: -1px; - line-height: 1.42857143; - color: #337ab7; - text-decoration: none; - background-color: #fff; - border: 1px solid #ddd; -} -.pagination > li:first-child > a, -.pagination > li:first-child > span { - margin-left: 0; - border-top-left-radius: 4px; - border-bottom-left-radius: 4px; -} -.pagination > li:last-child > a, -.pagination > li:last-child > span { - border-top-right-radius: 4px; - border-bottom-right-radius: 4px; -} -.pagination > li > a:hover, -.pagination > li > span:hover, -.pagination > li > a:focus, -.pagination > li > span:focus { - z-index: 3; - color: #23527c; - background-color: #eee; - border-color: #ddd; -} -.pagination > .active > a, -.pagination > .active > span, -.pagination > .active > a:hover, -.pagination > .active > span:hover, -.pagination > .active > a:focus, -.pagination > .active > span:focus { - z-index: 2; - color: #fff; - cursor: default; - background-color: #337ab7; - border-color: #337ab7; -} -.pagination > .disabled > span, -.pagination > .disabled > span:hover, -.pagination > .disabled > span:focus, -.pagination > .disabled > a, -.pagination > .disabled > a:hover, -.pagination > .disabled > a:focus { - color: #777; - cursor: not-allowed; - background-color: #fff; - border-color: #ddd; -} -.pagination-lg > li > a, -.pagination-lg > li > span { - padding: 10px 16px; - font-size: 18px; - line-height: 1.3333333; -} -.pagination-lg > li:first-child > a, -.pagination-lg > li:first-child > span { - border-top-left-radius: 6px; - border-bottom-left-radius: 6px; -} -.pagination-lg > li:last-child > a, -.pagination-lg > li:last-child > span { - border-top-right-radius: 6px; - border-bottom-right-radius: 6px; -} -.pagination-sm > li > a, -.pagination-sm > li > span { - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; -} -.pagination-sm > li:first-child > a, -.pagination-sm > li:first-child > span { - border-top-left-radius: 3px; - border-bottom-left-radius: 3px; -} -.pagination-sm > li:last-child > a, -.pagination-sm > li:last-child > span { - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; -} -.pager { - padding-left: 0; - margin: 20px 0; - text-align: center; - list-style: none; -} -.pager li { - display: inline; -} -.pager li > a, -.pager li > span { - display: inline-block; - padding: 5px 14px; - background-color: #fff; - border: 1px solid #ddd; - border-radius: 15px; -} -.pager li > a:hover, -.pager li > a:focus { - text-decoration: none; - background-color: #eee; -} -.pager .next > a, -.pager .next > span { - float: right; -} -.pager .previous > a, -.pager .previous > span { - float: left; -} -.pager .disabled > a, -.pager .disabled > a:hover, -.pager .disabled > a:focus, -.pager .disabled > span { - color: #777; - cursor: not-allowed; - background-color: #fff; -} -.label { - display: inline; - padding: .2em .6em .3em; - font-size: 75%; - font-weight: bold; - line-height: 1; - color: #fff; - text-align: center; - white-space: nowrap; - vertical-align: baseline; - border-radius: .25em; -} -a.label:hover, -a.label:focus { - color: #fff; - text-decoration: none; - cursor: pointer; -} -.label:empty { - display: none; -} -.btn .label { - position: relative; - top: -1px; -} -.label-default { - background-color: #777; -} -.label-default[href]:hover, -.label-default[href]:focus { - background-color: #5e5e5e; -} -.label-primary { - background-color: #337ab7; -} -.label-primary[href]:hover, -.label-primary[href]:focus { - background-color: #286090; -} -.label-success { - background-color: #5cb85c; -} -.label-success[href]:hover, -.label-success[href]:focus { - background-color: #449d44; -} -.label-info { - background-color: #5bc0de; -} -.label-info[href]:hover, -.label-info[href]:focus { - background-color: #31b0d5; -} -.label-warning { - background-color: #f0ad4e; -} -.label-warning[href]:hover, -.label-warning[href]:focus { - background-color: #ec971f; -} -.label-danger { - background-color: #d9534f; -} -.label-danger[href]:hover, -.label-danger[href]:focus { - background-color: #c9302c; -} -.badge { - display: inline-block; - min-width: 10px; - padding: 3px 7px; - font-size: 12px; - font-weight: bold; - line-height: 1; - color: #fff; - text-align: center; - white-space: nowrap; - vertical-align: middle; - background-color: #777; - border-radius: 10px; -} -.badge:empty { - display: none; -} -.btn .badge { - position: relative; - top: -1px; -} -.btn-xs .badge, -.btn-group-xs > .btn .badge { - top: 0; - padding: 1px 5px; -} -a.badge:hover, -a.badge:focus { - color: #fff; - text-decoration: none; - cursor: pointer; -} -.list-group-item.active > .badge, -.nav-pills > .active > a > .badge { - color: #337ab7; - background-color: #fff; -} -.list-group-item > .badge { - float: right; -} -.list-group-item > .badge + .badge { - margin-right: 5px; -} -.nav-pills > li > a > .badge { - margin-left: 3px; -} -.jumbotron { - padding-top: 30px; - padding-bottom: 30px; - margin-bottom: 30px; - color: inherit; - background-color: #eee; -} -.jumbotron h1, -.jumbotron .h1 { - color: inherit; -} -.jumbotron p { - margin-bottom: 15px; - font-size: 21px; - font-weight: 200; -} -.jumbotron > hr { - border-top-color: #d5d5d5; -} -.container .jumbotron, -.container-fluid .jumbotron { - border-radius: 6px; -} -.jumbotron .container { - max-width: 100%; -} -@media screen and (min-width: 768px) { - .jumbotron { - padding-top: 48px; - padding-bottom: 48px; - } - .container .jumbotron, - .container-fluid .jumbotron { - padding-right: 60px; - padding-left: 60px; - } - .jumbotron h1, - .jumbotron .h1 { - font-size: 63px; - } -} -.thumbnail { - display: block; - padding: 4px; - margin-bottom: 20px; - line-height: 1.42857143; - background-color: #fff; - border: 1px solid #ddd; - border-radius: 4px; - -webkit-transition: border .2s ease-in-out; - -o-transition: border .2s ease-in-out; - transition: border .2s ease-in-out; -} -.thumbnail > img, -.thumbnail a > img { - margin-right: auto; - margin-left: auto; -} -a.thumbnail:hover, -a.thumbnail:focus, -a.thumbnail.active { - border-color: #337ab7; -} -.thumbnail .caption { - padding: 9px; - color: #333; -} -.alert { - padding: 15px; - margin-bottom: 20px; - border: 1px solid transparent; - border-radius: 4px; -} -.alert h4 { - margin-top: 0; - color: inherit; -} -.alert .alert-link { - font-weight: bold; -} -.alert > p, -.alert > ul { - margin-bottom: 0; -} -.alert > p + p { - margin-top: 5px; -} -.alert-dismissable, -.alert-dismissible { - padding-right: 35px; -} -.alert-dismissable .close, -.alert-dismissible .close { - position: relative; - top: -2px; - right: -21px; - color: inherit; -} -.alert-success { - color: #3c763d; - background-color: #dff0d8; - border-color: #d6e9c6; -} -.alert-success hr { - border-top-color: #c9e2b3; -} -.alert-success .alert-link { - color: #2b542c; -} -.alert-info { - color: #31708f; - background-color: #d9edf7; - border-color: #bce8f1; -} -.alert-info hr { - border-top-color: #a6e1ec; -} -.alert-info .alert-link { - color: #245269; -} -.alert-warning { - color: #8a6d3b; - background-color: #fcf8e3; - border-color: #faebcc; -} -.alert-warning hr { - border-top-color: #f7e1b5; -} -.alert-warning .alert-link { - color: #66512c; -} -.alert-danger { - color: #a94442; - background-color: #f2dede; - border-color: #ebccd1; -} -.alert-danger hr { - border-top-color: #e4b9c0; -} -.alert-danger .alert-link { - color: #843534; -} -@-webkit-keyframes progress-bar-stripes { - from { - background-position: 40px 0; - } - to { - background-position: 0 0; - } -} -@-o-keyframes progress-bar-stripes { - from { - background-position: 40px 0; - } - to { - background-position: 0 0; - } -} -@keyframes progress-bar-stripes { - from { - background-position: 40px 0; - } - to { - background-position: 0 0; - } -} -.progress { - height: 20px; - margin-bottom: 20px; - overflow: hidden; - background-color: #f5f5f5; - border-radius: 4px; - -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); - box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); -} -.progress-bar { - float: left; - width: 0; - height: 100%; - font-size: 12px; - line-height: 20px; - color: #fff; - text-align: center; - background-color: #337ab7; - -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); - box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); - -webkit-transition: width .6s ease; - -o-transition: width .6s ease; - transition: width .6s ease; -} -.progress-striped .progress-bar, -.progress-bar-striped { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - -webkit-background-size: 40px 40px; - background-size: 40px 40px; -} -.progress.active .progress-bar, -.progress-bar.active { - -webkit-animation: progress-bar-stripes 2s linear infinite; - -o-animation: progress-bar-stripes 2s linear infinite; - animation: progress-bar-stripes 2s linear infinite; -} -.progress-bar-success { - background-color: #5cb85c; -} -.progress-striped .progress-bar-success { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); -} -.progress-bar-info { - background-color: #5bc0de; -} -.progress-striped .progress-bar-info { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); -} -.progress-bar-warning { - background-color: #f0ad4e; -} -.progress-striped .progress-bar-warning { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); -} -.progress-bar-danger { - background-color: #d9534f; -} -.progress-striped .progress-bar-danger { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); -} -.media { - margin-top: 15px; -} -.media:first-child { - margin-top: 0; -} -.media, -.media-body { - overflow: hidden; - zoom: 1; -} -.media-body { - width: 10000px; -} -.media-object { - display: block; -} -.media-object.img-thumbnail { - max-width: none; -} -.media-right, -.media > .pull-right { - padding-left: 10px; -} -.media-left, -.media > .pull-left { - padding-right: 10px; -} -.media-left, -.media-right, -.media-body { - display: table-cell; - vertical-align: top; -} -.media-middle { - vertical-align: middle; -} -.media-bottom { - vertical-align: bottom; -} -.media-heading { - margin-top: 0; - margin-bottom: 5px; -} -.media-list { - padding-left: 0; - list-style: none; -} -.list-group { - padding-left: 0; - margin-bottom: 20px; -} -.list-group-item { - position: relative; - display: block; - padding: 10px 15px; - margin-bottom: -1px; - background-color: #fff; - border: 1px solid #ddd; -} -.list-group-item:first-child { - border-top-left-radius: 4px; - border-top-right-radius: 4px; -} -.list-group-item:last-child { - margin-bottom: 0; - border-bottom-right-radius: 4px; - border-bottom-left-radius: 4px; -} -a.list-group-item, -button.list-group-item { - color: #555; -} -a.list-group-item .list-group-item-heading, -button.list-group-item .list-group-item-heading { - color: #333; -} -a.list-group-item:hover, -button.list-group-item:hover, -a.list-group-item:focus, -button.list-group-item:focus { - color: #555; - text-decoration: none; - background-color: #f5f5f5; -} -button.list-group-item { - width: 100%; - text-align: left; -} -.list-group-item.disabled, -.list-group-item.disabled:hover, -.list-group-item.disabled:focus { - color: #777; - cursor: not-allowed; - background-color: #eee; -} -.list-group-item.disabled .list-group-item-heading, -.list-group-item.disabled:hover .list-group-item-heading, -.list-group-item.disabled:focus .list-group-item-heading { - color: inherit; -} -.list-group-item.disabled .list-group-item-text, -.list-group-item.disabled:hover .list-group-item-text, -.list-group-item.disabled:focus .list-group-item-text { - color: #777; -} -.list-group-item.active, -.list-group-item.active:hover, -.list-group-item.active:focus { - z-index: 2; - color: #fff; - background-color: #337ab7; - border-color: #337ab7; -} -.list-group-item.active .list-group-item-heading, -.list-group-item.active:hover .list-group-item-heading, -.list-group-item.active:focus .list-group-item-heading, -.list-group-item.active .list-group-item-heading > small, -.list-group-item.active:hover .list-group-item-heading > small, -.list-group-item.active:focus .list-group-item-heading > small, -.list-group-item.active .list-group-item-heading > .small, -.list-group-item.active:hover .list-group-item-heading > .small, -.list-group-item.active:focus .list-group-item-heading > .small { - color: inherit; -} -.list-group-item.active .list-group-item-text, -.list-group-item.active:hover .list-group-item-text, -.list-group-item.active:focus .list-group-item-text { - color: #c7ddef; -} -.list-group-item-success { - color: #3c763d; - background-color: #dff0d8; -} -a.list-group-item-success, -button.list-group-item-success { - color: #3c763d; -} -a.list-group-item-success .list-group-item-heading, -button.list-group-item-success .list-group-item-heading { - color: inherit; -} -a.list-group-item-success:hover, -button.list-group-item-success:hover, -a.list-group-item-success:focus, -button.list-group-item-success:focus { - color: #3c763d; - background-color: #d0e9c6; -} -a.list-group-item-success.active, -button.list-group-item-success.active, -a.list-group-item-success.active:hover, -button.list-group-item-success.active:hover, -a.list-group-item-success.active:focus, -button.list-group-item-success.active:focus { - color: #fff; - background-color: #3c763d; - border-color: #3c763d; -} -.list-group-item-info { - color: #31708f; - background-color: #d9edf7; -} -a.list-group-item-info, -button.list-group-item-info { - color: #31708f; -} -a.list-group-item-info .list-group-item-heading, -button.list-group-item-info .list-group-item-heading { - color: inherit; -} -a.list-group-item-info:hover, -button.list-group-item-info:hover, -a.list-group-item-info:focus, -button.list-group-item-info:focus { - color: #31708f; - background-color: #c4e3f3; -} -a.list-group-item-info.active, -button.list-group-item-info.active, -a.list-group-item-info.active:hover, -button.list-group-item-info.active:hover, -a.list-group-item-info.active:focus, -button.list-group-item-info.active:focus { - color: #fff; - background-color: #31708f; - border-color: #31708f; -} -.list-group-item-warning { - color: #8a6d3b; - background-color: #fcf8e3; -} -a.list-group-item-warning, -button.list-group-item-warning { - color: #8a6d3b; -} -a.list-group-item-warning .list-group-item-heading, -button.list-group-item-warning .list-group-item-heading { - color: inherit; -} -a.list-group-item-warning:hover, -button.list-group-item-warning:hover, -a.list-group-item-warning:focus, -button.list-group-item-warning:focus { - color: #8a6d3b; - background-color: #faf2cc; -} -a.list-group-item-warning.active, -button.list-group-item-warning.active, -a.list-group-item-warning.active:hover, -button.list-group-item-warning.active:hover, -a.list-group-item-warning.active:focus, -button.list-group-item-warning.active:focus { - color: #fff; - background-color: #8a6d3b; - border-color: #8a6d3b; -} -.list-group-item-danger { - color: #a94442; - background-color: #f2dede; -} -a.list-group-item-danger, -button.list-group-item-danger { - color: #a94442; -} -a.list-group-item-danger .list-group-item-heading, -button.list-group-item-danger .list-group-item-heading { - color: inherit; -} -a.list-group-item-danger:hover, -button.list-group-item-danger:hover, -a.list-group-item-danger:focus, -button.list-group-item-danger:focus { - color: #a94442; - background-color: #ebcccc; -} -a.list-group-item-danger.active, -button.list-group-item-danger.active, -a.list-group-item-danger.active:hover, -button.list-group-item-danger.active:hover, -a.list-group-item-danger.active:focus, -button.list-group-item-danger.active:focus { - color: #fff; - background-color: #a94442; - border-color: #a94442; -} -.list-group-item-heading { - margin-top: 0; - margin-bottom: 5px; -} -.list-group-item-text { - margin-bottom: 0; - line-height: 1.3; -} -.panel { - margin-bottom: 20px; - background-color: #fff; - border: 1px solid transparent; - border-radius: 4px; - -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05); - box-shadow: 0 1px 1px rgba(0, 0, 0, .05); -} -.panel-body { - padding: 15px; -} -.panel-heading { - padding: 10px 15px; - border-bottom: 1px solid transparent; - border-top-left-radius: 3px; - border-top-right-radius: 3px; -} -.panel-heading > .dropdown .dropdown-toggle { - color: inherit; -} -.panel-title { - margin-top: 0; - margin-bottom: 0; - font-size: 16px; - color: inherit; -} -.panel-title > a, -.panel-title > small, -.panel-title > .small, -.panel-title > small > a, -.panel-title > .small > a { - color: inherit; -} -.panel-footer { - padding: 10px 15px; - background-color: #f5f5f5; - border-top: 1px solid #ddd; - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; -} -.panel > .list-group, -.panel > .panel-collapse > .list-group { - margin-bottom: 0; -} -.panel > .list-group .list-group-item, -.panel > .panel-collapse > .list-group .list-group-item { - border-width: 1px 0; - border-radius: 0; -} -.panel > .list-group:first-child .list-group-item:first-child, -.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child { - border-top: 0; - border-top-left-radius: 3px; - border-top-right-radius: 3px; -} -.panel > .list-group:last-child .list-group-item:last-child, -.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child { - border-bottom: 0; - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; -} -.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child { - border-top-left-radius: 0; - border-top-right-radius: 0; -} -.panel-heading + .list-group .list-group-item:first-child { - border-top-width: 0; -} -.list-group + .panel-footer { - border-top-width: 0; -} -.panel > .table, -.panel > .table-responsive > .table, -.panel > .panel-collapse > .table { - margin-bottom: 0; -} -.panel > .table caption, -.panel > .table-responsive > .table caption, -.panel > .panel-collapse > .table caption { - padding-right: 15px; - padding-left: 15px; -} -.panel > .table:first-child, -.panel > .table-responsive:first-child > .table:first-child { - border-top-left-radius: 3px; - border-top-right-radius: 3px; -} -.panel > .table:first-child > thead:first-child > tr:first-child, -.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child, -.panel > .table:first-child > tbody:first-child > tr:first-child, -.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child { - border-top-left-radius: 3px; - border-top-right-radius: 3px; -} -.panel > .table:first-child > thead:first-child > tr:first-child td:first-child, -.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, -.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, -.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, -.panel > .table:first-child > thead:first-child > tr:first-child th:first-child, -.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, -.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, -.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { - border-top-left-radius: 3px; -} -.panel > .table:first-child > thead:first-child > tr:first-child td:last-child, -.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, -.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, -.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, -.panel > .table:first-child > thead:first-child > tr:first-child th:last-child, -.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, -.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, -.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { - border-top-right-radius: 3px; -} -.panel > .table:last-child, -.panel > .table-responsive:last-child > .table:last-child { - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; -} -.panel > .table:last-child > tbody:last-child > tr:last-child, -.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, -.panel > .table:last-child > tfoot:last-child > tr:last-child, -.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child { - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; -} -.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, -.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, -.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, -.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, -.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, -.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, -.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, -.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { - border-bottom-left-radius: 3px; -} -.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, -.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, -.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, -.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, -.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, -.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, -.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, -.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { - border-bottom-right-radius: 3px; -} -.panel > .panel-body + .table, -.panel > .panel-body + .table-responsive, -.panel > .table + .panel-body, -.panel > .table-responsive + .panel-body { - border-top: 1px solid #ddd; -} -.panel > .table > tbody:first-child > tr:first-child th, -.panel > .table > tbody:first-child > tr:first-child td { - border-top: 0; -} -.panel > .table-bordered, -.panel > .table-responsive > .table-bordered { - border: 0; -} -.panel > .table-bordered > thead > tr > th:first-child, -.panel > .table-responsive > .table-bordered > thead > tr > th:first-child, -.panel > .table-bordered > tbody > tr > th:first-child, -.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, -.panel > .table-bordered > tfoot > tr > th:first-child, -.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, -.panel > .table-bordered > thead > tr > td:first-child, -.panel > .table-responsive > .table-bordered > thead > tr > td:first-child, -.panel > .table-bordered > tbody > tr > td:first-child, -.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, -.panel > .table-bordered > tfoot > tr > td:first-child, -.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { - border-left: 0; -} -.panel > .table-bordered > thead > tr > th:last-child, -.panel > .table-responsive > .table-bordered > thead > tr > th:last-child, -.panel > .table-bordered > tbody > tr > th:last-child, -.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, -.panel > .table-bordered > tfoot > tr > th:last-child, -.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, -.panel > .table-bordered > thead > tr > td:last-child, -.panel > .table-responsive > .table-bordered > thead > tr > td:last-child, -.panel > .table-bordered > tbody > tr > td:last-child, -.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, -.panel > .table-bordered > tfoot > tr > td:last-child, -.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { - border-right: 0; -} -.panel > .table-bordered > thead > tr:first-child > td, -.panel > .table-responsive > .table-bordered > thead > tr:first-child > td, -.panel > .table-bordered > tbody > tr:first-child > td, -.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, -.panel > .table-bordered > thead > tr:first-child > th, -.panel > .table-responsive > .table-bordered > thead > tr:first-child > th, -.panel > .table-bordered > tbody > tr:first-child > th, -.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { - border-bottom: 0; -} -.panel > .table-bordered > tbody > tr:last-child > td, -.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, -.panel > .table-bordered > tfoot > tr:last-child > td, -.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, -.panel > .table-bordered > tbody > tr:last-child > th, -.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, -.panel > .table-bordered > tfoot > tr:last-child > th, -.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { - border-bottom: 0; -} -.panel > .table-responsive { - margin-bottom: 0; - border: 0; -} -.panel-group { - margin-bottom: 20px; -} -.panel-group .panel { - margin-bottom: 0; - border-radius: 4px; -} -.panel-group .panel + .panel { - margin-top: 5px; -} -.panel-group .panel-heading { - border-bottom: 0; -} -.panel-group .panel-heading + .panel-collapse > .panel-body, -.panel-group .panel-heading + .panel-collapse > .list-group { - border-top: 1px solid #ddd; -} -.panel-group .panel-footer { - border-top: 0; -} -.panel-group .panel-footer + .panel-collapse .panel-body { - border-bottom: 1px solid #ddd; -} -.panel-default { - border-color: #ddd; -} -.panel-default > .panel-heading { - color: #333; - background-color: #f5f5f5; - border-color: #ddd; -} -.panel-default > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #ddd; -} -.panel-default > .panel-heading .badge { - color: #f5f5f5; - background-color: #333; -} -.panel-default > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #ddd; -} -.panel-primary { - border-color: #337ab7; -} -.panel-primary > .panel-heading { - color: #fff; - background-color: #337ab7; - border-color: #337ab7; -} -.panel-primary > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #337ab7; -} -.panel-primary > .panel-heading .badge { - color: #337ab7; - background-color: #fff; -} -.panel-primary > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #337ab7; -} -.panel-success { - border-color: #d6e9c6; -} -.panel-success > .panel-heading { - color: #3c763d; - background-color: #dff0d8; - border-color: #d6e9c6; -} -.panel-success > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #d6e9c6; -} -.panel-success > .panel-heading .badge { - color: #dff0d8; - background-color: #3c763d; -} -.panel-success > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #d6e9c6; -} -.panel-info { - border-color: #bce8f1; -} -.panel-info > .panel-heading { - color: #31708f; - background-color: #d9edf7; - border-color: #bce8f1; -} -.panel-info > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #bce8f1; -} -.panel-info > .panel-heading .badge { - color: #d9edf7; - background-color: #31708f; -} -.panel-info > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #bce8f1; -} -.panel-warning { - border-color: #faebcc; -} -.panel-warning > .panel-heading { - color: #8a6d3b; - background-color: #fcf8e3; - border-color: #faebcc; -} -.panel-warning > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #faebcc; -} -.panel-warning > .panel-heading .badge { - color: #fcf8e3; - background-color: #8a6d3b; -} -.panel-warning > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #faebcc; -} -.panel-danger { - border-color: #ebccd1; -} -.panel-danger > .panel-heading { - color: #a94442; - background-color: #f2dede; - border-color: #ebccd1; -} -.panel-danger > .panel-heading + .panel-collapse > .panel-body { - border-top-color: #ebccd1; -} -.panel-danger > .panel-heading .badge { - color: #f2dede; - background-color: #a94442; -} -.panel-danger > .panel-footer + .panel-collapse > .panel-body { - border-bottom-color: #ebccd1; -} -.embed-responsive { - position: relative; - display: block; - height: 0; - padding: 0; - overflow: hidden; -} -.embed-responsive .embed-responsive-item, -.embed-responsive iframe, -.embed-responsive embed, -.embed-responsive object, -.embed-responsive video { - position: absolute; - top: 0; - bottom: 0; - left: 0; - width: 100%; - height: 100%; - border: 0; -} -.embed-responsive-16by9 { - padding-bottom: 56.25%; -} -.embed-responsive-4by3 { - padding-bottom: 75%; -} -.well { - min-height: 20px; - padding: 19px; - margin-bottom: 20px; - background-color: #f5f5f5; - border: 1px solid #e3e3e3; - border-radius: 4px; - -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); - box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); -} -.well blockquote { - border-color: #ddd; - border-color: rgba(0, 0, 0, .15); -} -.well-lg { - padding: 24px; - border-radius: 6px; -} -.well-sm { - padding: 9px; - border-radius: 3px; -} -.close { - float: right; - font-size: 21px; - font-weight: bold; - line-height: 1; - color: #000; - text-shadow: 0 1px 0 #fff; - filter: alpha(opacity=20); - opacity: .2; -} -.close:hover, -.close:focus { - color: #000; - text-decoration: none; - cursor: pointer; - filter: alpha(opacity=50); - opacity: .5; -} -button.close { - -webkit-appearance: none; - padding: 0; - cursor: pointer; - background: transparent; - border: 0; -} -.modal-open { - overflow: hidden; -} -.modal { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1050; - display: none; - overflow: hidden; - -webkit-overflow-scrolling: touch; - outline: 0; -} -.modal.fade .modal-dialog { - -webkit-transition: -webkit-transform .3s ease-out; - -o-transition: -o-transform .3s ease-out; - transition: transform .3s ease-out; - -webkit-transform: translate(0, -25%); - -ms-transform: translate(0, -25%); - -o-transform: translate(0, -25%); - transform: translate(0, -25%); -} -.modal.in .modal-dialog { - -webkit-transform: translate(0, 0); - -ms-transform: translate(0, 0); - -o-transform: translate(0, 0); - transform: translate(0, 0); -} -.modal-open .modal { - overflow-x: hidden; - overflow-y: auto; -} -.modal-dialog { - position: relative; - width: auto; - margin: 10px; -} -.modal-content { - position: relative; - background-color: #fff; - -webkit-background-clip: padding-box; - background-clip: padding-box; - border: 1px solid #999; - border: 1px solid rgba(0, 0, 0, .2); - border-radius: 6px; - outline: 0; - -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5); - box-shadow: 0 3px 9px rgba(0, 0, 0, .5); -} -.modal-backdrop { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1040; - background-color: #000; -} -.modal-backdrop.fade { - filter: alpha(opacity=0); - opacity: 0; -} -.modal-backdrop.in { - filter: alpha(opacity=50); - opacity: .5; -} -.modal-header { - min-height: 16.42857143px; - padding: 15px; - border-bottom: 1px solid #e5e5e5; -} -.modal-header .close { - margin-top: -2px; -} -.modal-title { - margin: 0; - line-height: 1.42857143; -} -.modal-body { - position: relative; - padding: 15px; -} -.modal-footer { - padding: 15px; - text-align: right; - border-top: 1px solid #e5e5e5; -} -.modal-footer .btn + .btn { - margin-bottom: 0; - margin-left: 5px; -} -.modal-footer .btn-group .btn + .btn { - margin-left: -1px; -} -.modal-footer .btn-block + .btn-block { - margin-left: 0; -} -.modal-scrollbar-measure { - position: absolute; - top: -9999px; - width: 50px; - height: 50px; - overflow: scroll; -} -@media (min-width: 768px) { - .modal-dialog { - width: 600px; - margin: 30px auto; - } - .modal-content { - -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5); - box-shadow: 0 5px 15px rgba(0, 0, 0, .5); - } - .modal-sm { - width: 300px; - } -} -@media (min-width: 992px) { - .modal-lg { - width: 900px; - } -} -.tooltip { - position: absolute; - z-index: 1070; - display: block; - font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - font-size: 12px; - font-style: normal; - font-weight: normal; - line-height: 1.42857143; - text-align: left; - text-align: start; - text-decoration: none; - text-shadow: none; - text-transform: none; - letter-spacing: normal; - word-break: normal; - word-spacing: normal; - word-wrap: normal; - white-space: normal; - filter: alpha(opacity=0); - opacity: 0; - - line-break: auto; -} -.tooltip.in { - filter: alpha(opacity=90); - opacity: .9; -} -.tooltip.top { - padding: 5px 0; - margin-top: -3px; -} -.tooltip.right { - padding: 0 5px; - margin-left: 3px; -} -.tooltip.bottom { - padding: 5px 0; - margin-top: 3px; -} -.tooltip.left { - padding: 0 5px; - margin-left: -3px; -} -.tooltip-inner { - max-width: 200px; - padding: 3px 8px; - color: #fff; - text-align: center; - background-color: #000; - border-radius: 4px; -} -.tooltip-arrow { - position: absolute; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; -} -.tooltip.top .tooltip-arrow { - bottom: 0; - left: 50%; - margin-left: -5px; - border-width: 5px 5px 0; - border-top-color: #000; -} -.tooltip.top-left .tooltip-arrow { - right: 5px; - bottom: 0; - margin-bottom: -5px; - border-width: 5px 5px 0; - border-top-color: #000; -} -.tooltip.top-right .tooltip-arrow { - bottom: 0; - left: 5px; - margin-bottom: -5px; - border-width: 5px 5px 0; - border-top-color: #000; -} -.tooltip.right .tooltip-arrow { - top: 50%; - left: 0; - margin-top: -5px; - border-width: 5px 5px 5px 0; - border-right-color: #000; -} -.tooltip.left .tooltip-arrow { - top: 50%; - right: 0; - margin-top: -5px; - border-width: 5px 0 5px 5px; - border-left-color: #000; -} -.tooltip.bottom .tooltip-arrow { - top: 0; - left: 50%; - margin-left: -5px; - border-width: 0 5px 5px; - border-bottom-color: #000; -} -.tooltip.bottom-left .tooltip-arrow { - top: 0; - right: 5px; - margin-top: -5px; - border-width: 0 5px 5px; - border-bottom-color: #000; -} -.tooltip.bottom-right .tooltip-arrow { - top: 0; - left: 5px; - margin-top: -5px; - border-width: 0 5px 5px; - border-bottom-color: #000; -} -.popover { - position: absolute; - top: 0; - left: 0; - z-index: 1060; - display: none; - max-width: 276px; - padding: 1px; - font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - font-size: 14px; - font-style: normal; - font-weight: normal; - line-height: 1.42857143; - text-align: left; - text-align: start; - text-decoration: none; - text-shadow: none; - text-transform: none; - letter-spacing: normal; - word-break: normal; - word-spacing: normal; - word-wrap: normal; - white-space: normal; - background-color: #fff; - -webkit-background-clip: padding-box; - background-clip: padding-box; - border: 1px solid #ccc; - border: 1px solid rgba(0, 0, 0, .2); - border-radius: 6px; - -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2); - box-shadow: 0 5px 10px rgba(0, 0, 0, .2); - - line-break: auto; -} -.popover.top { - margin-top: -10px; -} -.popover.right { - margin-left: 10px; -} -.popover.bottom { - margin-top: 10px; -} -.popover.left { - margin-left: -10px; -} -.popover-title { - padding: 8px 14px; - margin: 0; - font-size: 14px; - background-color: #f7f7f7; - border-bottom: 1px solid #ebebeb; - border-radius: 5px 5px 0 0; -} -.popover-content { - padding: 9px 14px; -} -.popover > .arrow, -.popover > .arrow:after { - position: absolute; - display: block; - width: 0; - height: 0; - border-color: transparent; - border-style: solid; -} -.popover > .arrow { - border-width: 11px; -} -.popover > .arrow:after { - content: ""; - border-width: 10px; -} -.popover.top > .arrow { - bottom: -11px; - left: 50%; - margin-left: -11px; - border-top-color: #999; - border-top-color: rgba(0, 0, 0, .25); - border-bottom-width: 0; -} -.popover.top > .arrow:after { - bottom: 1px; - margin-left: -10px; - content: " "; - border-top-color: #fff; - border-bottom-width: 0; -} -.popover.right > .arrow { - top: 50%; - left: -11px; - margin-top: -11px; - border-right-color: #999; - border-right-color: rgba(0, 0, 0, .25); - border-left-width: 0; -} -.popover.right > .arrow:after { - bottom: -10px; - left: 1px; - content: " "; - border-right-color: #fff; - border-left-width: 0; -} -.popover.bottom > .arrow { - top: -11px; - left: 50%; - margin-left: -11px; - border-top-width: 0; - border-bottom-color: #999; - border-bottom-color: rgba(0, 0, 0, .25); -} -.popover.bottom > .arrow:after { - top: 1px; - margin-left: -10px; - content: " "; - border-top-width: 0; - border-bottom-color: #fff; -} -.popover.left > .arrow { - top: 50%; - right: -11px; - margin-top: -11px; - border-right-width: 0; - border-left-color: #999; - border-left-color: rgba(0, 0, 0, .25); -} -.popover.left > .arrow:after { - right: 1px; - bottom: -10px; - content: " "; - border-right-width: 0; - border-left-color: #fff; -} -.carousel { - position: relative; -} -.carousel-inner { - position: relative; - width: 100%; - overflow: hidden; -} -.carousel-inner > .item { - position: relative; - display: none; - -webkit-transition: .6s ease-in-out left; - -o-transition: .6s ease-in-out left; - transition: .6s ease-in-out left; -} -.carousel-inner > .item > img, -.carousel-inner > .item > a > img { - line-height: 1; -} -@media all and (transform-3d), (-webkit-transform-3d) { - .carousel-inner > .item { - -webkit-transition: -webkit-transform .6s ease-in-out; - -o-transition: -o-transform .6s ease-in-out; - transition: transform .6s ease-in-out; - - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - -webkit-perspective: 1000px; - perspective: 1000px; - } - .carousel-inner > .item.next, - .carousel-inner > .item.active.right { - left: 0; - -webkit-transform: translate3d(100%, 0, 0); - transform: translate3d(100%, 0, 0); - } - .carousel-inner > .item.prev, - .carousel-inner > .item.active.left { - left: 0; - -webkit-transform: translate3d(-100%, 0, 0); - transform: translate3d(-100%, 0, 0); - } - .carousel-inner > .item.next.left, - .carousel-inner > .item.prev.right, - .carousel-inner > .item.active { - left: 0; - -webkit-transform: translate3d(0, 0, 0); - transform: translate3d(0, 0, 0); - } -} -.carousel-inner > .active, -.carousel-inner > .next, -.carousel-inner > .prev { - display: block; -} -.carousel-inner > .active { - left: 0; -} -.carousel-inner > .next, -.carousel-inner > .prev { - position: absolute; - top: 0; - width: 100%; -} -.carousel-inner > .next { - left: 100%; -} -.carousel-inner > .prev { - left: -100%; -} -.carousel-inner > .next.left, -.carousel-inner > .prev.right { - left: 0; -} -.carousel-inner > .active.left { - left: -100%; -} -.carousel-inner > .active.right { - left: 100%; -} -.carousel-control { - position: absolute; - top: 0; - bottom: 0; - left: 0; - width: 15%; - font-size: 20px; - color: #fff; - text-align: center; - text-shadow: 0 1px 2px rgba(0, 0, 0, .6); - filter: alpha(opacity=50); - opacity: .5; -} -.carousel-control.left { - background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); - background-image: -o-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); - background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, .0001))); - background-image: linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); - background-repeat: repeat-x; -} -.carousel-control.right { - right: 0; - left: auto; - background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); - background-image: -o-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); - background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .0001)), to(rgba(0, 0, 0, .5))); - background-image: linear-gradient(to right, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); - background-repeat: repeat-x; -} -.carousel-control:hover, -.carousel-control:focus { - color: #fff; - text-decoration: none; - filter: alpha(opacity=90); - outline: 0; - opacity: .9; -} -.carousel-control .icon-prev, -.carousel-control .icon-next, -.carousel-control .glyphicon-chevron-left, -.carousel-control .glyphicon-chevron-right { - position: absolute; - top: 50%; - z-index: 5; - display: inline-block; - margin-top: -10px; -} -.carousel-control .icon-prev, -.carousel-control .glyphicon-chevron-left { - left: 50%; - margin-left: -10px; -} -.carousel-control .icon-next, -.carousel-control .glyphicon-chevron-right { - right: 50%; - margin-right: -10px; -} -.carousel-control .icon-prev, -.carousel-control .icon-next { - width: 20px; - height: 20px; - font-family: serif; - line-height: 1; -} -.carousel-control .icon-prev:before { - content: '\2039'; -} -.carousel-control .icon-next:before { - content: '\203a'; -} -.carousel-indicators { - position: absolute; - bottom: 10px; - left: 50%; - z-index: 15; - width: 60%; - padding-left: 0; - margin-left: -30%; - text-align: center; - list-style: none; -} -.carousel-indicators li { - display: inline-block; - width: 10px; - height: 10px; - margin: 1px; - text-indent: -999px; - cursor: pointer; - background-color: #000 \9; - background-color: rgba(0, 0, 0, 0); - border: 1px solid #fff; - border-radius: 10px; -} -.carousel-indicators .active { - width: 12px; - height: 12px; - margin: 0; - background-color: #fff; -} -.carousel-caption { - position: absolute; - right: 15%; - bottom: 20px; - left: 15%; - z-index: 10; - padding-top: 20px; - padding-bottom: 20px; - color: #fff; - text-align: center; - text-shadow: 0 1px 2px rgba(0, 0, 0, .6); -} -.carousel-caption .btn { - text-shadow: none; -} -@media screen and (min-width: 768px) { - .carousel-control .glyphicon-chevron-left, - .carousel-control .glyphicon-chevron-right, - .carousel-control .icon-prev, - .carousel-control .icon-next { - width: 30px; - height: 30px; - margin-top: -15px; - font-size: 30px; - } - .carousel-control .glyphicon-chevron-left, - .carousel-control .icon-prev { - margin-left: -15px; - } - .carousel-control .glyphicon-chevron-right, - .carousel-control .icon-next { - margin-right: -15px; - } - .carousel-caption { - right: 20%; - left: 20%; - padding-bottom: 30px; - } - .carousel-indicators { - bottom: 20px; - } -} -.clearfix:before, -.clearfix:after, -.dl-horizontal dd:before, -.dl-horizontal dd:after, -.container:before, -.container:after, -.container-fluid:before, -.container-fluid:after, -.row:before, -.row:after, -.form-horizontal .form-group:before, -.form-horizontal .form-group:after, -.btn-toolbar:before, -.btn-toolbar:after, -.btn-group-vertical > .btn-group:before, -.btn-group-vertical > .btn-group:after, -.nav:before, -.nav:after, -.navbar:before, -.navbar:after, -.navbar-header:before, -.navbar-header:after, -.navbar-collapse:before, -.navbar-collapse:after, -.pager:before, -.pager:after, -.panel-body:before, -.panel-body:after, -.modal-footer:before, -.modal-footer:after { - display: table; - content: " "; -} -.clearfix:after, -.dl-horizontal dd:after, -.container:after, -.container-fluid:after, -.row:after, -.form-horizontal .form-group:after, -.btn-toolbar:after, -.btn-group-vertical > .btn-group:after, -.nav:after, -.navbar:after, -.navbar-header:after, -.navbar-collapse:after, -.pager:after, -.panel-body:after, -.modal-footer:after { - clear: both; -} -.center-block { - display: block; - margin-right: auto; - margin-left: auto; -} -.pull-right { - float: right !important; -} -.pull-left { - float: left !important; -} -.hide { - display: none !important; -} -.show { - display: block !important; -} -.invisible { - visibility: hidden; -} -.text-hide { - font: 0/0 a; - color: transparent; - text-shadow: none; - background-color: transparent; - border: 0; -} -.hidden { - display: none !important; -} -.affix { - position: fixed; -} -@-ms-viewport { - width: device-width; -} -.visible-xs, -.visible-sm, -.visible-md, -.visible-lg { - display: none !important; -} -.visible-xs-block, -.visible-xs-inline, -.visible-xs-inline-block, -.visible-sm-block, -.visible-sm-inline, -.visible-sm-inline-block, -.visible-md-block, -.visible-md-inline, -.visible-md-inline-block, -.visible-lg-block, -.visible-lg-inline, -.visible-lg-inline-block { - display: none !important; -} -@media (max-width: 767px) { - .visible-xs { - display: block !important; - } - table.visible-xs { - display: table !important; - } - tr.visible-xs { - display: table-row !important; - } - th.visible-xs, - td.visible-xs { - display: table-cell !important; - } -} -@media (max-width: 767px) { - .visible-xs-block { - display: block !important; - } -} -@media (max-width: 767px) { - .visible-xs-inline { - display: inline !important; - } -} -@media (max-width: 767px) { - .visible-xs-inline-block { - display: inline-block !important; - } -} -@media (min-width: 768px) and (max-width: 991px) { - .visible-sm { - display: block !important; - } - table.visible-sm { - display: table !important; - } - tr.visible-sm { - display: table-row !important; - } - th.visible-sm, - td.visible-sm { - display: table-cell !important; - } -} -@media (min-width: 768px) and (max-width: 991px) { - .visible-sm-block { - display: block !important; - } -} -@media (min-width: 768px) and (max-width: 991px) { - .visible-sm-inline { - display: inline !important; - } -} -@media (min-width: 768px) and (max-width: 991px) { - .visible-sm-inline-block { - display: inline-block !important; - } -} -@media (min-width: 992px) and (max-width: 1199px) { - .visible-md { - display: block !important; - } - table.visible-md { - display: table !important; - } - tr.visible-md { - display: table-row !important; - } - th.visible-md, - td.visible-md { - display: table-cell !important; - } -} -@media (min-width: 992px) and (max-width: 1199px) { - .visible-md-block { - display: block !important; - } -} -@media (min-width: 992px) and (max-width: 1199px) { - .visible-md-inline { - display: inline !important; - } -} -@media (min-width: 992px) and (max-width: 1199px) { - .visible-md-inline-block { - display: inline-block !important; - } -} -@media (min-width: 1200px) { - .visible-lg { - display: block !important; - } - table.visible-lg { - display: table !important; - } - tr.visible-lg { - display: table-row !important; - } - th.visible-lg, - td.visible-lg { - display: table-cell !important; - } -} -@media (min-width: 1200px) { - .visible-lg-block { - display: block !important; - } -} -@media (min-width: 1200px) { - .visible-lg-inline { - display: inline !important; - } -} -@media (min-width: 1200px) { - .visible-lg-inline-block { - display: inline-block !important; - } -} -@media (max-width: 767px) { - .hidden-xs { - display: none !important; - } -} -@media (min-width: 768px) and (max-width: 991px) { - .hidden-sm { - display: none !important; - } -} -@media (min-width: 992px) and (max-width: 1199px) { - .hidden-md { - display: none !important; - } -} -@media (min-width: 1200px) { - .hidden-lg { - display: none !important; - } -} -.visible-print { - display: none !important; -} -@media print { - .visible-print { - display: block !important; - } - table.visible-print { - display: table !important; - } - tr.visible-print { - display: table-row !important; - } - th.visible-print, - td.visible-print { - display: table-cell !important; - } -} -.visible-print-block { - display: none !important; -} -@media print { - .visible-print-block { - display: block !important; - } -} -.visible-print-inline { - display: none !important; -} -@media print { - .visible-print-inline { - display: inline !important; - } -} -.visible-print-inline-block { - display: none !important; -} -@media print { - .visible-print-inline-block { - display: inline-block !important; - } -} -@media print { - .hidden-print { - display: none !important; - } -} -/*# sourceMappingURL=bootstrap.css.map */ diff --git a/public/assets/bootstrap/css/bootstrap.css.map b/public/assets/bootstrap/css/bootstrap.css.map deleted file mode 100644 index 9f60ed2..0000000 --- a/public/assets/bootstrap/css/bootstrap.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["bootstrap.css","less/normalize.less","less/print.less","less/glyphicons.less","less/scaffolding.less","less/mixins/vendor-prefixes.less","less/mixins/tab-focus.less","less/mixins/image.less","less/type.less","less/mixins/text-emphasis.less","less/mixins/background-variant.less","less/mixins/text-overflow.less","less/code.less","less/grid.less","less/mixins/grid.less","less/mixins/grid-framework.less","less/tables.less","less/mixins/table-row.less","less/forms.less","less/mixins/forms.less","less/buttons.less","less/mixins/buttons.less","less/mixins/opacity.less","less/component-animations.less","less/dropdowns.less","less/mixins/nav-divider.less","less/mixins/reset-filter.less","less/button-groups.less","less/mixins/border-radius.less","less/input-groups.less","less/navs.less","less/navbar.less","less/mixins/nav-vertical-align.less","less/utilities.less","less/breadcrumbs.less","less/pagination.less","less/mixins/pagination.less","less/pager.less","less/labels.less","less/mixins/labels.less","less/badges.less","less/jumbotron.less","less/thumbnails.less","less/alerts.less","less/mixins/alerts.less","less/progress-bars.less","less/mixins/gradients.less","less/mixins/progress-bar.less","less/media.less","less/list-group.less","less/mixins/list-group.less","less/panels.less","less/mixins/panels.less","less/responsive-embed.less","less/wells.less","less/close.less","less/modals.less","less/tooltip.less","less/mixins/reset-text.less","less/popovers.less","less/carousel.less","less/mixins/clearfix.less","less/mixins/center-block.less","less/mixins/hide-text.less","less/responsive-utilities.less","less/mixins/responsive-visibility.less"],"names":[],"mappings":"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,iBAAA;CHsR9C;AGrRmC;EAAW,iBAAA;CHwR9C;AGvRmC;EAAW,iBAAA;CH0R9C;AGzRmC;EAAW,iBAAA;CH4R9C;AG3RmC;EAAW,iBAAA;CH8R9C;AG7RmC;EAAW,iBAAA;CHgS9C;AG/RmC;EAAW,iBAAA;CHkS9C;AGjSmC;EAAW,iBAAA;CHoS9C;AGnSmC;EAAW,iBAAA;CHsS9C;AGrSmC;EAAW,iBAAA;CHwS9C;AGvSmC;EAAW,iBAAA;CH0S9C;AGzSmC;EAAW,iBAAA;CH4S9C;AG3SmC;EAAW,iBAAA;CH8S9C;AG7SmC;EAAW,iBAAA;CHgT9C;AG/SmC;EAAW,iBAAA;CHkT9C;AGjTmC;EAAW,iBAAA;CHoT9C;AGnTmC;EAAW,iBAAA;CHsT9C;AGrTmC;EAAW,iBAAA;CHwT9C;AGvTmC;EAAW,iBAAA;CH0T9C;AGzTmC;EAAW,iBAAA;CH4T9C;AG3TmC;EAAW,iBAAA;CH8T9C;AG7TmC;EAAW,iBAAA;CHgU9C;AG/TmC;EAAW,iBAAA;CHkU9C;AGjUmC;EAAW,iBAAA;CHoU9C;AGnUmC;EAAW,iBAAA;CHsU9C;AGrUmC;EAAW,iBAAA;CHwU9C;AGvUmC;EAAW,iBAAA;CH0U9C;AGzUmC;EAAW,iBAAA;CH4U9C;AG3UmC;EAAW,iBAAA;CH8U9C;AG7UmC;EAAW,iBAAA;CHgV9C;AG/UmC;EAAW,iBAAA;CHkV9C;AGjVmC;EAAW,iBAAA;CHoV9C;AGnVmC;EAAW,iBAAA;CHsV9C;AGrVmC;EAAW,iBAAA;CHwV9C;AGvVmC;EAAW,iBAAA;CH0V9C;AGzVmC;EAAW,iBAAA;CH4V9C;AG3VmC;EAAW,iBAAA;CH8V9C;AG7VmC;EAAW,iBAAA;CHgW9C;AG/VmC;EAAW,iBAAA;CHkW9C;AGjWmC;EAAW,iBAAA;CHoW9C;AGnWmC;EAAW,iBAAA;CHsW9C;AGrWmC;EAAW,iBAAA;CHwW9C;AGvWmC;EAAW,iBAAA;CH0W9C;AGzWmC;EAAW,iBAAA;CH4W9C;AG3WmC;EAAW,iBAAA;CH8W9C;AG7WmC;EAAW,iBAAA;CHgX9C;AG/WmC;EAAW,iBAAA;CHkX9C;AGjXmC;EAAW,iBAAA;CHoX9C;AGnXmC;EAAW,iBAAA;CHsX9C;AGrXmC;EAAW,iBAAA;CHwX9C;AGvXmC;EAAW,iBAAA;CH0X9C;AGzXmC;EAAW,iBAAA;CH4X9C;AG3XmC;EAAW,iBAAA;CH8X9C;AG7XmC;EAAW,iBAAA;CHgY9C;AG/XmC;EAAW,iBAAA;CHkY9C;AGjYmC;EAAW,iBAAA;CHoY9C;AGnYmC;EAAW,iBAAA;CHsY9C;AGrYmC;EAAW,iBAAA;CHwY9C;AGvYmC;EAAW,iBAAA;CH0Y9C;AGzYmC;EAAW,iBAAA;CH4Y9C;AG3YmC;EAAW,iBAAA;CH8Y9C;AG7YmC;EAAW,iBAAA;CHgZ9C;AG/YmC;EAAW,iBAAA;CHkZ9C;AGjZmC;EAAW,iBAAA;CHoZ9C;AGnZmC;EAAW,iBAAA;CHsZ9C;AGrZmC;EAAW,iBAAA;CHwZ9C;AGvZmC;EAAW,iBAAA;CH0Z9C;AGzZmC;EAAW,iBAAA;CH4Z9C;AG3ZmC;EAAW,iBAAA;CH8Z9C;AG7ZmC;EAAW,iBAAA;CHga9C;AG/ZmC;EAAW,iBAAA;CHka9C;AGjamC;EAAW,iBAAA;CHoa9C;AGnamC;EAAW,iBAAA;CHsa9C;AGramC;EAAW,iBAAA;CHwa9C;AGvamC;EAAW,iBAAA;CH0a9C;AGzamC;EAAW,iBAAA;CH4a9C;AG3amC;EAAW,iBAAA;CH8a9C;AG7amC;EAAW,iBAAA;CHgb9C;AG/amC;EAAW,iBAAA;CHkb9C;AGjbmC;EAAW,iBAAA;CHob9C;AGnbmC;EAAW,iBAAA;CHsb9C;AGrbmC;EAAW,iBAAA;CHwb9C;AGvbmC;EAAW,iBAAA;CH0b9C;AGzbmC;EAAW,iBAAA;CH4b9C;AG3bmC;EAAW,iBAAA;CH8b9C;AG7bmC;EAAW,iBAAA;CHgc9C;AG/bmC;EAAW,iBAAA;CHkc9C;AGjcmC;EAAW,iBAAA;CHoc9C;AGncmC;EAAW,iBAAA;CHsc9C;AGrcmC;EAAW,iBAAA;CHwc9C;AGvcmC;EAAW,iBAAA;CH0c9C;AGzcmC;EAAW,iBAAA;CH4c9C;AG3cmC;EAAW,iBAAA;CH8c9C;AG7cmC;EAAW,iBAAA;CHgd9C;AG/cmC;EAAW,iBAAA;CHkd9C;AGjdmC;EAAW,iBAAA;CHod9C;AGndmC;EAAW,iBAAA;CHsd9C;AGrdmC;EAAW,iBAAA;CHwd9C;AGvdmC;EAAW,iBAAA;CH0d9C;AGzdmC;EAAW,iBAAA;CH4d9C;AG3dmC;EAAW,iBAAA;CH8d9C;AG7dmC;EAAW,iBAAA;CHge9C;AG/dmC;EAAW,iBAAA;CHke9C;AGjemC;EAAW,iBAAA;CHoe9C;AGnemC;EAAW,iBAAA;CHse9C;AGremC;EAAW,iBAAA;CHwe9C;AGvemC;EAAW,iBAAA;CH0e9C;AGzemC;EAAW,iBAAA;CH4e9C;AG3emC;EAAW,iBAAA;CH8e9C;AG7emC;EAAW,iBAAA;CHgf9C;AG/emC;EAAW,iBAAA;CHkf9C;AGjfmC;EAAW,iBAAA;CHof9C;AGnfmC;EAAW,iBAAA;CHsf9C;AGrfmC;EAAW,iBAAA;CHwf9C;AGvfmC;EAAW,iBAAA;CH0f9C;AGzfmC;EAAW,iBAAA;CH4f9C;AG3fmC;EAAW,iBAAA;CH8f9C;AG7fmC;EAAW,iBAAA;CHggB9C;AG/fmC;EAAW,iBAAA;CHkgB9C;AGjgBmC;EAAW,iBAAA;CHogB9C;AGngBmC;EAAW,iBAAA;CHsgB9C;AGrgBmC;EAAW,iBAAA;CHwgB9C;AGvgBmC;EAAW,iBAAA;CH0gB9C;AGzgBmC;EAAW,iBAAA;CH4gB9C;AG3gBmC;EAAW,iBAAA;CH8gB9C;AG7gBmC;EAAW,iBAAA;CHghB9C;AG/gBmC;EAAW,iBAAA;CHkhB9C;AGjhBmC;EAAW,iBAAA;CHohB9C;AGnhBmC;EAAW,iBAAA;CHshB9C;AGrhBmC;EAAW,iBAAA;CHwhB9C;AGvhBmC;EAAW,iBAAA;CH0hB9C;AGzhBmC;EAAW,iBAAA;CH4hB9C;AG3hBmC;EAAW,iBAAA;CH8hB9C;AG7hBmC;EAAW,iBAAA;CHgiB9C;AG/hBmC;EAAW,iBAAA;CHkiB9C;AGjiBmC;EAAW,iBAAA;CHoiB9C;AGniBmC;EAAW,iBAAA;CHsiB9C;AGriBmC;EAAW,iBAAA;CHwiB9C;AGviBmC;EAAW,iBAAA;CH0iB9C;AGziBmC;EAAW,iBAAA;CH4iB9C;AG3iBmC;EAAW,iBAAA;CH8iB9C;AG7iBmC;EAAW,iBAAA;CHgjB9C;AG/iBmC;EAAW,iBAAA;CHkjB9C;AGjjBmC;EAAW,iBAAA;CHojB9C;AGnjBmC;EAAW,iBAAA;CHsjB9C;AGrjBmC;EAAW,iBAAA;CHwjB9C;AGvjBmC;EAAW,iBAAA;CH0jB9C;AGzjBmC;EAAW,iBAAA;CH4jB9C;AG3jBmC;EAAW,iBAAA;CH8jB9C;AG7jBmC;EAAW,iBAAA;CHgkB9C;AG/jBmC;EAAW,iBAAA;CHkkB9C;AGjkBmC;EAAW,iBAAA;CHokB9C;AGnkBmC;EAAW,iBAAA;CHskB9C;AGrkBmC;EAAW,iBAAA;CHwkB9C;AGvkBmC;EAAW,iBAAA;CH0kB9C;AGzkBmC;EAAW,iBAAA;CH4kB9C;AG3kBmC;EAAW,iBAAA;CH8kB9C;AG7kBmC;EAAW,iBAAA;CHglB9C;AG/kBmC;EAAW,iBAAA;CHklB9C;AGjlBmC;EAAW,iBAAA;CHolB9C;AGnlBmC;EAAW,iBAAA;CHslB9C;AGrlBmC;EAAW,iBAAA;CHwlB9C;AGvlBmC;EAAW,iBAAA;CH0lB9C;AGzlBmC;EAAW,iBAAA;CH4lB9C;AG3lBmC;EAAW,iBAAA;CH8lB9C;AG7lBmC;EAAW,iBAAA;CHgmB9C;AG/lBmC;EAAW,iBAAA;CHkmB9C;AGjmBmC;EAAW,iBAAA;CHomB9C;AGnmBmC;EAAW,iBAAA;CHsmB9C;AGrmBmC;EAAW,iBAAA;CHwmB9C;AGvmBmC;EAAW,iBAAA;CH0mB9C;AGzmBmC;EAAW,iBAAA;CH4mB9C;AG3mBmC;EAAW,iBAAA;CH8mB9C;AG7mBmC;EAAW,iBAAA;CHgnB9C;AG/mBmC;EAAW,iBAAA;CHknB9C;AGjnBmC;EAAW,iBAAA;CHonB9C;AGnnBmC;EAAW,iBAAA;CHsnB9C;AGrnBmC;EAAW,iBAAA;CHwnB9C;AGvnBmC;EAAW,iBAAA;CH0nB9C;AGznBmC;EAAW,iBAAA;CH4nB9C;AG3nBmC;EAAW,iBAAA;CH8nB9C;AG7nBmC;EAAW,iBAAA;CHgoB9C;AG/nBmC;EAAW,iBAAA;CHkoB9C;AGjoBmC;EAAW,iBAAA;CHooB9C;AGnoBmC;EAAW,iBAAA;CHsoB9C;AGroBmC;EAAW,iBAAA;CHwoB9C;AG/nBmC;EAAW,iBAAA;CHkoB9C;AGjoBmC;EAAW,iBAAA;CHooB9C;AGnoBmC;EAAW,iBAAA;CHsoB9C;AGroBmC;EAAW,iBAAA;CHwoB9C;AGvoBmC;EAAW,iBAAA;CH0oB9C;AGzoBmC;EAAW,iBAAA;CH4oB9C;AG3oBmC;EAAW,iBAAA;CH8oB9C;AG7oBmC;EAAW,iBAAA;CHgpB9C;AG/oBmC;EAAW,iBAAA;CHkpB9C;AGjpBmC;EAAW,iBAAA;CHopB9C;AGnpBmC;EAAW,iBAAA;CHspB9C;AGrpBmC;EAAW,iBAAA;CHwpB9C;AGvpBmC;EAAW,iBAAA;CH0pB9C;AGzpBmC;EAAW,iBAAA;CH4pB9C;AG3pBmC;EAAW,iBAAA;CH8pB9C;AG7pBmC;EAAW,iBAAA;CHgqB9C;AG/pBmC;EAAW,iBAAA;CHkqB9C;AGjqBmC;EAAW,iBAAA;CHoqB9C;AGnqBmC;EAAW,iBAAA;CHsqB9C;AGrqBmC;EAAW,iBAAA;CHwqB9C;AGvqBmC;EAAW,iBAAA;CH0qB9C;AGzqBmC;EAAW,iBAAA;CH4qB9C;AG3qBmC;EAAW,iBAAA;CH8qB9C;AG7qBmC;EAAW,iBAAA;CHgrB9C;AG/qBmC;EAAW,iBAAA;CHkrB9C;AGjrBmC;EAAW,iBAAA;CHorB9C;AGnrBmC;EAAW,iBAAA;CHsrB9C;AGrrBmC;EAAW,iBAAA;CHwrB9C;AGvrBmC;EAAW,iBAAA;CH0rB9C;AGzrBmC;EAAW,iBAAA;CH4rB9C;AG3rBmC;EAAW,iBAAA;CH8rB9C;AG7rBmC;EAAW,iBAAA;CHgsB9C;AG/rBmC;EAAW,iBAAA;CHksB9C;AGjsBmC;EAAW,iBAAA;CHosB9C;AGnsBmC;EAAW,iBAAA;CHssB9C;AGrsBmC;EAAW,iBAAA;CHwsB9C;AGvsBmC;EAAW,iBAAA;CH0sB9C;AGzsBmC;EAAW,iBAAA;CH4sB9C;AG3sBmC;EAAW,iBAAA;CH8sB9C;AG7sBmC;EAAW,iBAAA;CHgtB9C;AG/sBmC;EAAW,iBAAA;CHktB9C;AGjtBmC;EAAW,iBAAA;CHotB9C;AGntBmC;EAAW,iBAAA;CHstB9C;AGrtBmC;EAAW,iBAAA;CHwtB9C;AGvtBmC;EAAW,iBAAA;CH0tB9C;AGztBmC;EA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DH;AezkDC;EACE,oBAAA;Cf2kDH;Ae5kDC;EACE,WAAA;Cf8kDH;Ae/kDC;EACE,oBAAA;CfilDH;AellDC;EACE,mBAAA;CfolDH;AehlDC;EACE,YAAA;CfklDH;AelmDC;EACE,WAAA;CfomDH;AermDC;EACE,mBAAA;CfumDH;AexmDC;EACE,mBAAA;Cf0mDH;Ae3mDC;EACE,UAAA;Cf6mDH;Ae9mDC;EACE,mBAAA;CfgnDH;AejnDC;EACE,mBAAA;CfmnDH;AepnDC;EACE,UAAA;CfsnDH;AevnDC;EACE,mBAAA;CfynDH;Ae1nDC;EACE,mBAAA;Cf4nDH;Ae7nDC;EACE,UAAA;Cf+nDH;AehoDC;EACE,mBAAA;CfkoDH;AenoDC;EACE,kBAAA;CfqoDH;AejoDC;EACE,WAAA;CfmoDH;AernDC;EACE,kBAAA;CfunDH;AexnDC;EACE,0BAAA;Cf0nDH;Ae3nDC;EACE,0BAAA;Cf6nDH;Ae9nDC;EACE,iBAAA;CfgoDH;AejoDC;EACE,0BAAA;CfmoDH;AepoDC;EACE,0BAAA;CfsoDH;AevoDC;EACE,iBAAA;CfyoDH;Ae1oDC;EACE,0BAAA;Cf4oDH;Ae7oDC;EACE,0BAAA;Cf+oDH;AehpDC;EACE,iBAAA;CfkpDH;AenpDC;EACE,0BAAA;CfqpDH;AetpDC;EACE,yBAAA;CfwpDH;AezpDC;EACE,gBAAA;Cf2pDH;Aa3pDD;EElCI;IACE,YAAA;GfgsDH;EezrDD;IACE,YAAA;Gf2rDD;Ee5rDD;IACE,oBAAA;Gf8rDD;Ee/rDD;IACE,oBAAA;GfisDD;EelsDD;IACE,WAAA;GfosDD;EersDD;IACE,oBAAA;GfusDD;EexsDD;IACE,oBAAA;Gf0sDD;Ee3sDD;IACE,WAAA;Gf6sDD;Ee9sDD;IACE,oBAAA;GfgtDD;EejtDD;IACE,oBAAA;GfmtDD;EeptDD;IACE,WAAA;GfstDD;EevtDD;IACE,oBAAA;GfytDD;Ee1tDD;IACE,mBAAA;Gf4tDD;Ee9sDD;IACE,YAAA;GfgtDD;EejtDD;IACE,oBAAA;GfmtDD;EeptDD;IACE,oBAAA;GfstDD;EevtDD;IACE,WAAA;GfytDD;Ee1tDD;IACE,oBAAA;Gf4tDD;Ee7tDD;IACE,oBAAA;Gf+tDD;EehuDD;IACE,WAAA;GfkuDD;EenuDD;IACE,oBAAA;GfquDD;EetuDD;IACE,oBAAA;GfwuDD;EezuDD;IACE,WAAA;Gf2uDD;Ee5uDD;IACE,oBAAA;Gf8uDD;Ee/uDD;IACE,mBAAA;GfivDD;Ee7uDD;IACE,YAAA;Gf+uDD;Ee/vDD;IACE,WAAA;GfiwDD;EelwDD;IACE,mBAAA;GfowDD;EerwDD;IACE,mBAAA;GfuwDD;EexwDD;IACE,UAAA;Gf0wDD;Ee3wDD;IACE,mBAAA;Gf6wDD;Ee9wDD;IACE,mBAAA;GfgxDD;EejxDD;IACE,UAAA;GfmxDD;EepxDD;IACE,mBAAA;GfsxDD;EevxDD;IACE,mBAAA;GfyxDD;Ee1xDD;IACE,UAAA;Gf4xDD;Ee7xDD;IACE,mBAAA;Gf+xDD;EehyDD;IACE,kBAAA;GfkyDD;Ee9xDD;IACE,WAAA;GfgyDD;EelxDD;IACE,kBAAA;GfoxDD;EerxDD;IACE,0BAAA;GfuxDD;EexxDD;IACE,0BAAA;Gf0xDD;Ee3xDD;IACE,iBAAA;Gf6xDD;Ee9xDD;IACE,0BAAA;GfgyDD;EejyDD;IACE,0BAAA;GfmyDD;EepyDD;IACE,iBAAA;GfsyDD;EevyDD;IACE,0BAAA;GfyyDD;Ee1yDD;IACE,0BAAA;Gf4yDD;Ee7yDD;IACE,iBAAA;Gf+yDD;EehzDD;IACE,0BAAA;GfkzDD;EenzDD;IACE,yBAAA;GfqzDD;EetzDD;IACE,gBAAA;GfwzDD;CACF;AahzDD;EE3CI;IACE,YAAA;Gf81DH;Eev1DD;IACE,YAAA;Gfy1DD;Ee11DD;IACE,oBAAA;Gf41DD;Ee71DD;IACE,oBAAA;Gf+1DD;Eeh2DD;IACE,WAAA;Gfk2DD;Een2DD;IACE,oBAAA;Gfq2DD;Eet2DD;IACE,oBAAA;Gfw2DD;Eez2DD;IACE,WAAA;Gf22DD;Ee52DD;IACE,oBAAA;Gf82DD;Ee/2DD;IACE,oBAAA;Gfi3DD;Eel3DD;IACE,WAAA;Gfo3DD;Eer3DD;IACE,oBAAA;Gfu3DD;Eex3DD;IACE,mBAAA;Gf03DD;Ee52DD;IACE,YAAA;Gf82DD;Ee/2DD;IACE,oBAAA;Gfi3DD;Eel3DD;IACE,oBAAA;Gfo3DD;Eer3DD;IACE,WAAA;Gfu3DD;Eex3DD;IACE,oBAAA;Gf03DD;Ee33DD;IACE,oBAAA;Gf63DD;Ee93DD;IACE,WAAA;Gfg4DD;Eej4DD;IACE,oBAAA;Gfm4DD;Eep4DD;IACE,oBAAA;Gfs4DD;Eev4DD;IACE,WAAA;Gfy4DD;Ee14DD;IACE,oBAAA;Gf44DD;Ee74DD;IACE,mBAAA;Gf+4DD;Ee34DD;IACE,YAAA;Gf64DD;Ee75DD;IACE,WAAA;Gf+5DD;Eeh6DD;IACE,mBAAA;Gfk6DD;Een6DD;IACE,mBAAA;Gfq6DD;Eet6DD;IACE,UAAA;Gfw6DD;Eez6DD;IACE,mBAAA;Gf26DD;Ee56DD;IACE,mBAAA;Gf86DD;Ee/6DD;IACE,UAAA;Gfi7DD;Eel7DD;IACE,mBAAA;Gfo7DD;Eer7DD;IACE,mBAAA;Gfu7DD;Eex7DD;IACE,UAAA;Gf07DD;Ee37DD;IACE,mBAAA;Gf67DD;Ee97DD;IACE,kBAAA;Gfg8DD;Ee57DD;IACE,WAAA;Gf87DD;Eeh7DD;IACE,kBAAA;Gfk7DD;Een7DD;IACE,0BAAA;Gfq7DD;Eet7DD;IACE,0BAAA;Gfw7DD;Eez7DD;IACE,iBAAA;Gf27DD;Ee57DD;IACE,0BAAA;Gf87DD;Ee/7DD;IACE,0BAAA;Gfi8DD;Eel8DD;IACE,iBAAA;Gfo8DD;Eer8DD;IACE,0BAAA;Gfu8DD;Eex8DD;IACE,0BAAA;Gf08DD;Ee38DD;IACE,iBAAA;Gf68DD;Ee98DD;IACE,0BAAA;Gfg9DD;Eej9DD;IACE,yBAAA;Gfm9DD;Eep9DD;IACE,gBAAA;Gfs9DD;CACF;Aa38DD;EE9CI;IACE,YAAA;Gf4/DH;Eer/DD;IACE,YAAA;Gfu/DD;Eex/DD;IACE,oBAAA;Gf0/DD;Ee3/DD;IACE,oBAAA;Gf6/DD;Ee9/DD;IACE,WAAA;GfggED;EejgED;IACE,oBAAA;GfmgED;EepgED;IACE,oBAAA;GfsgED;EevgED;IACE,WAAA;GfygED;Ee1gED;IACE,oBAAA;Gf4gED;Ee7gED;IACE,oBAAA;Gf+gED;EehhED;IACE,WAAA;GfkhED;EenhED;IACE,oBAAA;GfqhED;EethED;IACE,mBAAA;GfwhED;Ee1gED;IACE,YAAA;Gf4gED;Ee7gED;IACE,oBAAA;Gf+gED;EehhED;IACE,oBAAA;GfkhED;EenhED;IACE,WAAA;GfqhED;EethED;IACE,oBAAA;GfwhED;EezhED;IACE,oBAAA;Gf2hED;Ee5hED;IACE,WAAA;Gf8hED;Ee/hED;IACE,oBAAA;GfiiED;EeliED;IACE,oBAAA;GfoiED;EeriED;IACE,WAAA;GfuiED;EexiED;IACE,oBAAA;Gf0iED;Ee3iED;IACE,mBAAA;Gf6iED;EeziED;IACE,YAAA;Gf2iED;Ee3jED;IACE,WAAA;Gf6jED;Ee9jED;IACE,mBAAA;GfgkED;EejkED;IACE,mBAAA;GfmkED;EepkED;IACE,UAAA;GfskED;EevkED;IACE,mBAAA;GfykED;Ee1kED;IACE,mBAAA;Gf4kED;Ee7kED;IACE,UAAA;Gf+kED;EehlED;IACE,mBAAA;GfklED;EenlED;IACE,mBAAA;GfqlED;EetlED;IACE,UAAA;GfwlED;EezlED;IACE,mBAAA;Gf2lED;Ee5lED;IACE,kBAAA;Gf8lED;Ee1lED;IACE,WAAA;Gf4lED;Ee9kED;IACE,kBAAA;GfglED;EejlED;IACE,0BAAA;GfmlED;EeplED;IACE,0BAAA;GfslED;EevlED;IACE,iBAAA;GfylED;Ee1lED;IACE,0BAAA;Gf4lED;Ee7lED;IACE,0BAAA;Gf+lED;EehmED;IACE,iBAAA;GfkmED;EenmED;IACE,0BAAA;GfqmED;EetmED;IACE,0BAAA;GfwmED;EezmED;IACE,iBAAA;Gf2mED;Ee5mED;IACE,0BAAA;Gf8mED;Ee/mED;IACE,yBAAA;GfinED;EelnED;IACE,gBAAA;GfonED;CACF;AgBxrED;EACE,8BAAA;ChB0rED;AgBxrED;EACE,iBAAA;EACA,oBAAA;EACA,eAAA;EACA,iBAAA;ChB0rED;AgBxrED;EACE,iBAAA;ChB0rED;AgBprED;EACE,YAAA;EACA,gBAAA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","file":"bootstrap.css","sourcesContent":["/*!\n * Bootstrap v3.3.5 (http://getbootstrap.com)\n * Copyright 2011-2015 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\nhtml {\n font-family: sans-serif;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\nbody {\n margin: 0;\n}\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n vertical-align: baseline;\n}\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n[hidden],\ntemplate {\n display: none;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nabbr[title] {\n border-bottom: 1px dotted;\n}\nb,\nstrong {\n font-weight: bold;\n}\ndfn {\n font-style: italic;\n}\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\nmark {\n background: #ff0;\n color: #000;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nfigure {\n margin: 1em 40px;\n}\nhr {\n box-sizing: content-box;\n height: 0;\n}\npre {\n overflow: auto;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n font: inherit;\n margin: 0;\n}\nbutton {\n overflow: visible;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n cursor: pointer;\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\ninput {\n line-height: normal;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box;\n padding: 0;\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n box-sizing: content-box;\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\nlegend {\n border: 0;\n padding: 0;\n}\ntextarea {\n overflow: auto;\n}\noptgroup {\n font-weight: bold;\n}\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\ntd,\nth {\n padding: 0;\n}\n/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n@media print {\n *,\n *:before,\n *:after {\n background: transparent !important;\n color: #000 !important;\n box-shadow: none !important;\n text-shadow: none !important;\n }\n a,\n a:visited {\n text-decoration: underline;\n }\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n img {\n max-width: 100% !important;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n .navbar {\n display: none;\n }\n .btn > .caret,\n .dropup > .btn > .caret {\n border-top-color: #000 !important;\n }\n .label {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #ddd !important;\n }\n}\n@font-face {\n font-family: 'Glyphicons Halflings';\n src: url('../fonts/glyphicons-halflings-regular.eot');\n src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');\n}\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: 'Glyphicons Halflings';\n font-style: normal;\n font-weight: normal;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.glyphicon-asterisk:before {\n content: \"\\2a\";\n}\n.glyphicon-plus:before {\n content: \"\\2b\";\n}\n.glyphicon-euro:before,\n.glyphicon-eur:before {\n content: \"\\20ac\";\n}\n.glyphicon-minus:before {\n content: \"\\2212\";\n}\n.glyphicon-cloud:before {\n content: \"\\2601\";\n}\n.glyphicon-envelope:before {\n content: \"\\2709\";\n}\n.glyphicon-pencil:before {\n content: \"\\270f\";\n}\n.glyphicon-glass:before {\n content: \"\\e001\";\n}\n.glyphicon-music:before {\n content: \"\\e002\";\n}\n.glyphicon-search:before {\n content: \"\\e003\";\n}\n.glyphicon-heart:before {\n content: \"\\e005\";\n}\n.glyphicon-star:before {\n content: \"\\e006\";\n}\n.glyphicon-star-empty:before {\n content: \"\\e007\";\n}\n.glyphicon-user:before {\n content: \"\\e008\";\n}\n.glyphicon-film:before {\n content: \"\\e009\";\n}\n.glyphicon-th-large:before {\n content: \"\\e010\";\n}\n.glyphicon-th:before {\n content: \"\\e011\";\n}\n.glyphicon-th-list:before {\n content: \"\\e012\";\n}\n.glyphicon-ok:before {\n content: \"\\e013\";\n}\n.glyphicon-remove:before {\n content: \"\\e014\";\n}\n.glyphicon-zoom-in:before {\n content: \"\\e015\";\n}\n.glyphicon-zoom-out:before {\n content: \"\\e016\";\n}\n.glyphicon-off:before {\n content: \"\\e017\";\n}\n.glyphicon-signal:before {\n content: \"\\e018\";\n}\n.glyphicon-cog:before {\n content: \"\\e019\";\n}\n.glyphicon-trash:before {\n content: \"\\e020\";\n}\n.glyphicon-home:before {\n content: \"\\e021\";\n}\n.glyphicon-file:before {\n content: \"\\e022\";\n}\n.glyphicon-time:before {\n content: \"\\e023\";\n}\n.glyphicon-road:before {\n content: \"\\e024\";\n}\n.glyphicon-download-alt:before {\n content: \"\\e025\";\n}\n.glyphicon-download:before {\n content: \"\\e026\";\n}\n.glyphicon-upload:before {\n content: \"\\e027\";\n}\n.glyphicon-inbox:before {\n content: \"\\e028\";\n}\n.glyphicon-play-circle:before {\n content: \"\\e029\";\n}\n.glyphicon-repeat:before {\n content: \"\\e030\";\n}\n.glyphicon-refresh:before {\n content: \"\\e031\";\n}\n.glyphicon-list-alt:before {\n content: \"\\e032\";\n}\n.glyphicon-lock:before {\n content: \"\\e033\";\n}\n.glyphicon-flag:before {\n content: \"\\e034\";\n}\n.glyphicon-headphones:before {\n content: \"\\e035\";\n}\n.glyphicon-volume-off:before {\n content: \"\\e036\";\n}\n.glyphicon-volume-down:before {\n content: \"\\e037\";\n}\n.glyphicon-volume-up:before {\n content: \"\\e038\";\n}\n.glyphicon-qrcode:before {\n content: \"\\e039\";\n}\n.glyphicon-barcode:before {\n content: \"\\e040\";\n}\n.glyphicon-tag:before {\n content: \"\\e041\";\n}\n.glyphicon-tags:before {\n content: \"\\e042\";\n}\n.glyphicon-book:before {\n content: \"\\e043\";\n}\n.glyphicon-bookmark:before {\n content: \"\\e044\";\n}\n.glyphicon-print:before {\n content: \"\\e045\";\n}\n.glyphicon-camera:before {\n content: \"\\e046\";\n}\n.glyphicon-font:before {\n content: \"\\e047\";\n}\n.glyphicon-bold:before {\n content: \"\\e048\";\n}\n.glyphicon-italic:before {\n content: \"\\e049\";\n}\n.glyphicon-text-height:before {\n content: \"\\e050\";\n}\n.glyphicon-text-width:before {\n content: \"\\e051\";\n}\n.glyphicon-align-left:before {\n content: \"\\e052\";\n}\n.glyphicon-align-center:before {\n content: \"\\e053\";\n}\n.glyphicon-align-right:before {\n content: \"\\e054\";\n}\n.glyphicon-align-justify:before {\n content: \"\\e055\";\n}\n.glyphicon-list:before {\n content: \"\\e056\";\n}\n.glyphicon-indent-left:before {\n content: \"\\e057\";\n}\n.glyphicon-indent-right:before {\n content: \"\\e058\";\n}\n.glyphicon-facetime-video:before {\n content: \"\\e059\";\n}\n.glyphicon-picture:before {\n content: \"\\e060\";\n}\n.glyphicon-map-marker:before {\n content: \"\\e062\";\n}\n.glyphicon-adjust:before {\n content: \"\\e063\";\n}\n.glyphicon-tint:before {\n content: \"\\e064\";\n}\n.glyphicon-edit:before {\n content: \"\\e065\";\n}\n.glyphicon-share:before {\n content: \"\\e066\";\n}\n.glyphicon-check:before {\n content: \"\\e067\";\n}\n.glyphicon-move:before {\n content: \"\\e068\";\n}\n.glyphicon-step-backward:before {\n content: \"\\e069\";\n}\n.glyphicon-fast-backward:before {\n content: \"\\e070\";\n}\n.glyphicon-backward:before {\n content: \"\\e071\";\n}\n.glyphicon-play:before {\n content: \"\\e072\";\n}\n.glyphicon-pause:before {\n content: \"\\e073\";\n}\n.glyphicon-stop:before {\n content: \"\\e074\";\n}\n.glyphicon-forward:before {\n content: \"\\e075\";\n}\n.glyphicon-fast-forward:before {\n content: \"\\e076\";\n}\n.glyphicon-step-forward:before {\n content: \"\\e077\";\n}\n.glyphicon-eject:before {\n content: \"\\e078\";\n}\n.glyphicon-chevron-left:before {\n content: \"\\e079\";\n}\n.glyphicon-chevron-right:before {\n content: \"\\e080\";\n}\n.glyphicon-plus-sign:before {\n content: \"\\e081\";\n}\n.glyphicon-minus-sign:before {\n content: \"\\e082\";\n}\n.glyphicon-remove-sign:before {\n content: \"\\e083\";\n}\n.glyphicon-ok-sign:before {\n content: \"\\e084\";\n}\n.glyphicon-question-sign:before {\n content: \"\\e085\";\n}\n.glyphicon-info-sign:before {\n content: \"\\e086\";\n}\n.glyphicon-screenshot:before {\n content: \"\\e087\";\n}\n.glyphicon-remove-circle:before {\n content: \"\\e088\";\n}\n.glyphicon-ok-circle:before {\n content: \"\\e089\";\n}\n.glyphicon-ban-circle:before {\n content: \"\\e090\";\n}\n.glyphicon-arrow-left:before {\n content: \"\\e091\";\n}\n.glyphicon-arrow-right:before {\n content: \"\\e092\";\n}\n.glyphicon-arrow-up:before {\n content: \"\\e093\";\n}\n.glyphicon-arrow-down:before {\n content: \"\\e094\";\n}\n.glyphicon-share-alt:before {\n content: \"\\e095\";\n}\n.glyphicon-resize-full:before {\n content: \"\\e096\";\n}\n.glyphicon-resize-small:before {\n content: \"\\e097\";\n}\n.glyphicon-exclamation-sign:before {\n content: \"\\e101\";\n}\n.glyphicon-gift:before {\n content: \"\\e102\";\n}\n.glyphicon-leaf:before {\n content: \"\\e103\";\n}\n.glyphicon-fire:before {\n content: \"\\e104\";\n}\n.glyphicon-eye-open:before {\n content: \"\\e105\";\n}\n.glyphicon-eye-close:before {\n content: \"\\e106\";\n}\n.glyphicon-warning-sign:before {\n content: \"\\e107\";\n}\n.glyphicon-plane:before {\n content: \"\\e108\";\n}\n.glyphicon-calendar:before {\n content: \"\\e109\";\n}\n.glyphicon-random:before {\n content: \"\\e110\";\n}\n.glyphicon-comment:before {\n content: \"\\e111\";\n}\n.glyphicon-magnet:before {\n content: \"\\e112\";\n}\n.glyphicon-chevron-up:before {\n content: \"\\e113\";\n}\n.glyphicon-chevron-down:before {\n content: \"\\e114\";\n}\n.glyphicon-retweet:before {\n content: \"\\e115\";\n}\n.glyphicon-shopping-cart:before {\n content: \"\\e116\";\n}\n.glyphicon-folder-close:before {\n content: \"\\e117\";\n}\n.glyphicon-folder-open:before {\n content: \"\\e118\";\n}\n.glyphicon-resize-vertical:before {\n content: \"\\e119\";\n}\n.glyphicon-resize-horizontal:before {\n content: \"\\e120\";\n}\n.glyphicon-hdd:before {\n content: \"\\e121\";\n}\n.glyphicon-bullhorn:before {\n content: \"\\e122\";\n}\n.glyphicon-bell:before {\n content: \"\\e123\";\n}\n.glyphicon-certificate:before {\n content: \"\\e124\";\n}\n.glyphicon-thumbs-up:before {\n content: \"\\e125\";\n}\n.glyphicon-thumbs-down:before {\n content: \"\\e126\";\n}\n.glyphicon-hand-right:before {\n content: \"\\e127\";\n}\n.glyphicon-hand-left:before {\n content: \"\\e128\";\n}\n.glyphicon-hand-up:before {\n content: \"\\e129\";\n}\n.glyphicon-hand-down:before {\n content: \"\\e130\";\n}\n.glyphicon-circle-arrow-right:before {\n content: \"\\e131\";\n}\n.glyphicon-circle-arrow-left:before {\n content: \"\\e132\";\n}\n.glyphicon-circle-arrow-up:before {\n content: \"\\e133\";\n}\n.glyphicon-circle-arrow-down:before {\n content: \"\\e134\";\n}\n.glyphicon-globe:before {\n content: \"\\e135\";\n}\n.glyphicon-wrench:before {\n content: \"\\e136\";\n}\n.glyphicon-tasks:before {\n content: \"\\e137\";\n}\n.glyphicon-filter:before {\n content: \"\\e138\";\n}\n.glyphicon-briefcase:before {\n content: \"\\e139\";\n}\n.glyphicon-fullscreen:before {\n content: \"\\e140\";\n}\n.glyphicon-dashboard:before {\n content: \"\\e141\";\n}\n.glyphicon-paperclip:before {\n content: \"\\e142\";\n}\n.glyphicon-heart-empty:before {\n content: \"\\e143\";\n}\n.glyphicon-link:before {\n content: \"\\e144\";\n}\n.glyphicon-phone:before {\n content: \"\\e145\";\n}\n.glyphicon-pushpin:before {\n content: \"\\e146\";\n}\n.glyphicon-usd:before {\n content: \"\\e148\";\n}\n.glyphicon-gbp:before {\n content: \"\\e149\";\n}\n.glyphicon-sort:before {\n content: \"\\e150\";\n}\n.glyphicon-sort-by-alphabet:before {\n content: \"\\e151\";\n}\n.glyphicon-sort-by-alphabet-alt:before {\n content: \"\\e152\";\n}\n.glyphicon-sort-by-order:before {\n content: \"\\e153\";\n}\n.glyphicon-sort-by-order-alt:before {\n content: \"\\e154\";\n}\n.glyphicon-sort-by-attributes:before {\n content: \"\\e155\";\n}\n.glyphicon-sort-by-attributes-alt:before {\n content: \"\\e156\";\n}\n.glyphicon-unchecked:before {\n content: \"\\e157\";\n}\n.glyphicon-expand:before {\n content: \"\\e158\";\n}\n.glyphicon-collapse-down:before {\n content: \"\\e159\";\n}\n.glyphicon-collapse-up:before {\n content: \"\\e160\";\n}\n.glyphicon-log-in:before {\n content: \"\\e161\";\n}\n.glyphicon-flash:before {\n content: \"\\e162\";\n}\n.glyphicon-log-out:before {\n content: \"\\e163\";\n}\n.glyphicon-new-window:before {\n content: \"\\e164\";\n}\n.glyphicon-record:before {\n content: \"\\e165\";\n}\n.glyphicon-save:before {\n content: \"\\e166\";\n}\n.glyphicon-open:before {\n content: \"\\e167\";\n}\n.glyphicon-saved:before {\n content: \"\\e168\";\n}\n.glyphicon-import:before {\n content: \"\\e169\";\n}\n.glyphicon-export:before {\n content: \"\\e170\";\n}\n.glyphicon-send:before {\n content: \"\\e171\";\n}\n.glyphicon-floppy-disk:before {\n content: \"\\e172\";\n}\n.glyphicon-floppy-saved:before {\n content: \"\\e173\";\n}\n.glyphicon-floppy-remove:before {\n content: \"\\e174\";\n}\n.glyphicon-floppy-save:before {\n content: \"\\e175\";\n}\n.glyphicon-floppy-open:before {\n content: \"\\e176\";\n}\n.glyphicon-credit-card:before {\n content: \"\\e177\";\n}\n.glyphicon-transfer:before {\n content: \"\\e178\";\n}\n.glyphicon-cutlery:before {\n content: \"\\e179\";\n}\n.glyphicon-header:before {\n content: \"\\e180\";\n}\n.glyphicon-compressed:before {\n content: \"\\e181\";\n}\n.glyphicon-earphone:before {\n content: \"\\e182\";\n}\n.glyphicon-phone-alt:before {\n content: \"\\e183\";\n}\n.glyphicon-tower:before {\n content: \"\\e184\";\n}\n.glyphicon-stats:before {\n content: \"\\e185\";\n}\n.glyphicon-sd-video:before {\n content: \"\\e186\";\n}\n.glyphicon-hd-video:before {\n content: \"\\e187\";\n}\n.glyphicon-subtitles:before {\n content: \"\\e188\";\n}\n.glyphicon-sound-stereo:before {\n content: \"\\e189\";\n}\n.glyphicon-sound-dolby:before {\n content: \"\\e190\";\n}\n.glyphicon-sound-5-1:before {\n content: \"\\e191\";\n}\n.glyphicon-sound-6-1:before {\n content: \"\\e192\";\n}\n.glyphicon-sound-7-1:before {\n content: \"\\e193\";\n}\n.glyphicon-copyright-mark:before {\n content: \"\\e194\";\n}\n.glyphicon-registration-mark:before {\n content: \"\\e195\";\n}\n.glyphicon-cloud-download:before {\n content: \"\\e197\";\n}\n.glyphicon-cloud-upload:before {\n content: \"\\e198\";\n}\n.glyphicon-tree-conifer:before {\n content: \"\\e199\";\n}\n.glyphicon-tree-deciduous:before {\n content: \"\\e200\";\n}\n.glyphicon-cd:before {\n content: \"\\e201\";\n}\n.glyphicon-save-file:before {\n content: \"\\e202\";\n}\n.glyphicon-open-file:before {\n content: \"\\e203\";\n}\n.glyphicon-level-up:before {\n content: \"\\e204\";\n}\n.glyphicon-copy:before {\n content: \"\\e205\";\n}\n.glyphicon-paste:before {\n content: \"\\e206\";\n}\n.glyphicon-alert:before {\n content: \"\\e209\";\n}\n.glyphicon-equalizer:before {\n content: \"\\e210\";\n}\n.glyphicon-king:before {\n content: \"\\e211\";\n}\n.glyphicon-queen:before {\n content: \"\\e212\";\n}\n.glyphicon-pawn:before {\n content: \"\\e213\";\n}\n.glyphicon-bishop:before {\n content: \"\\e214\";\n}\n.glyphicon-knight:before {\n content: \"\\e215\";\n}\n.glyphicon-baby-formula:before {\n content: \"\\e216\";\n}\n.glyphicon-tent:before {\n content: \"\\26fa\";\n}\n.glyphicon-blackboard:before {\n content: \"\\e218\";\n}\n.glyphicon-bed:before {\n content: \"\\e219\";\n}\n.glyphicon-apple:before {\n content: \"\\f8ff\";\n}\n.glyphicon-erase:before {\n content: \"\\e221\";\n}\n.glyphicon-hourglass:before {\n content: \"\\231b\";\n}\n.glyphicon-lamp:before {\n content: \"\\e223\";\n}\n.glyphicon-duplicate:before {\n content: \"\\e224\";\n}\n.glyphicon-piggy-bank:before {\n content: \"\\e225\";\n}\n.glyphicon-scissors:before {\n content: \"\\e226\";\n}\n.glyphicon-bitcoin:before {\n content: \"\\e227\";\n}\n.glyphicon-btc:before {\n content: \"\\e227\";\n}\n.glyphicon-xbt:before {\n content: \"\\e227\";\n}\n.glyphicon-yen:before {\n content: \"\\00a5\";\n}\n.glyphicon-jpy:before {\n content: \"\\00a5\";\n}\n.glyphicon-ruble:before {\n content: \"\\20bd\";\n}\n.glyphicon-rub:before {\n content: \"\\20bd\";\n}\n.glyphicon-scale:before {\n content: \"\\e230\";\n}\n.glyphicon-ice-lolly:before {\n content: \"\\e231\";\n}\n.glyphicon-ice-lolly-tasted:before {\n content: \"\\e232\";\n}\n.glyphicon-education:before {\n content: \"\\e233\";\n}\n.glyphicon-option-horizontal:before {\n content: \"\\e234\";\n}\n.glyphicon-option-vertical:before {\n content: \"\\e235\";\n}\n.glyphicon-menu-hamburger:before {\n content: \"\\e236\";\n}\n.glyphicon-modal-window:before {\n content: \"\\e237\";\n}\n.glyphicon-oil:before {\n content: \"\\e238\";\n}\n.glyphicon-grain:before {\n content: \"\\e239\";\n}\n.glyphicon-sunglasses:before {\n content: \"\\e240\";\n}\n.glyphicon-text-size:before {\n content: \"\\e241\";\n}\n.glyphicon-text-color:before {\n content: \"\\e242\";\n}\n.glyphicon-text-background:before {\n content: \"\\e243\";\n}\n.glyphicon-object-align-top:before {\n content: \"\\e244\";\n}\n.glyphicon-object-align-bottom:before {\n content: \"\\e245\";\n}\n.glyphicon-object-align-horizontal:before {\n content: \"\\e246\";\n}\n.glyphicon-object-align-left:before {\n content: \"\\e247\";\n}\n.glyphicon-object-align-vertical:before {\n content: \"\\e248\";\n}\n.glyphicon-object-align-right:before {\n content: \"\\e249\";\n}\n.glyphicon-triangle-right:before {\n content: \"\\e250\";\n}\n.glyphicon-triangle-left:before {\n content: \"\\e251\";\n}\n.glyphicon-triangle-bottom:before {\n content: \"\\e252\";\n}\n.glyphicon-triangle-top:before {\n content: \"\\e253\";\n}\n.glyphicon-console:before {\n content: \"\\e254\";\n}\n.glyphicon-superscript:before {\n content: \"\\e255\";\n}\n.glyphicon-subscript:before {\n content: \"\\e256\";\n}\n.glyphicon-menu-left:before {\n content: \"\\e257\";\n}\n.glyphicon-menu-right:before {\n content: \"\\e258\";\n}\n.glyphicon-menu-down:before {\n content: \"\\e259\";\n}\n.glyphicon-menu-up:before {\n content: \"\\e260\";\n}\n* {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n*:before,\n*:after {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-size: 14px;\n line-height: 1.42857143;\n color: #333333;\n background-color: #ffffff;\n}\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\na {\n color: #337ab7;\n text-decoration: none;\n}\na:hover,\na:focus {\n color: #23527c;\n text-decoration: underline;\n}\na:focus {\n outline: thin dotted;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\nfigure {\n margin: 0;\n}\nimg {\n vertical-align: middle;\n}\n.img-responsive,\n.thumbnail > img,\n.thumbnail a > img,\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n display: block;\n max-width: 100%;\n height: auto;\n}\n.img-rounded {\n border-radius: 6px;\n}\n.img-thumbnail {\n padding: 4px;\n line-height: 1.42857143;\n background-color: #ffffff;\n border: 1px solid #dddddd;\n border-radius: 4px;\n -webkit-transition: all 0.2s ease-in-out;\n -o-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n display: inline-block;\n max-width: 100%;\n height: auto;\n}\n.img-circle {\n border-radius: 50%;\n}\nhr {\n margin-top: 20px;\n margin-bottom: 20px;\n border: 0;\n border-top: 1px solid #eeeeee;\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.sr-only-focusable:active,\n.sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n}\n[role=\"button\"] {\n cursor: pointer;\n}\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\n.h1,\n.h2,\n.h3,\n.h4,\n.h5,\n.h6 {\n font-family: inherit;\n font-weight: 500;\n line-height: 1.1;\n color: inherit;\n}\nh1 small,\nh2 small,\nh3 small,\nh4 small,\nh5 small,\nh6 small,\n.h1 small,\n.h2 small,\n.h3 small,\n.h4 small,\n.h5 small,\n.h6 small,\nh1 .small,\nh2 .small,\nh3 .small,\nh4 .small,\nh5 .small,\nh6 .small,\n.h1 .small,\n.h2 .small,\n.h3 .small,\n.h4 .small,\n.h5 .small,\n.h6 .small {\n font-weight: normal;\n line-height: 1;\n color: #777777;\n}\nh1,\n.h1,\nh2,\n.h2,\nh3,\n.h3 {\n margin-top: 20px;\n margin-bottom: 10px;\n}\nh1 small,\n.h1 small,\nh2 small,\n.h2 small,\nh3 small,\n.h3 small,\nh1 .small,\n.h1 .small,\nh2 .small,\n.h2 .small,\nh3 .small,\n.h3 .small {\n font-size: 65%;\n}\nh4,\n.h4,\nh5,\n.h5,\nh6,\n.h6 {\n margin-top: 10px;\n margin-bottom: 10px;\n}\nh4 small,\n.h4 small,\nh5 small,\n.h5 small,\nh6 small,\n.h6 small,\nh4 .small,\n.h4 .small,\nh5 .small,\n.h5 .small,\nh6 .small,\n.h6 .small {\n font-size: 75%;\n}\nh1,\n.h1 {\n font-size: 36px;\n}\nh2,\n.h2 {\n font-size: 30px;\n}\nh3,\n.h3 {\n font-size: 24px;\n}\nh4,\n.h4 {\n font-size: 18px;\n}\nh5,\n.h5 {\n font-size: 14px;\n}\nh6,\n.h6 {\n font-size: 12px;\n}\np {\n margin: 0 0 10px;\n}\n.lead {\n margin-bottom: 20px;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n}\n@media (min-width: 768px) {\n .lead {\n font-size: 21px;\n }\n}\nsmall,\n.small {\n font-size: 85%;\n}\nmark,\n.mark {\n background-color: #fcf8e3;\n padding: .2em;\n}\n.text-left {\n text-align: left;\n}\n.text-right {\n text-align: right;\n}\n.text-center {\n text-align: center;\n}\n.text-justify {\n text-align: justify;\n}\n.text-nowrap {\n white-space: nowrap;\n}\n.text-lowercase {\n text-transform: lowercase;\n}\n.text-uppercase {\n text-transform: uppercase;\n}\n.text-capitalize {\n text-transform: capitalize;\n}\n.text-muted {\n color: #777777;\n}\n.text-primary {\n color: #337ab7;\n}\na.text-primary:hover,\na.text-primary:focus {\n color: #286090;\n}\n.text-success {\n color: #3c763d;\n}\na.text-success:hover,\na.text-success:focus {\n color: #2b542c;\n}\n.text-info {\n color: #31708f;\n}\na.text-info:hover,\na.text-info:focus {\n color: #245269;\n}\n.text-warning {\n color: #8a6d3b;\n}\na.text-warning:hover,\na.text-warning:focus {\n color: #66512c;\n}\n.text-danger {\n color: #a94442;\n}\na.text-danger:hover,\na.text-danger:focus {\n color: #843534;\n}\n.bg-primary {\n color: #fff;\n background-color: #337ab7;\n}\na.bg-primary:hover,\na.bg-primary:focus {\n background-color: #286090;\n}\n.bg-success {\n background-color: #dff0d8;\n}\na.bg-success:hover,\na.bg-success:focus {\n background-color: #c1e2b3;\n}\n.bg-info {\n background-color: #d9edf7;\n}\na.bg-info:hover,\na.bg-info:focus {\n background-color: #afd9ee;\n}\n.bg-warning {\n background-color: #fcf8e3;\n}\na.bg-warning:hover,\na.bg-warning:focus {\n background-color: #f7ecb5;\n}\n.bg-danger {\n background-color: #f2dede;\n}\na.bg-danger:hover,\na.bg-danger:focus {\n background-color: #e4b9b9;\n}\n.page-header {\n padding-bottom: 9px;\n margin: 40px 0 20px;\n border-bottom: 1px solid #eeeeee;\n}\nul,\nol {\n margin-top: 0;\n margin-bottom: 10px;\n}\nul ul,\nol ul,\nul ol,\nol ol {\n margin-bottom: 0;\n}\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n.list-inline {\n padding-left: 0;\n list-style: none;\n margin-left: -5px;\n}\n.list-inline > li {\n display: inline-block;\n padding-left: 5px;\n padding-right: 5px;\n}\ndl {\n margin-top: 0;\n margin-bottom: 20px;\n}\ndt,\ndd {\n line-height: 1.42857143;\n}\ndt {\n font-weight: bold;\n}\ndd {\n margin-left: 0;\n}\n@media (min-width: 768px) {\n .dl-horizontal dt {\n float: left;\n width: 160px;\n clear: left;\n text-align: right;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .dl-horizontal dd {\n margin-left: 180px;\n }\n}\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n border-bottom: 1px dotted #777777;\n}\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\nblockquote {\n padding: 10px 20px;\n margin: 0 0 20px;\n font-size: 17.5px;\n border-left: 5px solid #eeeeee;\n}\nblockquote p:last-child,\nblockquote ul:last-child,\nblockquote ol:last-child {\n margin-bottom: 0;\n}\nblockquote footer,\nblockquote small,\nblockquote .small {\n display: block;\n font-size: 80%;\n line-height: 1.42857143;\n color: #777777;\n}\nblockquote footer:before,\nblockquote small:before,\nblockquote .small:before {\n content: '\\2014 \\00A0';\n}\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n border-right: 5px solid #eeeeee;\n border-left: 0;\n text-align: right;\n}\n.blockquote-reverse footer:before,\nblockquote.pull-right footer:before,\n.blockquote-reverse small:before,\nblockquote.pull-right small:before,\n.blockquote-reverse .small:before,\nblockquote.pull-right .small:before {\n content: '';\n}\n.blockquote-reverse footer:after,\nblockquote.pull-right footer:after,\n.blockquote-reverse small:after,\nblockquote.pull-right small:after,\n.blockquote-reverse .small:after,\nblockquote.pull-right .small:after {\n content: '\\00A0 \\2014';\n}\naddress {\n margin-bottom: 20px;\n font-style: normal;\n line-height: 1.42857143;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: Menlo, Monaco, Consolas, \"Courier New\", monospace;\n}\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: #c7254e;\n background-color: #f9f2f4;\n border-radius: 4px;\n}\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: #ffffff;\n background-color: #333333;\n border-radius: 3px;\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: bold;\n box-shadow: none;\n}\npre {\n display: block;\n padding: 9.5px;\n margin: 0 0 10px;\n font-size: 13px;\n line-height: 1.42857143;\n word-break: break-all;\n word-wrap: break-word;\n color: #333333;\n background-color: #f5f5f5;\n border: 1px solid #cccccc;\n border-radius: 4px;\n}\npre code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n}\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n.container {\n margin-right: auto;\n margin-left: auto;\n padding-left: 15px;\n padding-right: 15px;\n}\n@media (min-width: 768px) {\n .container {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .container {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .container {\n width: 1170px;\n }\n}\n.container-fluid {\n margin-right: auto;\n margin-left: auto;\n padding-left: 15px;\n padding-right: 15px;\n}\n.row {\n margin-left: -15px;\n margin-right: -15px;\n}\n.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {\n position: relative;\n min-height: 1px;\n padding-left: 15px;\n padding-right: 15px;\n}\n.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {\n float: left;\n}\n.col-xs-12 {\n width: 100%;\n}\n.col-xs-11 {\n width: 91.66666667%;\n}\n.col-xs-10 {\n width: 83.33333333%;\n}\n.col-xs-9 {\n width: 75%;\n}\n.col-xs-8 {\n width: 66.66666667%;\n}\n.col-xs-7 {\n width: 58.33333333%;\n}\n.col-xs-6 {\n width: 50%;\n}\n.col-xs-5 {\n width: 41.66666667%;\n}\n.col-xs-4 {\n width: 33.33333333%;\n}\n.col-xs-3 {\n width: 25%;\n}\n.col-xs-2 {\n width: 16.66666667%;\n}\n.col-xs-1 {\n width: 8.33333333%;\n}\n.col-xs-pull-12 {\n right: 100%;\n}\n.col-xs-pull-11 {\n right: 91.66666667%;\n}\n.col-xs-pull-10 {\n right: 83.33333333%;\n}\n.col-xs-pull-9 {\n right: 75%;\n}\n.col-xs-pull-8 {\n right: 66.66666667%;\n}\n.col-xs-pull-7 {\n right: 58.33333333%;\n}\n.col-xs-pull-6 {\n right: 50%;\n}\n.col-xs-pull-5 {\n right: 41.66666667%;\n}\n.col-xs-pull-4 {\n right: 33.33333333%;\n}\n.col-xs-pull-3 {\n right: 25%;\n}\n.col-xs-pull-2 {\n right: 16.66666667%;\n}\n.col-xs-pull-1 {\n right: 8.33333333%;\n}\n.col-xs-pull-0 {\n right: auto;\n}\n.col-xs-push-12 {\n left: 100%;\n}\n.col-xs-push-11 {\n left: 91.66666667%;\n}\n.col-xs-push-10 {\n left: 83.33333333%;\n}\n.col-xs-push-9 {\n left: 75%;\n}\n.col-xs-push-8 {\n left: 66.66666667%;\n}\n.col-xs-push-7 {\n left: 58.33333333%;\n}\n.col-xs-push-6 {\n left: 50%;\n}\n.col-xs-push-5 {\n left: 41.66666667%;\n}\n.col-xs-push-4 {\n left: 33.33333333%;\n}\n.col-xs-push-3 {\n left: 25%;\n}\n.col-xs-push-2 {\n left: 16.66666667%;\n}\n.col-xs-push-1 {\n left: 8.33333333%;\n}\n.col-xs-push-0 {\n left: auto;\n}\n.col-xs-offset-12 {\n margin-left: 100%;\n}\n.col-xs-offset-11 {\n margin-left: 91.66666667%;\n}\n.col-xs-offset-10 {\n margin-left: 83.33333333%;\n}\n.col-xs-offset-9 {\n margin-left: 75%;\n}\n.col-xs-offset-8 {\n margin-left: 66.66666667%;\n}\n.col-xs-offset-7 {\n margin-left: 58.33333333%;\n}\n.col-xs-offset-6 {\n margin-left: 50%;\n}\n.col-xs-offset-5 {\n margin-left: 41.66666667%;\n}\n.col-xs-offset-4 {\n margin-left: 33.33333333%;\n}\n.col-xs-offset-3 {\n margin-left: 25%;\n}\n.col-xs-offset-2 {\n margin-left: 16.66666667%;\n}\n.col-xs-offset-1 {\n margin-left: 8.33333333%;\n}\n.col-xs-offset-0 {\n margin-left: 0%;\n}\n@media (min-width: 768px) {\n .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {\n float: left;\n }\n .col-sm-12 {\n width: 100%;\n }\n .col-sm-11 {\n width: 91.66666667%;\n }\n .col-sm-10 {\n width: 83.33333333%;\n }\n .col-sm-9 {\n width: 75%;\n }\n .col-sm-8 {\n width: 66.66666667%;\n }\n .col-sm-7 {\n width: 58.33333333%;\n }\n .col-sm-6 {\n width: 50%;\n }\n .col-sm-5 {\n width: 41.66666667%;\n }\n .col-sm-4 {\n width: 33.33333333%;\n }\n .col-sm-3 {\n width: 25%;\n }\n .col-sm-2 {\n width: 16.66666667%;\n }\n .col-sm-1 {\n width: 8.33333333%;\n }\n .col-sm-pull-12 {\n right: 100%;\n }\n .col-sm-pull-11 {\n right: 91.66666667%;\n }\n .col-sm-pull-10 {\n right: 83.33333333%;\n }\n .col-sm-pull-9 {\n right: 75%;\n }\n .col-sm-pull-8 {\n right: 66.66666667%;\n }\n .col-sm-pull-7 {\n right: 58.33333333%;\n }\n .col-sm-pull-6 {\n right: 50%;\n }\n .col-sm-pull-5 {\n right: 41.66666667%;\n }\n .col-sm-pull-4 {\n right: 33.33333333%;\n }\n .col-sm-pull-3 {\n right: 25%;\n }\n .col-sm-pull-2 {\n right: 16.66666667%;\n }\n .col-sm-pull-1 {\n right: 8.33333333%;\n }\n .col-sm-pull-0 {\n right: auto;\n }\n .col-sm-push-12 {\n left: 100%;\n }\n .col-sm-push-11 {\n left: 91.66666667%;\n }\n .col-sm-push-10 {\n left: 83.33333333%;\n }\n .col-sm-push-9 {\n left: 75%;\n }\n .col-sm-push-8 {\n left: 66.66666667%;\n }\n .col-sm-push-7 {\n left: 58.33333333%;\n }\n .col-sm-push-6 {\n left: 50%;\n }\n .col-sm-push-5 {\n left: 41.66666667%;\n }\n .col-sm-push-4 {\n left: 33.33333333%;\n }\n .col-sm-push-3 {\n left: 25%;\n }\n .col-sm-push-2 {\n left: 16.66666667%;\n }\n .col-sm-push-1 {\n left: 8.33333333%;\n }\n .col-sm-push-0 {\n left: auto;\n }\n .col-sm-offset-12 {\n margin-left: 100%;\n }\n .col-sm-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-sm-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-sm-offset-9 {\n margin-left: 75%;\n }\n .col-sm-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-sm-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-sm-offset-6 {\n margin-left: 50%;\n }\n .col-sm-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-sm-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-sm-offset-3 {\n margin-left: 25%;\n }\n .col-sm-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-sm-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-sm-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 992px) {\n .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {\n float: left;\n }\n .col-md-12 {\n width: 100%;\n }\n .col-md-11 {\n width: 91.66666667%;\n }\n .col-md-10 {\n width: 83.33333333%;\n }\n .col-md-9 {\n width: 75%;\n }\n .col-md-8 {\n width: 66.66666667%;\n }\n .col-md-7 {\n width: 58.33333333%;\n }\n .col-md-6 {\n width: 50%;\n }\n .col-md-5 {\n width: 41.66666667%;\n }\n .col-md-4 {\n width: 33.33333333%;\n }\n .col-md-3 {\n width: 25%;\n }\n .col-md-2 {\n width: 16.66666667%;\n }\n .col-md-1 {\n width: 8.33333333%;\n }\n .col-md-pull-12 {\n right: 100%;\n }\n .col-md-pull-11 {\n right: 91.66666667%;\n }\n .col-md-pull-10 {\n right: 83.33333333%;\n }\n .col-md-pull-9 {\n right: 75%;\n }\n .col-md-pull-8 {\n right: 66.66666667%;\n }\n .col-md-pull-7 {\n right: 58.33333333%;\n }\n .col-md-pull-6 {\n right: 50%;\n }\n .col-md-pull-5 {\n right: 41.66666667%;\n }\n .col-md-pull-4 {\n right: 33.33333333%;\n }\n .col-md-pull-3 {\n right: 25%;\n }\n .col-md-pull-2 {\n right: 16.66666667%;\n }\n .col-md-pull-1 {\n right: 8.33333333%;\n }\n .col-md-pull-0 {\n right: auto;\n }\n .col-md-push-12 {\n left: 100%;\n }\n .col-md-push-11 {\n left: 91.66666667%;\n }\n .col-md-push-10 {\n left: 83.33333333%;\n }\n .col-md-push-9 {\n left: 75%;\n }\n .col-md-push-8 {\n left: 66.66666667%;\n }\n .col-md-push-7 {\n left: 58.33333333%;\n }\n .col-md-push-6 {\n left: 50%;\n }\n .col-md-push-5 {\n left: 41.66666667%;\n }\n .col-md-push-4 {\n left: 33.33333333%;\n }\n .col-md-push-3 {\n left: 25%;\n }\n .col-md-push-2 {\n left: 16.66666667%;\n }\n .col-md-push-1 {\n left: 8.33333333%;\n }\n .col-md-push-0 {\n left: auto;\n }\n .col-md-offset-12 {\n margin-left: 100%;\n }\n .col-md-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-md-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-md-offset-9 {\n margin-left: 75%;\n }\n .col-md-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-md-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-md-offset-6 {\n margin-left: 50%;\n }\n .col-md-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-md-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-md-offset-3 {\n margin-left: 25%;\n }\n .col-md-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-md-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-md-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 1200px) {\n .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {\n float: left;\n }\n .col-lg-12 {\n width: 100%;\n }\n .col-lg-11 {\n width: 91.66666667%;\n }\n .col-lg-10 {\n width: 83.33333333%;\n }\n .col-lg-9 {\n width: 75%;\n }\n .col-lg-8 {\n width: 66.66666667%;\n }\n .col-lg-7 {\n width: 58.33333333%;\n }\n .col-lg-6 {\n width: 50%;\n }\n .col-lg-5 {\n width: 41.66666667%;\n }\n .col-lg-4 {\n width: 33.33333333%;\n }\n .col-lg-3 {\n width: 25%;\n }\n .col-lg-2 {\n width: 16.66666667%;\n }\n .col-lg-1 {\n width: 8.33333333%;\n }\n .col-lg-pull-12 {\n right: 100%;\n }\n .col-lg-pull-11 {\n right: 91.66666667%;\n }\n .col-lg-pull-10 {\n right: 83.33333333%;\n }\n .col-lg-pull-9 {\n right: 75%;\n }\n .col-lg-pull-8 {\n right: 66.66666667%;\n }\n .col-lg-pull-7 {\n right: 58.33333333%;\n }\n .col-lg-pull-6 {\n right: 50%;\n }\n .col-lg-pull-5 {\n right: 41.66666667%;\n }\n .col-lg-pull-4 {\n right: 33.33333333%;\n }\n .col-lg-pull-3 {\n right: 25%;\n }\n .col-lg-pull-2 {\n right: 16.66666667%;\n }\n .col-lg-pull-1 {\n right: 8.33333333%;\n }\n .col-lg-pull-0 {\n right: auto;\n }\n .col-lg-push-12 {\n left: 100%;\n }\n .col-lg-push-11 {\n left: 91.66666667%;\n }\n .col-lg-push-10 {\n left: 83.33333333%;\n }\n .col-lg-push-9 {\n left: 75%;\n }\n .col-lg-push-8 {\n left: 66.66666667%;\n }\n .col-lg-push-7 {\n left: 58.33333333%;\n }\n .col-lg-push-6 {\n left: 50%;\n }\n .col-lg-push-5 {\n left: 41.66666667%;\n }\n .col-lg-push-4 {\n left: 33.33333333%;\n }\n .col-lg-push-3 {\n left: 25%;\n }\n .col-lg-push-2 {\n left: 16.66666667%;\n }\n .col-lg-push-1 {\n left: 8.33333333%;\n }\n .col-lg-push-0 {\n left: auto;\n }\n .col-lg-offset-12 {\n margin-left: 100%;\n }\n .col-lg-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-lg-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-lg-offset-9 {\n margin-left: 75%;\n }\n .col-lg-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-lg-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-lg-offset-6 {\n margin-left: 50%;\n }\n .col-lg-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-lg-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-lg-offset-3 {\n margin-left: 25%;\n }\n .col-lg-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-lg-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-lg-offset-0 {\n margin-left: 0%;\n }\n}\ntable {\n background-color: transparent;\n}\ncaption {\n padding-top: 8px;\n padding-bottom: 8px;\n color: #777777;\n text-align: left;\n}\nth {\n text-align: left;\n}\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: 20px;\n}\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n padding: 8px;\n line-height: 1.42857143;\n vertical-align: top;\n border-top: 1px solid #dddddd;\n}\n.table > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid #dddddd;\n}\n.table > caption + thead > tr:first-child > th,\n.table > colgroup + thead > tr:first-child > th,\n.table > thead:first-child > tr:first-child > th,\n.table > caption + thead > tr:first-child > td,\n.table > colgroup + thead > tr:first-child > td,\n.table > thead:first-child > tr:first-child > td {\n border-top: 0;\n}\n.table > tbody + tbody {\n border-top: 2px solid #dddddd;\n}\n.table .table {\n background-color: #ffffff;\n}\n.table-condensed > thead > tr > th,\n.table-condensed > tbody > tr > th,\n.table-condensed > tfoot > tr > th,\n.table-condensed > thead > tr > td,\n.table-condensed > tbody > tr > td,\n.table-condensed > tfoot > tr > td {\n padding: 5px;\n}\n.table-bordered {\n border: 1px solid #dddddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > tbody > tr > td,\n.table-bordered > tfoot > tr > td {\n border: 1px solid #dddddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > thead > tr > td {\n border-bottom-width: 2px;\n}\n.table-striped > tbody > tr:nth-of-type(odd) {\n background-color: #f9f9f9;\n}\n.table-hover > tbody > tr:hover {\n background-color: #f5f5f5;\n}\ntable col[class*=\"col-\"] {\n position: static;\n float: none;\n display: table-column;\n}\ntable td[class*=\"col-\"],\ntable th[class*=\"col-\"] {\n position: static;\n float: none;\n display: table-cell;\n}\n.table > thead > tr > td.active,\n.table > tbody > tr > td.active,\n.table > tfoot > tr > td.active,\n.table > thead > tr > th.active,\n.table > tbody > tr > th.active,\n.table > tfoot > tr > th.active,\n.table > thead > tr.active > td,\n.table > tbody > tr.active > td,\n.table > tfoot > tr.active > td,\n.table > thead > tr.active > th,\n.table > tbody > tr.active > th,\n.table > tfoot > tr.active > th {\n background-color: #f5f5f5;\n}\n.table-hover > tbody > tr > td.active:hover,\n.table-hover > tbody > tr > th.active:hover,\n.table-hover > tbody > tr.active:hover > td,\n.table-hover > tbody > tr:hover > .active,\n.table-hover > tbody > tr.active:hover > th {\n background-color: #e8e8e8;\n}\n.table > thead > tr > td.success,\n.table > tbody > tr > td.success,\n.table > tfoot > tr > td.success,\n.table > thead > tr > th.success,\n.table > tbody > tr > th.success,\n.table > tfoot > tr > th.success,\n.table > thead > tr.success > td,\n.table > tbody > tr.success > td,\n.table > tfoot > tr.success > td,\n.table > thead > tr.success > th,\n.table > tbody > tr.success > th,\n.table > tfoot > tr.success > th {\n background-color: #dff0d8;\n}\n.table-hover > tbody > tr > td.success:hover,\n.table-hover > tbody > tr > th.success:hover,\n.table-hover > tbody > tr.success:hover > td,\n.table-hover > tbody > tr:hover > .success,\n.table-hover > tbody > tr.success:hover > th {\n background-color: #d0e9c6;\n}\n.table > thead > tr > td.info,\n.table > tbody > tr > td.info,\n.table > tfoot > tr > td.info,\n.table > thead > tr > th.info,\n.table > tbody > tr > th.info,\n.table > tfoot > tr > th.info,\n.table > thead > tr.info > td,\n.table > tbody > tr.info > td,\n.table > tfoot > tr.info > td,\n.table > thead > tr.info > th,\n.table > tbody > tr.info > th,\n.table > tfoot > tr.info > th {\n background-color: #d9edf7;\n}\n.table-hover > tbody > tr > td.info:hover,\n.table-hover > tbody > tr > th.info:hover,\n.table-hover > tbody > tr.info:hover > td,\n.table-hover > tbody > tr:hover > .info,\n.table-hover > tbody > tr.info:hover > th {\n background-color: #c4e3f3;\n}\n.table > thead > tr > td.warning,\n.table > tbody > tr > td.warning,\n.table > tfoot > tr > td.warning,\n.table > thead > tr > th.warning,\n.table > tbody > tr > th.warning,\n.table > tfoot > tr > th.warning,\n.table > thead > tr.warning > td,\n.table > tbody > tr.warning > td,\n.table > tfoot > tr.warning > td,\n.table > thead > tr.warning > th,\n.table > tbody > tr.warning > th,\n.table > tfoot > tr.warning > th {\n background-color: #fcf8e3;\n}\n.table-hover > tbody > tr > td.warning:hover,\n.table-hover > tbody > tr > th.warning:hover,\n.table-hover > tbody > tr.warning:hover > td,\n.table-hover > tbody > tr:hover > .warning,\n.table-hover > tbody > tr.warning:hover > th {\n background-color: #faf2cc;\n}\n.table > thead > tr > td.danger,\n.table > tbody > tr > td.danger,\n.table > tfoot > tr > td.danger,\n.table > thead > tr > th.danger,\n.table > tbody > tr > th.danger,\n.table > tfoot > tr > th.danger,\n.table > thead > tr.danger > td,\n.table > tbody > tr.danger > td,\n.table > tfoot > tr.danger > td,\n.table > thead > tr.danger > th,\n.table > tbody > tr.danger > th,\n.table > tfoot > tr.danger > th {\n background-color: #f2dede;\n}\n.table-hover > tbody > tr > td.danger:hover,\n.table-hover > tbody > tr > th.danger:hover,\n.table-hover > tbody > tr.danger:hover > td,\n.table-hover > tbody > tr:hover > .danger,\n.table-hover > tbody > tr.danger:hover > th {\n background-color: #ebcccc;\n}\n.table-responsive {\n overflow-x: auto;\n min-height: 0.01%;\n}\n@media screen and (max-width: 767px) {\n .table-responsive {\n width: 100%;\n margin-bottom: 15px;\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid #dddddd;\n }\n .table-responsive > .table {\n margin-bottom: 0;\n }\n .table-responsive > .table > thead > tr > th,\n .table-responsive > .table > tbody > tr > th,\n .table-responsive > .table > tfoot > tr > th,\n .table-responsive > .table > thead > tr > td,\n .table-responsive > .table > tbody > tr > td,\n .table-responsive > .table > tfoot > tr > td {\n white-space: nowrap;\n }\n .table-responsive > .table-bordered {\n border: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:first-child,\n .table-responsive > .table-bordered > tbody > tr > th:first-child,\n .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n .table-responsive > .table-bordered > thead > tr > td:first-child,\n .table-responsive > .table-bordered > tbody > tr > td:first-child,\n .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:last-child,\n .table-responsive > .table-bordered > tbody > tr > th:last-child,\n .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n .table-responsive > .table-bordered > thead > tr > td:last-child,\n .table-responsive > .table-bordered > tbody > tr > td:last-child,\n .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n }\n .table-responsive > .table-bordered > tbody > tr:last-child > th,\n .table-responsive > .table-bordered > tfoot > tr:last-child > th,\n .table-responsive > .table-bordered > tbody > tr:last-child > td,\n .table-responsive > .table-bordered > tfoot > tr:last-child > td {\n border-bottom: 0;\n }\n}\nfieldset {\n padding: 0;\n margin: 0;\n border: 0;\n min-width: 0;\n}\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: 20px;\n font-size: 21px;\n line-height: inherit;\n color: #333333;\n border: 0;\n border-bottom: 1px solid #e5e5e5;\n}\nlabel {\n display: inline-block;\n max-width: 100%;\n margin-bottom: 5px;\n font-weight: bold;\n}\ninput[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal;\n}\ninput[type=\"file\"] {\n display: block;\n}\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\nselect[multiple],\nselect[size] {\n height: auto;\n}\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n outline: thin dotted;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\noutput {\n display: block;\n padding-top: 7px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n}\n.form-control {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n background-color: #ffffff;\n background-image: none;\n border: 1px solid #cccccc;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n}\n.form-control:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);\n}\n.form-control::-moz-placeholder {\n color: #999999;\n opacity: 1;\n}\n.form-control:-ms-input-placeholder {\n color: #999999;\n}\n.form-control::-webkit-input-placeholder {\n color: #999999;\n}\n.form-control[disabled],\n.form-control[readonly],\nfieldset[disabled] .form-control {\n background-color: #eeeeee;\n opacity: 1;\n}\n.form-control[disabled],\nfieldset[disabled] .form-control {\n cursor: not-allowed;\n}\ntextarea.form-control {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: none;\n}\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"].form-control,\n input[type=\"time\"].form-control,\n input[type=\"datetime-local\"].form-control,\n input[type=\"month\"].form-control {\n line-height: 34px;\n }\n input[type=\"date\"].input-sm,\n input[type=\"time\"].input-sm,\n input[type=\"datetime-local\"].input-sm,\n input[type=\"month\"].input-sm,\n .input-group-sm input[type=\"date\"],\n .input-group-sm input[type=\"time\"],\n .input-group-sm input[type=\"datetime-local\"],\n .input-group-sm input[type=\"month\"] {\n line-height: 30px;\n }\n input[type=\"date\"].input-lg,\n input[type=\"time\"].input-lg,\n input[type=\"datetime-local\"].input-lg,\n input[type=\"month\"].input-lg,\n .input-group-lg input[type=\"date\"],\n .input-group-lg input[type=\"time\"],\n .input-group-lg input[type=\"datetime-local\"],\n .input-group-lg input[type=\"month\"] {\n line-height: 46px;\n }\n}\n.form-group {\n margin-bottom: 15px;\n}\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.radio label,\n.checkbox label {\n min-height: 20px;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: normal;\n cursor: pointer;\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n position: absolute;\n margin-left: -20px;\n margin-top: 4px \\9;\n}\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px;\n}\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n vertical-align: middle;\n font-weight: normal;\n cursor: pointer;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px;\n}\ninput[type=\"radio\"][disabled],\ninput[type=\"checkbox\"][disabled],\ninput[type=\"radio\"].disabled,\ninput[type=\"checkbox\"].disabled,\nfieldset[disabled] input[type=\"radio\"],\nfieldset[disabled] input[type=\"checkbox\"] {\n cursor: not-allowed;\n}\n.radio-inline.disabled,\n.checkbox-inline.disabled,\nfieldset[disabled] .radio-inline,\nfieldset[disabled] .checkbox-inline {\n cursor: not-allowed;\n}\n.radio.disabled label,\n.checkbox.disabled label,\nfieldset[disabled] .radio label,\nfieldset[disabled] .checkbox label {\n cursor: not-allowed;\n}\n.form-control-static {\n padding-top: 7px;\n padding-bottom: 7px;\n margin-bottom: 0;\n min-height: 34px;\n}\n.form-control-static.input-lg,\n.form-control-static.input-sm {\n padding-left: 0;\n padding-right: 0;\n}\n.input-sm {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-sm {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-sm,\nselect[multiple].input-sm {\n height: auto;\n}\n.form-group-sm .form-control {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.form-group-sm select.form-control {\n height: 30px;\n line-height: 30px;\n}\n.form-group-sm textarea.form-control,\n.form-group-sm select[multiple].form-control {\n height: auto;\n}\n.form-group-sm .form-control-static {\n height: 30px;\n min-height: 32px;\n padding: 6px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.input-lg {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-lg {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-lg,\nselect[multiple].input-lg {\n height: auto;\n}\n.form-group-lg .form-control {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.form-group-lg select.form-control {\n height: 46px;\n line-height: 46px;\n}\n.form-group-lg textarea.form-control,\n.form-group-lg select[multiple].form-control {\n height: auto;\n}\n.form-group-lg .form-control-static {\n height: 46px;\n min-height: 38px;\n padding: 11px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.has-feedback {\n position: relative;\n}\n.has-feedback .form-control {\n padding-right: 42.5px;\n}\n.form-control-feedback {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n display: block;\n width: 34px;\n height: 34px;\n line-height: 34px;\n text-align: center;\n pointer-events: none;\n}\n.input-lg + .form-control-feedback,\n.input-group-lg + .form-control-feedback,\n.form-group-lg .form-control + .form-control-feedback {\n width: 46px;\n height: 46px;\n line-height: 46px;\n}\n.input-sm + .form-control-feedback,\n.input-group-sm + .form-control-feedback,\n.form-group-sm .form-control + .form-control-feedback {\n width: 30px;\n height: 30px;\n line-height: 30px;\n}\n.has-success .help-block,\n.has-success .control-label,\n.has-success .radio,\n.has-success .checkbox,\n.has-success .radio-inline,\n.has-success .checkbox-inline,\n.has-success.radio label,\n.has-success.checkbox label,\n.has-success.radio-inline label,\n.has-success.checkbox-inline label {\n color: #3c763d;\n}\n.has-success .form-control {\n border-color: #3c763d;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-success .form-control:focus {\n border-color: #2b542c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n}\n.has-success .input-group-addon {\n color: #3c763d;\n border-color: #3c763d;\n background-color: #dff0d8;\n}\n.has-success .form-control-feedback {\n color: #3c763d;\n}\n.has-warning .help-block,\n.has-warning .control-label,\n.has-warning .radio,\n.has-warning .checkbox,\n.has-warning .radio-inline,\n.has-warning .checkbox-inline,\n.has-warning.radio label,\n.has-warning.checkbox label,\n.has-warning.radio-inline label,\n.has-warning.checkbox-inline label {\n color: #8a6d3b;\n}\n.has-warning .form-control {\n border-color: #8a6d3b;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-warning .form-control:focus {\n border-color: #66512c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n}\n.has-warning .input-group-addon {\n color: #8a6d3b;\n border-color: #8a6d3b;\n background-color: #fcf8e3;\n}\n.has-warning .form-control-feedback {\n color: #8a6d3b;\n}\n.has-error .help-block,\n.has-error .control-label,\n.has-error .radio,\n.has-error .checkbox,\n.has-error .radio-inline,\n.has-error .checkbox-inline,\n.has-error.radio label,\n.has-error.checkbox label,\n.has-error.radio-inline label,\n.has-error.checkbox-inline label {\n color: #a94442;\n}\n.has-error .form-control {\n border-color: #a94442;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-error .form-control:focus {\n border-color: #843534;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n}\n.has-error .input-group-addon {\n color: #a94442;\n border-color: #a94442;\n background-color: #f2dede;\n}\n.has-error .form-control-feedback {\n color: #a94442;\n}\n.has-feedback label ~ .form-control-feedback {\n top: 25px;\n}\n.has-feedback label.sr-only ~ .form-control-feedback {\n top: 0;\n}\n.help-block {\n display: block;\n margin-top: 5px;\n margin-bottom: 10px;\n color: #737373;\n}\n@media (min-width: 768px) {\n .form-inline .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-static {\n display: inline-block;\n }\n .form-inline .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .form-inline .input-group .input-group-addon,\n .form-inline .input-group .input-group-btn,\n .form-inline .input-group .form-control {\n width: auto;\n }\n .form-inline .input-group > .form-control {\n width: 100%;\n }\n .form-inline .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio,\n .form-inline .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio label,\n .form-inline .checkbox label {\n padding-left: 0;\n }\n .form-inline .radio input[type=\"radio\"],\n .form-inline .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .form-inline .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox,\n.form-horizontal .radio-inline,\n.form-horizontal .checkbox-inline {\n margin-top: 0;\n margin-bottom: 0;\n padding-top: 7px;\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox {\n min-height: 27px;\n}\n.form-horizontal .form-group {\n margin-left: -15px;\n margin-right: -15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .control-label {\n text-align: right;\n margin-bottom: 0;\n padding-top: 7px;\n }\n}\n.form-horizontal .has-feedback .form-control-feedback {\n right: 15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-lg .control-label {\n padding-top: 14.333333px;\n font-size: 18px;\n }\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-sm .control-label {\n padding-top: 6px;\n font-size: 12px;\n }\n}\n.btn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: normal;\n text-align: center;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n white-space: nowrap;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n border-radius: 4px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.btn:focus,\n.btn:active:focus,\n.btn.active:focus,\n.btn.focus,\n.btn:active.focus,\n.btn.active.focus {\n outline: thin dotted;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n.btn:hover,\n.btn:focus,\n.btn.focus {\n color: #333333;\n text-decoration: none;\n}\n.btn:active,\n.btn.active {\n outline: 0;\n background-image: none;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn.disabled,\n.btn[disabled],\nfieldset[disabled] .btn {\n cursor: not-allowed;\n opacity: 0.65;\n filter: alpha(opacity=65);\n -webkit-box-shadow: none;\n box-shadow: none;\n}\na.btn.disabled,\nfieldset[disabled] a.btn {\n pointer-events: none;\n}\n.btn-default {\n color: #333333;\n background-color: #ffffff;\n border-color: #cccccc;\n}\n.btn-default:focus,\n.btn-default.focus {\n color: #333333;\n background-color: #e6e6e6;\n border-color: #8c8c8c;\n}\n.btn-default:hover {\n color: #333333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n color: #333333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active:hover,\n.btn-default.active:hover,\n.open > .dropdown-toggle.btn-default:hover,\n.btn-default:active:focus,\n.btn-default.active:focus,\n.open > .dropdown-toggle.btn-default:focus,\n.btn-default:active.focus,\n.btn-default.active.focus,\n.open > .dropdown-toggle.btn-default.focus {\n color: #333333;\n background-color: #d4d4d4;\n border-color: #8c8c8c;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n background-image: none;\n}\n.btn-default.disabled,\n.btn-default[disabled],\nfieldset[disabled] .btn-default,\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus,\n.btn-default.disabled:active,\n.btn-default[disabled]:active,\nfieldset[disabled] .btn-default:active,\n.btn-default.disabled.active,\n.btn-default[disabled].active,\nfieldset[disabled] .btn-default.active {\n background-color: #ffffff;\n border-color: #cccccc;\n}\n.btn-default .badge {\n color: #ffffff;\n background-color: #333333;\n}\n.btn-primary {\n color: #ffffff;\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary:focus,\n.btn-primary.focus {\n color: #ffffff;\n background-color: #286090;\n border-color: #122b40;\n}\n.btn-primary:hover {\n color: #ffffff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n color: #ffffff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active:hover,\n.btn-primary.active:hover,\n.open > .dropdown-toggle.btn-primary:hover,\n.btn-primary:active:focus,\n.btn-primary.active:focus,\n.open > .dropdown-toggle.btn-primary:focus,\n.btn-primary:active.focus,\n.btn-primary.active.focus,\n.open > .dropdown-toggle.btn-primary.focus {\n color: #ffffff;\n background-color: #204d74;\n border-color: #122b40;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n background-image: none;\n}\n.btn-primary.disabled,\n.btn-primary[disabled],\nfieldset[disabled] .btn-primary,\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus,\n.btn-primary.disabled:active,\n.btn-primary[disabled]:active,\nfieldset[disabled] .btn-primary:active,\n.btn-primary.disabled.active,\n.btn-primary[disabled].active,\nfieldset[disabled] .btn-primary.active {\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary .badge {\n color: #337ab7;\n background-color: #ffffff;\n}\n.btn-success {\n color: #ffffff;\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success:focus,\n.btn-success.focus {\n color: #ffffff;\n background-color: #449d44;\n border-color: #255625;\n}\n.btn-success:hover {\n color: #ffffff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n color: #ffffff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active:hover,\n.btn-success.active:hover,\n.open > .dropdown-toggle.btn-success:hover,\n.btn-success:active:focus,\n.btn-success.active:focus,\n.open > .dropdown-toggle.btn-success:focus,\n.btn-success:active.focus,\n.btn-success.active.focus,\n.open > .dropdown-toggle.btn-success.focus {\n color: #ffffff;\n background-color: #398439;\n border-color: #255625;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n background-image: none;\n}\n.btn-success.disabled,\n.btn-success[disabled],\nfieldset[disabled] .btn-success,\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus,\n.btn-success.disabled:active,\n.btn-success[disabled]:active,\nfieldset[disabled] .btn-success:active,\n.btn-success.disabled.active,\n.btn-success[disabled].active,\nfieldset[disabled] .btn-success.active {\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success .badge {\n color: #5cb85c;\n background-color: #ffffff;\n}\n.btn-info {\n color: #ffffff;\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info:focus,\n.btn-info.focus {\n color: #ffffff;\n background-color: #31b0d5;\n border-color: #1b6d85;\n}\n.btn-info:hover {\n color: #ffffff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n color: #ffffff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active:hover,\n.btn-info.active:hover,\n.open > .dropdown-toggle.btn-info:hover,\n.btn-info:active:focus,\n.btn-info.active:focus,\n.open > .dropdown-toggle.btn-info:focus,\n.btn-info:active.focus,\n.btn-info.active.focus,\n.open > .dropdown-toggle.btn-info.focus {\n color: #ffffff;\n background-color: #269abc;\n border-color: #1b6d85;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n background-image: none;\n}\n.btn-info.disabled,\n.btn-info[disabled],\nfieldset[disabled] .btn-info,\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus,\n.btn-info.disabled:active,\n.btn-info[disabled]:active,\nfieldset[disabled] .btn-info:active,\n.btn-info.disabled.active,\n.btn-info[disabled].active,\nfieldset[disabled] .btn-info.active {\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info .badge {\n color: #5bc0de;\n background-color: #ffffff;\n}\n.btn-warning {\n color: #ffffff;\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning:focus,\n.btn-warning.focus {\n color: #ffffff;\n background-color: #ec971f;\n border-color: #985f0d;\n}\n.btn-warning:hover {\n color: #ffffff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n color: #ffffff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active:hover,\n.btn-warning.active:hover,\n.open > .dropdown-toggle.btn-warning:hover,\n.btn-warning:active:focus,\n.btn-warning.active:focus,\n.open > .dropdown-toggle.btn-warning:focus,\n.btn-warning:active.focus,\n.btn-warning.active.focus,\n.open > .dropdown-toggle.btn-warning.focus {\n color: #ffffff;\n background-color: #d58512;\n border-color: #985f0d;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n background-image: none;\n}\n.btn-warning.disabled,\n.btn-warning[disabled],\nfieldset[disabled] .btn-warning,\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus,\n.btn-warning.disabled:active,\n.btn-warning[disabled]:active,\nfieldset[disabled] .btn-warning:active,\n.btn-warning.disabled.active,\n.btn-warning[disabled].active,\nfieldset[disabled] .btn-warning.active {\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning .badge {\n color: #f0ad4e;\n background-color: #ffffff;\n}\n.btn-danger {\n color: #ffffff;\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger:focus,\n.btn-danger.focus {\n color: #ffffff;\n background-color: #c9302c;\n border-color: #761c19;\n}\n.btn-danger:hover {\n color: #ffffff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n color: #ffffff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active:hover,\n.btn-danger.active:hover,\n.open > .dropdown-toggle.btn-danger:hover,\n.btn-danger:active:focus,\n.btn-danger.active:focus,\n.open > .dropdown-toggle.btn-danger:focus,\n.btn-danger:active.focus,\n.btn-danger.active.focus,\n.open > .dropdown-toggle.btn-danger.focus {\n color: #ffffff;\n background-color: #ac2925;\n border-color: #761c19;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n background-image: none;\n}\n.btn-danger.disabled,\n.btn-danger[disabled],\nfieldset[disabled] .btn-danger,\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus,\n.btn-danger.disabled:active,\n.btn-danger[disabled]:active,\nfieldset[disabled] .btn-danger:active,\n.btn-danger.disabled.active,\n.btn-danger[disabled].active,\nfieldset[disabled] .btn-danger.active {\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger .badge {\n color: #d9534f;\n background-color: #ffffff;\n}\n.btn-link {\n color: #337ab7;\n font-weight: normal;\n border-radius: 0;\n}\n.btn-link,\n.btn-link:active,\n.btn-link.active,\n.btn-link[disabled],\nfieldset[disabled] .btn-link {\n background-color: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-link,\n.btn-link:hover,\n.btn-link:focus,\n.btn-link:active {\n border-color: transparent;\n}\n.btn-link:hover,\n.btn-link:focus {\n color: #23527c;\n text-decoration: underline;\n background-color: transparent;\n}\n.btn-link[disabled]:hover,\nfieldset[disabled] .btn-link:hover,\n.btn-link[disabled]:focus,\nfieldset[disabled] .btn-link:focus {\n color: #777777;\n text-decoration: none;\n}\n.btn-lg,\n.btn-group-lg > .btn {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.btn-sm,\n.btn-group-sm > .btn {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-xs,\n.btn-group-xs > .btn {\n padding: 1px 5px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-block {\n display: block;\n width: 100%;\n}\n.btn-block + .btn-block {\n margin-top: 5px;\n}\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n.fade {\n opacity: 0;\n -webkit-transition: opacity 0.15s linear;\n -o-transition: opacity 0.15s linear;\n transition: opacity 0.15s linear;\n}\n.fade.in {\n opacity: 1;\n}\n.collapse {\n display: none;\n}\n.collapse.in {\n display: block;\n}\ntr.collapse.in {\n display: table-row;\n}\ntbody.collapse.in {\n display: table-row-group;\n}\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n -webkit-transition-property: height, visibility;\n transition-property: height, visibility;\n -webkit-transition-duration: 0.35s;\n transition-duration: 0.35s;\n -webkit-transition-timing-function: ease;\n transition-timing-function: ease;\n}\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: 4px dashed;\n border-top: 4px solid \\9;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n.dropup,\n.dropdown {\n position: relative;\n}\n.dropdown-toggle:focus {\n outline: 0;\n}\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0;\n list-style: none;\n font-size: 14px;\n text-align: left;\n background-color: #ffffff;\n border: 1px solid #cccccc;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n background-clip: padding-box;\n}\n.dropdown-menu.pull-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu .divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.dropdown-menu > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: normal;\n line-height: 1.42857143;\n color: #333333;\n white-space: nowrap;\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n text-decoration: none;\n color: #262626;\n background-color: #f5f5f5;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n color: #ffffff;\n text-decoration: none;\n outline: 0;\n background-color: #337ab7;\n}\n.dropdown-menu > .disabled > a,\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n color: #777777;\n}\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n text-decoration: none;\n background-color: transparent;\n background-image: none;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n cursor: not-allowed;\n}\n.open > .dropdown-menu {\n display: block;\n}\n.open > a {\n outline: 0;\n}\n.dropdown-menu-right {\n left: auto;\n right: 0;\n}\n.dropdown-menu-left {\n left: 0;\n right: auto;\n}\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: 12px;\n line-height: 1.42857143;\n color: #777777;\n white-space: nowrap;\n}\n.dropdown-backdrop {\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n top: 0;\n z-index: 990;\n}\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n.dropup .caret,\n.navbar-fixed-bottom .dropdown .caret {\n border-top: 0;\n border-bottom: 4px dashed;\n border-bottom: 4px solid \\9;\n content: \"\";\n}\n.dropup .dropdown-menu,\n.navbar-fixed-bottom .dropdown .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n}\n@media (min-width: 768px) {\n .navbar-right .dropdown-menu {\n left: auto;\n right: 0;\n }\n .navbar-right .dropdown-menu-left {\n left: 0;\n right: auto;\n }\n}\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n float: left;\n}\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group-vertical > .btn:focus,\n.btn-group > .btn:active,\n.btn-group-vertical > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn.active {\n z-index: 2;\n}\n.btn-group .btn + .btn,\n.btn-group .btn + .btn-group,\n.btn-group .btn-group + .btn,\n.btn-group .btn-group + .btn-group {\n margin-left: -1px;\n}\n.btn-toolbar {\n margin-left: -5px;\n}\n.btn-toolbar .btn,\n.btn-toolbar .btn-group,\n.btn-toolbar .input-group {\n float: left;\n}\n.btn-toolbar > .btn,\n.btn-toolbar > .btn-group,\n.btn-toolbar > .input-group {\n margin-left: 5px;\n}\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n.btn-group > .btn:first-child {\n margin-left: 0;\n}\n.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n.btn-group > .btn + .dropdown-toggle {\n padding-left: 8px;\n padding-right: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-left: 12px;\n padding-right: 12px;\n}\n.btn-group.open .dropdown-toggle {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-group.open .dropdown-toggle.btn-link {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn .caret {\n margin-left: 0;\n}\n.btn-lg .caret {\n border-width: 5px 5px 0;\n border-bottom-width: 0;\n}\n.dropup .btn-lg .caret {\n border-width: 0 5px 5px;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group,\n.btn-group-vertical > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n}\n.btn-group-vertical > .btn-group > .btn {\n float: none;\n}\n.btn-group-vertical > .btn + .btn,\n.btn-group-vertical > .btn + .btn-group,\n.btn-group-vertical > .btn-group + .btn,\n.btn-group-vertical > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n}\n.btn-group-vertical > .btn:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.btn-group-vertical > .btn:first-child:not(:last-child) {\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn:last-child:not(:first-child) {\n border-bottom-left-radius: 4px;\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n}\n.btn-group-justified > .btn,\n.btn-group-justified > .btn-group {\n float: none;\n display: table-cell;\n width: 1%;\n}\n.btn-group-justified > .btn-group .btn {\n width: 100%;\n}\n.btn-group-justified > .btn-group .dropdown-menu {\n left: auto;\n}\n[data-toggle=\"buttons\"] > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn input[type=\"checkbox\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.input-group {\n position: relative;\n display: table;\n border-collapse: separate;\n}\n.input-group[class*=\"col-\"] {\n float: none;\n padding-left: 0;\n padding-right: 0;\n}\n.input-group .form-control {\n position: relative;\n z-index: 2;\n float: left;\n width: 100%;\n margin-bottom: 0;\n}\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-group-lg > .form-control,\nselect.input-group-lg > .input-group-addon,\nselect.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-group-lg > .form-control,\ntextarea.input-group-lg > .input-group-addon,\ntextarea.input-group-lg > .input-group-btn > .btn,\nselect[multiple].input-group-lg > .form-control,\nselect[multiple].input-group-lg > .input-group-addon,\nselect[multiple].input-group-lg > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-group-sm > .form-control,\nselect.input-group-sm > .input-group-addon,\nselect.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-group-sm > .form-control,\ntextarea.input-group-sm > .input-group-addon,\ntextarea.input-group-sm > .input-group-btn > .btn,\nselect[multiple].input-group-sm > .form-control,\nselect[multiple].input-group-sm > .input-group-addon,\nselect[multiple].input-group-sm > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n}\n.input-group-addon:not(:first-child):not(:last-child),\n.input-group-btn:not(:first-child):not(:last-child),\n.input-group .form-control:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle;\n}\n.input-group-addon {\n padding: 6px 12px;\n font-size: 14px;\n font-weight: normal;\n line-height: 1;\n color: #555555;\n text-align: center;\n background-color: #eeeeee;\n border: 1px solid #cccccc;\n border-radius: 4px;\n}\n.input-group-addon.input-sm {\n padding: 5px 10px;\n font-size: 12px;\n border-radius: 3px;\n}\n.input-group-addon.input-lg {\n padding: 10px 16px;\n font-size: 18px;\n border-radius: 6px;\n}\n.input-group-addon input[type=\"radio\"],\n.input-group-addon input[type=\"checkbox\"] {\n margin-top: 0;\n}\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n.input-group-btn {\n position: relative;\n font-size: 0;\n white-space: nowrap;\n}\n.input-group-btn > .btn {\n position: relative;\n}\n.input-group-btn > .btn + .btn {\n margin-left: -1px;\n}\n.input-group-btn > .btn:hover,\n.input-group-btn > .btn:focus,\n.input-group-btn > .btn:active {\n z-index: 2;\n}\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group {\n margin-right: -1px;\n}\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group {\n z-index: 2;\n margin-left: -1px;\n}\n.nav {\n margin-bottom: 0;\n padding-left: 0;\n list-style: none;\n}\n.nav > li {\n position: relative;\n display: block;\n}\n.nav > li > a {\n position: relative;\n display: block;\n padding: 10px 15px;\n}\n.nav > li > a:hover,\n.nav > li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.nav > li.disabled > a {\n color: #777777;\n}\n.nav > li.disabled > a:hover,\n.nav > li.disabled > a:focus {\n color: #777777;\n text-decoration: none;\n background-color: transparent;\n cursor: not-allowed;\n}\n.nav .open > a,\n.nav .open > a:hover,\n.nav .open > a:focus {\n background-color: #eeeeee;\n border-color: #337ab7;\n}\n.nav .nav-divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.nav > li > a > img {\n max-width: none;\n}\n.nav-tabs {\n border-bottom: 1px solid #dddddd;\n}\n.nav-tabs > li {\n float: left;\n margin-bottom: -1px;\n}\n.nav-tabs > li > a {\n margin-right: 2px;\n line-height: 1.42857143;\n border: 1px solid transparent;\n border-radius: 4px 4px 0 0;\n}\n.nav-tabs > li > a:hover {\n border-color: #eeeeee #eeeeee #dddddd;\n}\n.nav-tabs > li.active > a,\n.nav-tabs > li.active > a:hover,\n.nav-tabs > li.active > a:focus {\n color: #555555;\n background-color: #ffffff;\n border: 1px solid #dddddd;\n border-bottom-color: transparent;\n cursor: default;\n}\n.nav-tabs.nav-justified {\n width: 100%;\n border-bottom: 0;\n}\n.nav-tabs.nav-justified > li {\n float: none;\n}\n.nav-tabs.nav-justified > li > a {\n text-align: center;\n margin-bottom: 5px;\n}\n.nav-tabs.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-tabs.nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs.nav-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs.nav-justified > .active > a,\n.nav-tabs.nav-justified > .active > a:hover,\n.nav-tabs.nav-justified > .active > a:focus {\n border: 1px solid #dddddd;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li > a {\n border-bottom: 1px solid #dddddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs.nav-justified > .active > a,\n .nav-tabs.nav-justified > .active > a:hover,\n .nav-tabs.nav-justified > .active > a:focus {\n border-bottom-color: #ffffff;\n }\n}\n.nav-pills > li {\n float: left;\n}\n.nav-pills > li > a {\n border-radius: 4px;\n}\n.nav-pills > li + li {\n margin-left: 2px;\n}\n.nav-pills > li.active > a,\n.nav-pills > li.active > a:hover,\n.nav-pills > li.active > a:focus {\n color: #ffffff;\n background-color: #337ab7;\n}\n.nav-stacked > li {\n float: none;\n}\n.nav-stacked > li + li {\n margin-top: 2px;\n margin-left: 0;\n}\n.nav-justified {\n width: 100%;\n}\n.nav-justified > li {\n float: none;\n}\n.nav-justified > li > a {\n text-align: center;\n margin-bottom: 5px;\n}\n.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs-justified {\n border-bottom: 0;\n}\n.nav-tabs-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs-justified > .active > a,\n.nav-tabs-justified > .active > a:hover,\n.nav-tabs-justified > .active > a:focus {\n border: 1px solid #dddddd;\n}\n@media (min-width: 768px) {\n .nav-tabs-justified > li > a {\n border-bottom: 1px solid #dddddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs-justified > .active > a,\n .nav-tabs-justified > .active > a:hover,\n .nav-tabs-justified > .active > a:focus {\n border-bottom-color: #ffffff;\n }\n}\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.navbar {\n position: relative;\n min-height: 50px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n}\n@media (min-width: 768px) {\n .navbar {\n border-radius: 4px;\n }\n}\n@media (min-width: 768px) {\n .navbar-header {\n float: left;\n }\n}\n.navbar-collapse {\n overflow-x: visible;\n padding-right: 15px;\n padding-left: 15px;\n border-top: 1px solid transparent;\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n -webkit-overflow-scrolling: touch;\n}\n.navbar-collapse.in {\n overflow-y: auto;\n}\n@media (min-width: 768px) {\n .navbar-collapse {\n width: auto;\n border-top: 0;\n box-shadow: none;\n }\n .navbar-collapse.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0;\n overflow: visible !important;\n }\n .navbar-collapse.in {\n overflow-y: visible;\n }\n .navbar-fixed-top .navbar-collapse,\n .navbar-static-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n padding-left: 0;\n padding-right: 0;\n }\n}\n.navbar-fixed-top .navbar-collapse,\n.navbar-fixed-bottom .navbar-collapse {\n max-height: 340px;\n}\n@media (max-device-width: 480px) and (orientation: landscape) {\n .navbar-fixed-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n max-height: 200px;\n }\n}\n.container > .navbar-header,\n.container-fluid > .navbar-header,\n.container > .navbar-collapse,\n.container-fluid > .navbar-collapse {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .container > .navbar-header,\n .container-fluid > .navbar-header,\n .container > .navbar-collapse,\n .container-fluid > .navbar-collapse {\n margin-right: 0;\n margin-left: 0;\n }\n}\n.navbar-static-top {\n z-index: 1000;\n border-width: 0 0 1px;\n}\n@media (min-width: 768px) {\n .navbar-static-top {\n border-radius: 0;\n }\n}\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n@media (min-width: 768px) {\n .navbar-fixed-top,\n .navbar-fixed-bottom {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0;\n border-width: 1px 0 0;\n}\n.navbar-brand {\n float: left;\n padding: 15px 15px;\n font-size: 18px;\n line-height: 20px;\n height: 50px;\n}\n.navbar-brand:hover,\n.navbar-brand:focus {\n text-decoration: none;\n}\n.navbar-brand > img {\n display: block;\n}\n@media (min-width: 768px) {\n .navbar > .container .navbar-brand,\n .navbar > .container-fluid .navbar-brand {\n margin-left: -15px;\n }\n}\n.navbar-toggle {\n position: relative;\n float: right;\n margin-right: 15px;\n padding: 9px 10px;\n margin-top: 8px;\n margin-bottom: 8px;\n background-color: transparent;\n background-image: none;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.navbar-toggle:focus {\n outline: 0;\n}\n.navbar-toggle .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n}\n.navbar-toggle .icon-bar + .icon-bar {\n margin-top: 4px;\n}\n@media (min-width: 768px) {\n .navbar-toggle {\n display: none;\n }\n}\n.navbar-nav {\n margin: 7.5px -15px;\n}\n.navbar-nav > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: 20px;\n}\n@media (max-width: 767px) {\n .navbar-nav .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n box-shadow: none;\n }\n .navbar-nav .open .dropdown-menu > li > a,\n .navbar-nav .open .dropdown-menu .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n .navbar-nav .open .dropdown-menu > li > a {\n line-height: 20px;\n }\n .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-nav .open .dropdown-menu > li > a:focus {\n background-image: none;\n }\n}\n@media (min-width: 768px) {\n .navbar-nav {\n float: left;\n margin: 0;\n }\n .navbar-nav > li {\n float: left;\n }\n .navbar-nav > li > a {\n padding-top: 15px;\n padding-bottom: 15px;\n }\n}\n.navbar-form {\n margin-left: -15px;\n margin-right: -15px;\n padding: 10px 15px;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n margin-top: 8px;\n margin-bottom: 8px;\n}\n@media (min-width: 768px) {\n .navbar-form .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .navbar-form .form-control-static {\n display: inline-block;\n }\n .navbar-form .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .navbar-form .input-group .input-group-addon,\n .navbar-form .input-group .input-group-btn,\n .navbar-form .input-group .form-control {\n width: auto;\n }\n .navbar-form .input-group > .form-control {\n width: 100%;\n }\n .navbar-form .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio,\n .navbar-form .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio label,\n .navbar-form .checkbox label {\n padding-left: 0;\n }\n .navbar-form .radio input[type=\"radio\"],\n .navbar-form .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .navbar-form .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n@media (max-width: 767px) {\n .navbar-form .form-group {\n margin-bottom: 5px;\n }\n .navbar-form .form-group:last-child {\n margin-bottom: 0;\n }\n}\n@media (min-width: 768px) {\n .navbar-form {\n width: auto;\n border: 0;\n margin-left: 0;\n margin-right: 0;\n padding-top: 0;\n padding-bottom: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n border-top-right-radius: 4px;\n border-top-left-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.navbar-btn {\n margin-top: 8px;\n margin-bottom: 8px;\n}\n.navbar-btn.btn-sm {\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.navbar-btn.btn-xs {\n margin-top: 14px;\n margin-bottom: 14px;\n}\n.navbar-text {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n@media (min-width: 768px) {\n .navbar-text {\n float: left;\n margin-left: 15px;\n margin-right: 15px;\n }\n}\n@media (min-width: 768px) {\n .navbar-left {\n float: left !important;\n }\n .navbar-right {\n float: right !important;\n margin-right: -15px;\n }\n .navbar-right ~ .navbar-right {\n margin-right: 0;\n }\n}\n.navbar-default {\n background-color: #f8f8f8;\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-brand {\n color: #777777;\n}\n.navbar-default .navbar-brand:hover,\n.navbar-default .navbar-brand:focus {\n color: #5e5e5e;\n background-color: transparent;\n}\n.navbar-default .navbar-text {\n color: #777777;\n}\n.navbar-default .navbar-nav > li > a {\n color: #777777;\n}\n.navbar-default .navbar-nav > li > a:hover,\n.navbar-default .navbar-nav > li > a:focus {\n color: #333333;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .active > a,\n.navbar-default .navbar-nav > .active > a:hover,\n.navbar-default .navbar-nav > .active > a:focus {\n color: #555555;\n background-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .disabled > a,\n.navbar-default .navbar-nav > .disabled > a:hover,\n.navbar-default .navbar-nav > .disabled > a:focus {\n color: #cccccc;\n background-color: transparent;\n}\n.navbar-default .navbar-toggle {\n border-color: #dddddd;\n}\n.navbar-default .navbar-toggle:hover,\n.navbar-default .navbar-toggle:focus {\n background-color: #dddddd;\n}\n.navbar-default .navbar-toggle .icon-bar {\n background-color: #888888;\n}\n.navbar-default .navbar-collapse,\n.navbar-default .navbar-form {\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .open > a:hover,\n.navbar-default .navbar-nav > .open > a:focus {\n background-color: #e7e7e7;\n color: #555555;\n}\n@media (max-width: 767px) {\n .navbar-default .navbar-nav .open .dropdown-menu > li > a {\n color: #777777;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #333333;\n background-color: transparent;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #555555;\n background-color: #e7e7e7;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #cccccc;\n background-color: transparent;\n }\n}\n.navbar-default .navbar-link {\n color: #777777;\n}\n.navbar-default .navbar-link:hover {\n color: #333333;\n}\n.navbar-default .btn-link {\n color: #777777;\n}\n.navbar-default .btn-link:hover,\n.navbar-default .btn-link:focus {\n color: #333333;\n}\n.navbar-default .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-default .btn-link:hover,\n.navbar-default .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-default .btn-link:focus {\n color: #cccccc;\n}\n.navbar-inverse {\n background-color: #222222;\n border-color: #080808;\n}\n.navbar-inverse .navbar-brand {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-brand:hover,\n.navbar-inverse .navbar-brand:focus {\n color: #ffffff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-text {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a:hover,\n.navbar-inverse .navbar-nav > li > a:focus {\n color: #ffffff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .active > a,\n.navbar-inverse .navbar-nav > .active > a:hover,\n.navbar-inverse .navbar-nav > .active > a:focus {\n color: #ffffff;\n background-color: #080808;\n}\n.navbar-inverse .navbar-nav > .disabled > a,\n.navbar-inverse .navbar-nav > .disabled > a:hover,\n.navbar-inverse .navbar-nav > .disabled > a:focus {\n color: #444444;\n background-color: transparent;\n}\n.navbar-inverse .navbar-toggle {\n border-color: #333333;\n}\n.navbar-inverse .navbar-toggle:hover,\n.navbar-inverse .navbar-toggle:focus {\n background-color: #333333;\n}\n.navbar-inverse .navbar-toggle .icon-bar {\n background-color: #ffffff;\n}\n.navbar-inverse .navbar-collapse,\n.navbar-inverse .navbar-form {\n border-color: #101010;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .open > a:hover,\n.navbar-inverse .navbar-nav > .open > a:focus {\n background-color: #080808;\n color: #ffffff;\n}\n@media (max-width: 767px) {\n .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {\n border-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu .divider {\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {\n color: #9d9d9d;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #ffffff;\n background-color: transparent;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #ffffff;\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #444444;\n background-color: transparent;\n }\n}\n.navbar-inverse .navbar-link {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-link:hover {\n color: #ffffff;\n}\n.navbar-inverse .btn-link {\n color: #9d9d9d;\n}\n.navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link:focus {\n color: #ffffff;\n}\n.navbar-inverse .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-inverse .btn-link:focus {\n color: #444444;\n}\n.breadcrumb {\n padding: 8px 15px;\n margin-bottom: 20px;\n list-style: none;\n background-color: #f5f5f5;\n border-radius: 4px;\n}\n.breadcrumb > li {\n display: inline-block;\n}\n.breadcrumb > li + li:before {\n content: \"/\\00a0\";\n padding: 0 5px;\n color: #cccccc;\n}\n.breadcrumb > .active {\n color: #777777;\n}\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: 20px 0;\n border-radius: 4px;\n}\n.pagination > li {\n display: inline;\n}\n.pagination > li > a,\n.pagination > li > span {\n position: relative;\n float: left;\n padding: 6px 12px;\n line-height: 1.42857143;\n text-decoration: none;\n color: #337ab7;\n background-color: #ffffff;\n border: 1px solid #dddddd;\n margin-left: -1px;\n}\n.pagination > li:first-child > a,\n.pagination > li:first-child > span {\n margin-left: 0;\n border-bottom-left-radius: 4px;\n border-top-left-radius: 4px;\n}\n.pagination > li:last-child > a,\n.pagination > li:last-child > span {\n border-bottom-right-radius: 4px;\n border-top-right-radius: 4px;\n}\n.pagination > li > a:hover,\n.pagination > li > span:hover,\n.pagination > li > a:focus,\n.pagination > li > span:focus {\n z-index: 3;\n color: #23527c;\n background-color: #eeeeee;\n border-color: #dddddd;\n}\n.pagination > .active > a,\n.pagination > .active > span,\n.pagination > .active > a:hover,\n.pagination > .active > span:hover,\n.pagination > .active > a:focus,\n.pagination > .active > span:focus {\n z-index: 2;\n color: #ffffff;\n background-color: #337ab7;\n border-color: #337ab7;\n cursor: default;\n}\n.pagination > .disabled > span,\n.pagination > .disabled > span:hover,\n.pagination > .disabled > span:focus,\n.pagination > .disabled > a,\n.pagination > .disabled > a:hover,\n.pagination > .disabled > a:focus {\n color: #777777;\n background-color: #ffffff;\n border-color: #dddddd;\n cursor: not-allowed;\n}\n.pagination-lg > li > a,\n.pagination-lg > li > span {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.pagination-lg > li:first-child > a,\n.pagination-lg > li:first-child > span {\n border-bottom-left-radius: 6px;\n border-top-left-radius: 6px;\n}\n.pagination-lg > li:last-child > a,\n.pagination-lg > li:last-child > span {\n border-bottom-right-radius: 6px;\n border-top-right-radius: 6px;\n}\n.pagination-sm > li > a,\n.pagination-sm > li > span {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.pagination-sm > li:first-child > a,\n.pagination-sm > li:first-child > span {\n border-bottom-left-radius: 3px;\n border-top-left-radius: 3px;\n}\n.pagination-sm > li:last-child > a,\n.pagination-sm > li:last-child > span {\n border-bottom-right-radius: 3px;\n border-top-right-radius: 3px;\n}\n.pager {\n padding-left: 0;\n margin: 20px 0;\n list-style: none;\n text-align: center;\n}\n.pager li {\n display: inline;\n}\n.pager li > a,\n.pager li > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: #ffffff;\n border: 1px solid #dddddd;\n border-radius: 15px;\n}\n.pager li > a:hover,\n.pager li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.pager .next > a,\n.pager .next > span {\n float: right;\n}\n.pager .previous > a,\n.pager .previous > span {\n float: left;\n}\n.pager .disabled > a,\n.pager .disabled > a:hover,\n.pager .disabled > a:focus,\n.pager .disabled > span {\n color: #777777;\n background-color: #ffffff;\n cursor: not-allowed;\n}\n.label {\n display: inline;\n padding: .2em .6em .3em;\n font-size: 75%;\n font-weight: bold;\n line-height: 1;\n color: #ffffff;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: .25em;\n}\na.label:hover,\na.label:focus {\n color: #ffffff;\n text-decoration: none;\n cursor: pointer;\n}\n.label:empty {\n display: none;\n}\n.btn .label {\n position: relative;\n top: -1px;\n}\n.label-default {\n background-color: #777777;\n}\n.label-default[href]:hover,\n.label-default[href]:focus {\n background-color: #5e5e5e;\n}\n.label-primary {\n background-color: #337ab7;\n}\n.label-primary[href]:hover,\n.label-primary[href]:focus {\n background-color: #286090;\n}\n.label-success {\n background-color: #5cb85c;\n}\n.label-success[href]:hover,\n.label-success[href]:focus {\n background-color: #449d44;\n}\n.label-info {\n background-color: #5bc0de;\n}\n.label-info[href]:hover,\n.label-info[href]:focus {\n background-color: #31b0d5;\n}\n.label-warning {\n background-color: #f0ad4e;\n}\n.label-warning[href]:hover,\n.label-warning[href]:focus {\n background-color: #ec971f;\n}\n.label-danger {\n background-color: #d9534f;\n}\n.label-danger[href]:hover,\n.label-danger[href]:focus {\n background-color: #c9302c;\n}\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: 12px;\n font-weight: bold;\n color: #ffffff;\n line-height: 1;\n vertical-align: middle;\n white-space: nowrap;\n text-align: center;\n background-color: #777777;\n border-radius: 10px;\n}\n.badge:empty {\n display: none;\n}\n.btn .badge {\n position: relative;\n top: -1px;\n}\n.btn-xs .badge,\n.btn-group-xs > .btn .badge {\n top: 0;\n padding: 1px 5px;\n}\na.badge:hover,\na.badge:focus {\n color: #ffffff;\n text-decoration: none;\n cursor: pointer;\n}\n.list-group-item.active > .badge,\n.nav-pills > .active > a > .badge {\n color: #337ab7;\n background-color: #ffffff;\n}\n.list-group-item > .badge {\n float: right;\n}\n.list-group-item > .badge + .badge {\n margin-right: 5px;\n}\n.nav-pills > li > a > .badge {\n margin-left: 3px;\n}\n.jumbotron {\n padding-top: 30px;\n padding-bottom: 30px;\n margin-bottom: 30px;\n color: inherit;\n background-color: #eeeeee;\n}\n.jumbotron h1,\n.jumbotron .h1 {\n color: inherit;\n}\n.jumbotron p {\n margin-bottom: 15px;\n font-size: 21px;\n font-weight: 200;\n}\n.jumbotron > hr {\n border-top-color: #d5d5d5;\n}\n.container .jumbotron,\n.container-fluid .jumbotron {\n border-radius: 6px;\n}\n.jumbotron .container {\n max-width: 100%;\n}\n@media screen and (min-width: 768px) {\n .jumbotron {\n padding-top: 48px;\n padding-bottom: 48px;\n }\n .container .jumbotron,\n .container-fluid .jumbotron {\n padding-left: 60px;\n padding-right: 60px;\n }\n .jumbotron h1,\n .jumbotron .h1 {\n font-size: 63px;\n }\n}\n.thumbnail {\n display: block;\n padding: 4px;\n margin-bottom: 20px;\n line-height: 1.42857143;\n background-color: #ffffff;\n border: 1px solid #dddddd;\n border-radius: 4px;\n -webkit-transition: border 0.2s ease-in-out;\n -o-transition: border 0.2s ease-in-out;\n transition: border 0.2s ease-in-out;\n}\n.thumbnail > img,\n.thumbnail a > img {\n margin-left: auto;\n margin-right: auto;\n}\na.thumbnail:hover,\na.thumbnail:focus,\na.thumbnail.active {\n border-color: #337ab7;\n}\n.thumbnail .caption {\n padding: 9px;\n color: #333333;\n}\n.alert {\n padding: 15px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.alert h4 {\n margin-top: 0;\n color: inherit;\n}\n.alert .alert-link {\n font-weight: bold;\n}\n.alert > p,\n.alert > ul {\n margin-bottom: 0;\n}\n.alert > p + p {\n margin-top: 5px;\n}\n.alert-dismissable,\n.alert-dismissible {\n padding-right: 35px;\n}\n.alert-dismissable .close,\n.alert-dismissible .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n}\n.alert-success {\n background-color: #dff0d8;\n border-color: #d6e9c6;\n color: #3c763d;\n}\n.alert-success hr {\n border-top-color: #c9e2b3;\n}\n.alert-success .alert-link {\n color: #2b542c;\n}\n.alert-info {\n background-color: #d9edf7;\n border-color: #bce8f1;\n color: #31708f;\n}\n.alert-info hr {\n border-top-color: #a6e1ec;\n}\n.alert-info .alert-link {\n color: #245269;\n}\n.alert-warning {\n background-color: #fcf8e3;\n border-color: #faebcc;\n color: #8a6d3b;\n}\n.alert-warning hr {\n border-top-color: #f7e1b5;\n}\n.alert-warning .alert-link {\n color: #66512c;\n}\n.alert-danger {\n background-color: #f2dede;\n border-color: #ebccd1;\n color: #a94442;\n}\n.alert-danger hr {\n border-top-color: #e4b9c0;\n}\n.alert-danger .alert-link {\n color: #843534;\n}\n@-webkit-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n.progress {\n overflow: hidden;\n height: 20px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n}\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: 12px;\n line-height: 20px;\n color: #ffffff;\n text-align: center;\n background-color: #337ab7;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n -webkit-transition: width 0.6s ease;\n -o-transition: width 0.6s ease;\n transition: width 0.6s ease;\n}\n.progress-striped .progress-bar,\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: 40px 40px;\n}\n.progress.active .progress-bar,\n.progress-bar.active {\n -webkit-animation: progress-bar-stripes 2s linear infinite;\n -o-animation: progress-bar-stripes 2s linear infinite;\n animation: progress-bar-stripes 2s linear infinite;\n}\n.progress-bar-success {\n background-color: #5cb85c;\n}\n.progress-striped .progress-bar-success {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-info {\n background-color: #5bc0de;\n}\n.progress-striped .progress-bar-info {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-warning {\n background-color: #f0ad4e;\n}\n.progress-striped .progress-bar-warning {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-danger {\n background-color: #d9534f;\n}\n.progress-striped .progress-bar-danger {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.media {\n margin-top: 15px;\n}\n.media:first-child {\n margin-top: 0;\n}\n.media,\n.media-body {\n zoom: 1;\n overflow: hidden;\n}\n.media-body {\n width: 10000px;\n}\n.media-object {\n display: block;\n}\n.media-object.img-thumbnail {\n max-width: none;\n}\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n.media-middle {\n vertical-align: middle;\n}\n.media-bottom {\n vertical-align: bottom;\n}\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n.list-group {\n margin-bottom: 20px;\n padding-left: 0;\n}\n.list-group-item {\n position: relative;\n display: block;\n padding: 10px 15px;\n margin-bottom: -1px;\n background-color: #ffffff;\n border: 1px solid #dddddd;\n}\n.list-group-item:first-child {\n border-top-right-radius: 4px;\n border-top-left-radius: 4px;\n}\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\na.list-group-item,\nbutton.list-group-item {\n color: #555555;\n}\na.list-group-item .list-group-item-heading,\nbutton.list-group-item .list-group-item-heading {\n color: #333333;\n}\na.list-group-item:hover,\nbutton.list-group-item:hover,\na.list-group-item:focus,\nbutton.list-group-item:focus {\n text-decoration: none;\n color: #555555;\n background-color: #f5f5f5;\n}\nbutton.list-group-item {\n width: 100%;\n text-align: left;\n}\n.list-group-item.disabled,\n.list-group-item.disabled:hover,\n.list-group-item.disabled:focus {\n background-color: #eeeeee;\n color: #777777;\n cursor: not-allowed;\n}\n.list-group-item.disabled .list-group-item-heading,\n.list-group-item.disabled:hover .list-group-item-heading,\n.list-group-item.disabled:focus .list-group-item-heading {\n color: inherit;\n}\n.list-group-item.disabled .list-group-item-text,\n.list-group-item.disabled:hover .list-group-item-text,\n.list-group-item.disabled:focus .list-group-item-text {\n color: #777777;\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n z-index: 2;\n color: #ffffff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.list-group-item.active .list-group-item-heading,\n.list-group-item.active:hover .list-group-item-heading,\n.list-group-item.active:focus .list-group-item-heading,\n.list-group-item.active .list-group-item-heading > small,\n.list-group-item.active:hover .list-group-item-heading > small,\n.list-group-item.active:focus .list-group-item-heading > small,\n.list-group-item.active .list-group-item-heading > .small,\n.list-group-item.active:hover .list-group-item-heading > .small,\n.list-group-item.active:focus .list-group-item-heading > .small {\n color: inherit;\n}\n.list-group-item.active .list-group-item-text,\n.list-group-item.active:hover .list-group-item-text,\n.list-group-item.active:focus .list-group-item-text {\n color: #c7ddef;\n}\n.list-group-item-success {\n color: #3c763d;\n background-color: #dff0d8;\n}\na.list-group-item-success,\nbutton.list-group-item-success {\n color: #3c763d;\n}\na.list-group-item-success .list-group-item-heading,\nbutton.list-group-item-success .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-success:hover,\nbutton.list-group-item-success:hover,\na.list-group-item-success:focus,\nbutton.list-group-item-success:focus {\n color: #3c763d;\n background-color: #d0e9c6;\n}\na.list-group-item-success.active,\nbutton.list-group-item-success.active,\na.list-group-item-success.active:hover,\nbutton.list-group-item-success.active:hover,\na.list-group-item-success.active:focus,\nbutton.list-group-item-success.active:focus {\n color: #fff;\n background-color: #3c763d;\n border-color: #3c763d;\n}\n.list-group-item-info {\n color: #31708f;\n background-color: #d9edf7;\n}\na.list-group-item-info,\nbutton.list-group-item-info {\n color: #31708f;\n}\na.list-group-item-info .list-group-item-heading,\nbutton.list-group-item-info .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-info:hover,\nbutton.list-group-item-info:hover,\na.list-group-item-info:focus,\nbutton.list-group-item-info:focus {\n color: #31708f;\n background-color: #c4e3f3;\n}\na.list-group-item-info.active,\nbutton.list-group-item-info.active,\na.list-group-item-info.active:hover,\nbutton.list-group-item-info.active:hover,\na.list-group-item-info.active:focus,\nbutton.list-group-item-info.active:focus {\n color: #fff;\n background-color: #31708f;\n border-color: #31708f;\n}\n.list-group-item-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n}\na.list-group-item-warning,\nbutton.list-group-item-warning {\n color: #8a6d3b;\n}\na.list-group-item-warning .list-group-item-heading,\nbutton.list-group-item-warning .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-warning:hover,\nbutton.list-group-item-warning:hover,\na.list-group-item-warning:focus,\nbutton.list-group-item-warning:focus {\n color: #8a6d3b;\n background-color: #faf2cc;\n}\na.list-group-item-warning.active,\nbutton.list-group-item-warning.active,\na.list-group-item-warning.active:hover,\nbutton.list-group-item-warning.active:hover,\na.list-group-item-warning.active:focus,\nbutton.list-group-item-warning.active:focus {\n color: #fff;\n background-color: #8a6d3b;\n border-color: #8a6d3b;\n}\n.list-group-item-danger {\n color: #a94442;\n background-color: #f2dede;\n}\na.list-group-item-danger,\nbutton.list-group-item-danger {\n color: #a94442;\n}\na.list-group-item-danger .list-group-item-heading,\nbutton.list-group-item-danger .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-danger:hover,\nbutton.list-group-item-danger:hover,\na.list-group-item-danger:focus,\nbutton.list-group-item-danger:focus {\n color: #a94442;\n background-color: #ebcccc;\n}\na.list-group-item-danger.active,\nbutton.list-group-item-danger.active,\na.list-group-item-danger.active:hover,\nbutton.list-group-item-danger.active:hover,\na.list-group-item-danger.active:focus,\nbutton.list-group-item-danger.active:focus {\n color: #fff;\n background-color: #a94442;\n border-color: #a94442;\n}\n.list-group-item-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.list-group-item-text {\n margin-bottom: 0;\n line-height: 1.3;\n}\n.panel {\n margin-bottom: 20px;\n background-color: #ffffff;\n border: 1px solid transparent;\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.panel-body {\n padding: 15px;\n}\n.panel-heading {\n padding: 10px 15px;\n border-bottom: 1px solid transparent;\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n.panel-heading > .dropdown .dropdown-toggle {\n color: inherit;\n}\n.panel-title {\n margin-top: 0;\n margin-bottom: 0;\n font-size: 16px;\n color: inherit;\n}\n.panel-title > a,\n.panel-title > small,\n.panel-title > .small,\n.panel-title > small > a,\n.panel-title > .small > a {\n color: inherit;\n}\n.panel-footer {\n padding: 10px 15px;\n background-color: #f5f5f5;\n border-top: 1px solid #dddddd;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .list-group,\n.panel > .panel-collapse > .list-group {\n margin-bottom: 0;\n}\n.panel > .list-group .list-group-item,\n.panel > .panel-collapse > .list-group .list-group-item {\n border-width: 1px 0;\n border-radius: 0;\n}\n.panel > .list-group:first-child .list-group-item:first-child,\n.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {\n border-top: 0;\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n.panel > .list-group:last-child .list-group-item:last-child,\n.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {\n border-bottom: 0;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n.panel-heading + .list-group .list-group-item:first-child {\n border-top-width: 0;\n}\n.list-group + .panel-footer {\n border-top-width: 0;\n}\n.panel > .table,\n.panel > .table-responsive > .table,\n.panel > .panel-collapse > .table {\n margin-bottom: 0;\n}\n.panel > .table caption,\n.panel > .table-responsive > .table caption,\n.panel > .panel-collapse > .table caption {\n padding-left: 15px;\n padding-right: 15px;\n}\n.panel > .table:first-child,\n.panel > .table-responsive:first-child > .table:first-child {\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {\n border-top-right-radius: 3px;\n}\n.panel > .table:last-child,\n.panel > .table-responsive:last-child > .table:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {\n border-bottom-left-radius: 3px;\n border-bottom-right-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {\n border-bottom-right-radius: 3px;\n}\n.panel > .panel-body + .table,\n.panel > .panel-body + .table-responsive,\n.panel > .table + .panel-body,\n.panel > .table-responsive + .panel-body {\n border-top: 1px solid #dddddd;\n}\n.panel > .table > tbody:first-child > tr:first-child th,\n.panel > .table > tbody:first-child > tr:first-child td {\n border-top: 0;\n}\n.panel > .table-bordered,\n.panel > .table-responsive > .table-bordered {\n border: 0;\n}\n.panel > .table-bordered > thead > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,\n.panel > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-bordered > thead > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,\n.panel > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-bordered > tfoot > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n}\n.panel > .table-bordered > thead > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,\n.panel > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-bordered > thead > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,\n.panel > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-bordered > tfoot > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n}\n.panel > .table-bordered > thead > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,\n.panel > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-bordered > thead > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,\n.panel > .table-bordered > tbody > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {\n border-bottom: 0;\n}\n.panel > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-bordered > tfoot > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {\n border-bottom: 0;\n}\n.panel > .table-responsive {\n border: 0;\n margin-bottom: 0;\n}\n.panel-group {\n margin-bottom: 20px;\n}\n.panel-group .panel {\n margin-bottom: 0;\n border-radius: 4px;\n}\n.panel-group .panel + .panel {\n margin-top: 5px;\n}\n.panel-group .panel-heading {\n border-bottom: 0;\n}\n.panel-group .panel-heading + .panel-collapse > .panel-body,\n.panel-group .panel-heading + .panel-collapse > .list-group {\n border-top: 1px solid #dddddd;\n}\n.panel-group .panel-footer {\n border-top: 0;\n}\n.panel-group .panel-footer + .panel-collapse .panel-body {\n border-bottom: 1px solid #dddddd;\n}\n.panel-default {\n border-color: #dddddd;\n}\n.panel-default > .panel-heading {\n color: #333333;\n background-color: #f5f5f5;\n border-color: #dddddd;\n}\n.panel-default > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #dddddd;\n}\n.panel-default > .panel-heading .badge {\n color: #f5f5f5;\n background-color: #333333;\n}\n.panel-default > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #dddddd;\n}\n.panel-primary {\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading {\n color: #ffffff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #337ab7;\n}\n.panel-primary > .panel-heading .badge {\n color: #337ab7;\n background-color: #ffffff;\n}\n.panel-primary > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #337ab7;\n}\n.panel-success {\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #d6e9c6;\n}\n.panel-success > .panel-heading .badge {\n color: #dff0d8;\n background-color: #3c763d;\n}\n.panel-success > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #d6e9c6;\n}\n.panel-info {\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #bce8f1;\n}\n.panel-info > .panel-heading .badge {\n color: #d9edf7;\n background-color: #31708f;\n}\n.panel-info > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #bce8f1;\n}\n.panel-warning {\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #faebcc;\n}\n.panel-warning > .panel-heading .badge {\n color: #fcf8e3;\n background-color: #8a6d3b;\n}\n.panel-warning > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #faebcc;\n}\n.panel-danger {\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ebccd1;\n}\n.panel-danger > .panel-heading .badge {\n color: #f2dede;\n background-color: #a94442;\n}\n.panel-danger > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ebccd1;\n}\n.embed-responsive {\n position: relative;\n display: block;\n height: 0;\n padding: 0;\n overflow: hidden;\n}\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n height: 100%;\n width: 100%;\n border: 0;\n}\n.embed-responsive-16by9 {\n padding-bottom: 56.25%;\n}\n.embed-responsive-4by3 {\n padding-bottom: 75%;\n}\n.well {\n min-height: 20px;\n padding: 19px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border: 1px solid #e3e3e3;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.well blockquote {\n border-color: #ddd;\n border-color: rgba(0, 0, 0, 0.15);\n}\n.well-lg {\n padding: 24px;\n border-radius: 6px;\n}\n.well-sm {\n padding: 9px;\n border-radius: 3px;\n}\n.close {\n float: right;\n font-size: 21px;\n font-weight: bold;\n line-height: 1;\n color: #000000;\n text-shadow: 0 1px 0 #ffffff;\n opacity: 0.2;\n filter: alpha(opacity=20);\n}\n.close:hover,\n.close:focus {\n color: #000000;\n text-decoration: none;\n cursor: pointer;\n opacity: 0.5;\n filter: alpha(opacity=50);\n}\nbutton.close {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n}\n.modal-open {\n overflow: hidden;\n}\n.modal {\n display: none;\n overflow: hidden;\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1050;\n -webkit-overflow-scrolling: touch;\n outline: 0;\n}\n.modal.fade .modal-dialog {\n -webkit-transform: translate(0, -25%);\n -ms-transform: translate(0, -25%);\n -o-transform: translate(0, -25%);\n transform: translate(0, -25%);\n -webkit-transition: -webkit-transform 0.3s ease-out;\n -moz-transition: -moz-transform 0.3s ease-out;\n -o-transition: -o-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n}\n.modal.in .modal-dialog {\n -webkit-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n -o-transform: translate(0, 0);\n transform: translate(0, 0);\n}\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 10px;\n}\n.modal-content {\n position: relative;\n background-color: #ffffff;\n border: 1px solid #999999;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n background-clip: padding-box;\n outline: 0;\n}\n.modal-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1040;\n background-color: #000000;\n}\n.modal-backdrop.fade {\n opacity: 0;\n filter: alpha(opacity=0);\n}\n.modal-backdrop.in {\n opacity: 0.5;\n filter: alpha(opacity=50);\n}\n.modal-header {\n padding: 15px;\n border-bottom: 1px solid #e5e5e5;\n min-height: 16.42857143px;\n}\n.modal-header .close {\n margin-top: -2px;\n}\n.modal-title {\n margin: 0;\n line-height: 1.42857143;\n}\n.modal-body {\n position: relative;\n padding: 15px;\n}\n.modal-footer {\n padding: 15px;\n text-align: right;\n border-top: 1px solid #e5e5e5;\n}\n.modal-footer .btn + .btn {\n margin-left: 5px;\n margin-bottom: 0;\n}\n.modal-footer .btn-group .btn + .btn {\n margin-left: -1px;\n}\n.modal-footer .btn-block + .btn-block {\n margin-left: 0;\n}\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n@media (min-width: 768px) {\n .modal-dialog {\n width: 600px;\n margin: 30px auto;\n }\n .modal-content {\n -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n }\n .modal-sm {\n width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg {\n width: 900px;\n }\n}\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: normal;\n letter-spacing: normal;\n line-break: auto;\n line-height: 1.42857143;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n white-space: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n font-size: 12px;\n opacity: 0;\n filter: alpha(opacity=0);\n}\n.tooltip.in {\n opacity: 0.9;\n filter: alpha(opacity=90);\n}\n.tooltip.top {\n margin-top: -3px;\n padding: 5px 0;\n}\n.tooltip.right {\n margin-left: 3px;\n padding: 0 5px;\n}\n.tooltip.bottom {\n margin-top: 3px;\n padding: 5px 0;\n}\n.tooltip.left {\n margin-left: -3px;\n padding: 0 5px;\n}\n.tooltip-inner {\n max-width: 200px;\n padding: 3px 8px;\n color: #ffffff;\n text-align: center;\n background-color: #000000;\n border-radius: 4px;\n}\n.tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.tooltip.top .tooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000000;\n}\n.tooltip.top-left .tooltip-arrow {\n bottom: 0;\n right: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000000;\n}\n.tooltip.top-right .tooltip-arrow {\n bottom: 0;\n left: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000000;\n}\n.tooltip.right .tooltip-arrow {\n top: 50%;\n left: 0;\n margin-top: -5px;\n border-width: 5px 5px 5px 0;\n border-right-color: #000000;\n}\n.tooltip.left .tooltip-arrow {\n top: 50%;\n right: 0;\n margin-top: -5px;\n border-width: 5px 0 5px 5px;\n border-left-color: #000000;\n}\n.tooltip.bottom .tooltip-arrow {\n top: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000000;\n}\n.tooltip.bottom-left .tooltip-arrow {\n top: 0;\n right: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000000;\n}\n.tooltip.bottom-right .tooltip-arrow {\n top: 0;\n left: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000000;\n}\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: none;\n max-width: 276px;\n padding: 1px;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: normal;\n letter-spacing: normal;\n line-break: auto;\n line-height: 1.42857143;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n white-space: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n font-size: 14px;\n background-color: #ffffff;\n background-clip: padding-box;\n border: 1px solid #cccccc;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n}\n.popover.top {\n margin-top: -10px;\n}\n.popover.right {\n margin-left: 10px;\n}\n.popover.bottom {\n margin-top: 10px;\n}\n.popover.left {\n margin-left: -10px;\n}\n.popover-title {\n margin: 0;\n padding: 8px 14px;\n font-size: 14px;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-radius: 5px 5px 0 0;\n}\n.popover-content {\n padding: 9px 14px;\n}\n.popover > .arrow,\n.popover > .arrow:after {\n position: absolute;\n display: block;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover > .arrow {\n border-width: 11px;\n}\n.popover > .arrow:after {\n border-width: 10px;\n content: \"\";\n}\n.popover.top > .arrow {\n left: 50%;\n margin-left: -11px;\n border-bottom-width: 0;\n border-top-color: #999999;\n border-top-color: rgba(0, 0, 0, 0.25);\n bottom: -11px;\n}\n.popover.top > .arrow:after {\n content: \" \";\n bottom: 1px;\n margin-left: -10px;\n border-bottom-width: 0;\n border-top-color: #ffffff;\n}\n.popover.right > .arrow {\n top: 50%;\n left: -11px;\n margin-top: -11px;\n border-left-width: 0;\n border-right-color: #999999;\n border-right-color: rgba(0, 0, 0, 0.25);\n}\n.popover.right > .arrow:after {\n content: \" \";\n left: 1px;\n bottom: -10px;\n border-left-width: 0;\n border-right-color: #ffffff;\n}\n.popover.bottom > .arrow {\n left: 50%;\n margin-left: -11px;\n border-top-width: 0;\n border-bottom-color: #999999;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n top: -11px;\n}\n.popover.bottom > .arrow:after {\n content: \" \";\n top: 1px;\n margin-left: -10px;\n border-top-width: 0;\n border-bottom-color: #ffffff;\n}\n.popover.left > .arrow {\n top: 50%;\n right: -11px;\n margin-top: -11px;\n border-right-width: 0;\n border-left-color: #999999;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n.popover.left > .arrow:after {\n content: \" \";\n right: 1px;\n border-right-width: 0;\n border-left-color: #ffffff;\n bottom: -10px;\n}\n.carousel {\n position: relative;\n}\n.carousel-inner {\n position: relative;\n overflow: hidden;\n width: 100%;\n}\n.carousel-inner > .item {\n display: none;\n position: relative;\n -webkit-transition: 0.6s ease-in-out left;\n -o-transition: 0.6s ease-in-out left;\n transition: 0.6s ease-in-out left;\n}\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n line-height: 1;\n}\n@media all and (transform-3d), (-webkit-transform-3d) {\n .carousel-inner > .item {\n -webkit-transition: -webkit-transform 0.6s ease-in-out;\n -moz-transition: -moz-transform 0.6s ease-in-out;\n -o-transition: -o-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n -webkit-backface-visibility: hidden;\n -moz-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-perspective: 1000px;\n -moz-perspective: 1000px;\n perspective: 1000px;\n }\n .carousel-inner > .item.next,\n .carousel-inner > .item.active.right {\n -webkit-transform: translate3d(100%, 0, 0);\n transform: translate3d(100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.prev,\n .carousel-inner > .item.active.left {\n -webkit-transform: translate3d(-100%, 0, 0);\n transform: translate3d(-100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.next.left,\n .carousel-inner > .item.prev.right,\n .carousel-inner > .item.active {\n -webkit-transform: translate3d(0, 0, 0);\n transform: translate3d(0, 0, 0);\n left: 0;\n }\n}\n.carousel-inner > .active,\n.carousel-inner > .next,\n.carousel-inner > .prev {\n display: block;\n}\n.carousel-inner > .active {\n left: 0;\n}\n.carousel-inner > .next,\n.carousel-inner > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n}\n.carousel-inner > .next {\n left: 100%;\n}\n.carousel-inner > .prev {\n left: -100%;\n}\n.carousel-inner > .next.left,\n.carousel-inner > .prev.right {\n left: 0;\n}\n.carousel-inner > .active.left {\n left: -100%;\n}\n.carousel-inner > .active.right {\n left: 100%;\n}\n.carousel-control {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n width: 15%;\n opacity: 0.5;\n filter: alpha(opacity=50);\n font-size: 20px;\n color: #ffffff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n}\n.carousel-control.left {\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);\n}\n.carousel-control.right {\n left: auto;\n right: 0;\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-repeat: repeat-x;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);\n}\n.carousel-control:hover,\n.carousel-control:focus {\n outline: 0;\n color: #ffffff;\n text-decoration: none;\n opacity: 0.9;\n filter: alpha(opacity=90);\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-left,\n.carousel-control .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n margin-top: -10px;\n z-index: 5;\n display: inline-block;\n}\n.carousel-control .icon-prev,\n.carousel-control .glyphicon-chevron-left {\n left: 50%;\n margin-left: -10px;\n}\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-right {\n right: 50%;\n margin-right: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next {\n width: 20px;\n height: 20px;\n line-height: 1;\n font-family: serif;\n}\n.carousel-control .icon-prev:before {\n content: '\\2039';\n}\n.carousel-control .icon-next:before {\n content: '\\203a';\n}\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n margin-left: -30%;\n padding-left: 0;\n list-style: none;\n text-align: center;\n}\n.carousel-indicators li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n border: 1px solid #ffffff;\n border-radius: 10px;\n cursor: pointer;\n background-color: #000 \\9;\n background-color: rgba(0, 0, 0, 0);\n}\n.carousel-indicators .active {\n margin: 0;\n width: 12px;\n height: 12px;\n background-color: #ffffff;\n}\n.carousel-caption {\n position: absolute;\n left: 15%;\n right: 15%;\n bottom: 20px;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #ffffff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n}\n.carousel-caption .btn {\n text-shadow: none;\n}\n@media screen and (min-width: 768px) {\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-prev,\n .carousel-control .icon-next {\n width: 30px;\n height: 30px;\n margin-top: -15px;\n font-size: 30px;\n }\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .icon-prev {\n margin-left: -15px;\n }\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-next {\n margin-right: -15px;\n }\n .carousel-caption {\n left: 20%;\n right: 20%;\n padding-bottom: 30px;\n }\n .carousel-indicators {\n bottom: 20px;\n }\n}\n.clearfix:before,\n.clearfix:after,\n.dl-horizontal dd:before,\n.dl-horizontal dd:after,\n.container:before,\n.container:after,\n.container-fluid:before,\n.container-fluid:after,\n.row:before,\n.row:after,\n.form-horizontal .form-group:before,\n.form-horizontal .form-group:after,\n.btn-toolbar:before,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:before,\n.btn-group-vertical > .btn-group:after,\n.nav:before,\n.nav:after,\n.navbar:before,\n.navbar:after,\n.navbar-header:before,\n.navbar-header:after,\n.navbar-collapse:before,\n.navbar-collapse:after,\n.pager:before,\n.pager:after,\n.panel-body:before,\n.panel-body:after,\n.modal-footer:before,\n.modal-footer:after {\n content: \" \";\n display: table;\n}\n.clearfix:after,\n.dl-horizontal dd:after,\n.container:after,\n.container-fluid:after,\n.row:after,\n.form-horizontal .form-group:after,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:after,\n.nav:after,\n.navbar:after,\n.navbar-header:after,\n.navbar-collapse:after,\n.pager:after,\n.panel-body:after,\n.modal-footer:after {\n clear: both;\n}\n.center-block {\n display: block;\n margin-left: auto;\n margin-right: auto;\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n.hidden {\n display: none !important;\n}\n.affix {\n position: fixed;\n}\n@-ms-viewport {\n width: device-width;\n}\n.visible-xs,\n.visible-sm,\n.visible-md,\n.visible-lg {\n display: none !important;\n}\n.visible-xs-block,\n.visible-xs-inline,\n.visible-xs-inline-block,\n.visible-sm-block,\n.visible-sm-inline,\n.visible-sm-inline-block,\n.visible-md-block,\n.visible-md-inline,\n.visible-md-inline-block,\n.visible-lg-block,\n.visible-lg-inline,\n.visible-lg-inline-block {\n display: none !important;\n}\n@media (max-width: 767px) {\n .visible-xs {\n display: block !important;\n }\n table.visible-xs {\n display: table !important;\n }\n tr.visible-xs {\n display: table-row !important;\n }\n th.visible-xs,\n td.visible-xs {\n display: table-cell !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-block {\n display: block !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline {\n display: inline !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm {\n display: block !important;\n }\n table.visible-sm {\n display: table !important;\n }\n tr.visible-sm {\n display: table-row !important;\n }\n th.visible-sm,\n td.visible-sm {\n display: table-cell !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-block {\n display: block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline {\n display: inline !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md {\n display: block !important;\n }\n table.visible-md {\n display: table !important;\n }\n tr.visible-md {\n display: table-row !important;\n }\n th.visible-md,\n td.visible-md {\n display: table-cell !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-block {\n display: block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline {\n display: inline !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg {\n display: block !important;\n }\n table.visible-lg {\n display: table !important;\n }\n tr.visible-lg {\n display: table-row !important;\n }\n th.visible-lg,\n td.visible-lg {\n display: table-cell !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-block {\n display: block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline {\n display: inline !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline-block {\n display: inline-block !important;\n }\n}\n@media (max-width: 767px) {\n .hidden-xs {\n display: none !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .hidden-sm {\n display: none !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .hidden-md {\n display: none !important;\n }\n}\n@media (min-width: 1200px) {\n .hidden-lg {\n display: none !important;\n }\n}\n.visible-print {\n display: none !important;\n}\n@media print {\n .visible-print {\n display: block !important;\n }\n table.visible-print {\n display: table !important;\n }\n tr.visible-print {\n display: table-row !important;\n }\n th.visible-print,\n td.visible-print {\n display: table-cell !important;\n }\n}\n.visible-print-block {\n display: none !important;\n}\n@media print {\n .visible-print-block {\n display: block !important;\n }\n}\n.visible-print-inline {\n display: none !important;\n}\n@media print {\n .visible-print-inline {\n display: inline !important;\n }\n}\n.visible-print-inline-block {\n display: none !important;\n}\n@media print {\n .visible-print-inline-block {\n display: inline-block !important;\n }\n}\n@media print {\n .hidden-print {\n display: none !important;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */","/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\n\n//\n// 1. Set default font family to sans-serif.\n// 2. Prevent iOS and IE text size adjust after device orientation change,\n// without disabling user zoom.\n//\n\nhtml {\n font-family: sans-serif; // 1\n -ms-text-size-adjust: 100%; // 2\n -webkit-text-size-adjust: 100%; // 2\n}\n\n//\n// Remove default margin.\n//\n\nbody {\n margin: 0;\n}\n\n// HTML5 display definitions\n// ==========================================================================\n\n//\n// Correct `block` display not defined for any HTML5 element in IE 8/9.\n// Correct `block` display not defined for `details` or `summary` in IE 10/11\n// and Firefox.\n// Correct `block` display not defined for `main` in IE 11.\n//\n\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\n\n//\n// 1. Correct `inline-block` display not defined in IE 8/9.\n// 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\n//\n\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block; // 1\n vertical-align: baseline; // 2\n}\n\n//\n// Prevent modern browsers from displaying `audio` without controls.\n// Remove excess height in iOS 5 devices.\n//\n\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n\n//\n// Address `[hidden]` styling not present in IE 8/9/10.\n// Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.\n//\n\n[hidden],\ntemplate {\n display: none;\n}\n\n// Links\n// ==========================================================================\n\n//\n// Remove the gray background color from active links in IE 10.\n//\n\na {\n background-color: transparent;\n}\n\n//\n// Improve readability of focused elements when they are also in an\n// active/hover state.\n//\n\na:active,\na:hover {\n outline: 0;\n}\n\n// Text-level semantics\n// ==========================================================================\n\n//\n// Address styling not present in IE 8/9/10/11, Safari, and Chrome.\n//\n\nabbr[title] {\n border-bottom: 1px dotted;\n}\n\n//\n// Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\n//\n\nb,\nstrong {\n font-weight: bold;\n}\n\n//\n// Address styling not present in Safari and Chrome.\n//\n\ndfn {\n font-style: italic;\n}\n\n//\n// Address variable `h1` font-size and margin within `section` and `article`\n// contexts in Firefox 4+, Safari, and Chrome.\n//\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n//\n// Address styling not present in IE 8/9.\n//\n\nmark {\n background: #ff0;\n color: #000;\n}\n\n//\n// Address inconsistent and variable font size in all browsers.\n//\n\nsmall {\n font-size: 80%;\n}\n\n//\n// Prevent `sub` and `sup` affecting `line-height` in all browsers.\n//\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsup {\n top: -0.5em;\n}\n\nsub {\n bottom: -0.25em;\n}\n\n// Embedded content\n// ==========================================================================\n\n//\n// Remove border when inside `a` element in IE 8/9/10.\n//\n\nimg {\n border: 0;\n}\n\n//\n// Correct overflow not hidden in IE 9/10/11.\n//\n\nsvg:not(:root) {\n overflow: hidden;\n}\n\n// Grouping content\n// ==========================================================================\n\n//\n// Address margin not present in IE 8/9 and Safari.\n//\n\nfigure {\n margin: 1em 40px;\n}\n\n//\n// Address differences between Firefox and other browsers.\n//\n\nhr {\n box-sizing: content-box;\n height: 0;\n}\n\n//\n// Contain overflow in all browsers.\n//\n\npre {\n overflow: auto;\n}\n\n//\n// Address odd `em`-unit font size rendering in all browsers.\n//\n\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\n\n// Forms\n// ==========================================================================\n\n//\n// Known limitation: by default, Chrome and Safari on OS X allow very limited\n// styling of `select`, unless a `border` property is set.\n//\n\n//\n// 1. Correct color not being inherited.\n// Known issue: affects color of disabled elements.\n// 2. Correct font properties not being inherited.\n// 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n//\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit; // 1\n font: inherit; // 2\n margin: 0; // 3\n}\n\n//\n// Address `overflow` set to `hidden` in IE 8/9/10/11.\n//\n\nbutton {\n overflow: visible;\n}\n\n//\n// Address inconsistent `text-transform` inheritance for `button` and `select`.\n// All other form control elements do not inherit `text-transform` values.\n// Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.\n// Correct `select` style inheritance in Firefox.\n//\n\nbutton,\nselect {\n text-transform: none;\n}\n\n//\n// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n// and `video` controls.\n// 2. Correct inability to style clickable `input` types in iOS.\n// 3. Improve usability and consistency of cursor style between image-type\n// `input` and others.\n//\n\nbutton,\nhtml input[type=\"button\"], // 1\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button; // 2\n cursor: pointer; // 3\n}\n\n//\n// Re-set default cursor for disabled elements.\n//\n\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n//\n// Remove inner padding and border in Firefox 4+.\n//\n\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\n\n//\n// Address Firefox 4+ setting `line-height` on `input` using `!important` in\n// the UA stylesheet.\n//\n\ninput {\n line-height: normal;\n}\n\n//\n// It's recommended that you don't attempt to style these elements.\n// Firefox's implementation doesn't respect box-sizing, padding, or width.\n//\n// 1. Address box sizing set to `content-box` in IE 8/9/10.\n// 2. Remove excess padding in IE 8/9/10.\n//\n\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; // 1\n padding: 0; // 2\n}\n\n//\n// Fix the cursor style for Chrome's increment/decrement buttons. For certain\n// `font-size` values of the `input`, it causes the cursor style of the\n// decrement button to change from `default` to `text`.\n//\n\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n//\n// 1. Address `appearance` set to `searchfield` in Safari and Chrome.\n// 2. Address `box-sizing` set to `border-box` in Safari and Chrome.\n//\n\ninput[type=\"search\"] {\n -webkit-appearance: textfield; // 1\n box-sizing: content-box; //2\n}\n\n//\n// Remove inner padding and search cancel button in Safari and Chrome on OS X.\n// Safari (but not Chrome) clips the cancel button when the search input has\n// padding (and `textfield` appearance).\n//\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n//\n// Define consistent border, margin, and padding.\n//\n\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\n\n//\n// 1. Correct `color` not being inherited in IE 8/9/10/11.\n// 2. Remove padding so people aren't caught out if they zero out fieldsets.\n//\n\nlegend {\n border: 0; // 1\n padding: 0; // 2\n}\n\n//\n// Remove default vertical scrollbar in IE 8/9/10/11.\n//\n\ntextarea {\n overflow: auto;\n}\n\n//\n// Don't inherit the `font-weight` (applied by a rule above).\n// NOTE: the default cannot safely be changed in Chrome and Safari on OS X.\n//\n\noptgroup {\n font-weight: bold;\n}\n\n// Tables\n// ==========================================================================\n\n//\n// Remove most spacing between table cells.\n//\n\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ntd,\nth {\n padding: 0;\n}\n","/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n\n// ==========================================================================\n// Print styles.\n// Inlined to avoid the additional HTTP request: h5bp.com/r\n// ==========================================================================\n\n@media print {\n *,\n *:before,\n *:after {\n background: transparent !important;\n color: #000 !important; // Black prints faster: h5bp.com/s\n box-shadow: none !important;\n text-shadow: none !important;\n }\n\n a,\n a:visited {\n text-decoration: underline;\n }\n\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n\n // Don't show links that are fragment identifiers,\n // or use the `javascript:` pseudo protocol\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n\n thead {\n display: table-header-group; // h5bp.com/t\n }\n\n tr,\n img {\n page-break-inside: avoid;\n }\n\n img {\n max-width: 100% !important;\n }\n\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n\n h2,\n h3 {\n page-break-after: avoid;\n }\n\n // Bootstrap specific changes start\n\n // Bootstrap components\n .navbar {\n display: none;\n }\n .btn,\n .dropup > .btn {\n > .caret {\n border-top-color: #000 !important;\n }\n }\n .label {\n border: 1px solid #000;\n }\n\n .table {\n border-collapse: collapse !important;\n\n td,\n th {\n background-color: #fff !important;\n }\n }\n .table-bordered {\n th,\n td {\n border: 1px solid #ddd !important;\n }\n }\n\n // Bootstrap specific changes end\n}\n","//\n// Glyphicons for Bootstrap\n//\n// Since icons are fonts, they can be placed anywhere text is placed and are\n// thus automatically sized to match the surrounding child. To use, create an\n// inline element with the appropriate classes, like so:\n//\n// Star\n\n// Import the fonts\n@font-face {\n font-family: 'Glyphicons Halflings';\n src: url('@{icon-font-path}@{icon-font-name}.eot');\n src: url('@{icon-font-path}@{icon-font-name}.eot?#iefix') format('embedded-opentype'),\n url('@{icon-font-path}@{icon-font-name}.woff2') format('woff2'),\n url('@{icon-font-path}@{icon-font-name}.woff') format('woff'),\n url('@{icon-font-path}@{icon-font-name}.ttf') format('truetype'),\n url('@{icon-font-path}@{icon-font-name}.svg#@{icon-font-svg-id}') format('svg');\n}\n\n// Catchall baseclass\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: 'Glyphicons Halflings';\n font-style: normal;\n font-weight: normal;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n// Individual icons\n.glyphicon-asterisk { &:before { content: \"\\2a\"; } }\n.glyphicon-plus { &:before { content: \"\\2b\"; } }\n.glyphicon-euro,\n.glyphicon-eur { &:before { content: \"\\20ac\"; } }\n.glyphicon-minus { &:before { content: \"\\2212\"; } }\n.glyphicon-cloud { &:before { content: \"\\2601\"; } }\n.glyphicon-envelope { &:before { content: \"\\2709\"; } }\n.glyphicon-pencil { &:before { content: \"\\270f\"; } }\n.glyphicon-glass { &:before { content: \"\\e001\"; } }\n.glyphicon-music { &:before { content: \"\\e002\"; } }\n.glyphicon-search { &:before { content: \"\\e003\"; } }\n.glyphicon-heart { &:before { content: \"\\e005\"; } }\n.glyphicon-star { &:before { content: \"\\e006\"; } }\n.glyphicon-star-empty { &:before { content: \"\\e007\"; } }\n.glyphicon-user { &:before { content: \"\\e008\"; } }\n.glyphicon-film { &:before { content: \"\\e009\"; } }\n.glyphicon-th-large { &:before { content: \"\\e010\"; } }\n.glyphicon-th { &:before { content: \"\\e011\"; } }\n.glyphicon-th-list { &:before { content: \"\\e012\"; } }\n.glyphicon-ok { &:before { content: \"\\e013\"; } }\n.glyphicon-remove { &:before { content: \"\\e014\"; } }\n.glyphicon-zoom-in { &:before { content: \"\\e015\"; } }\n.glyphicon-zoom-out { &:before { content: \"\\e016\"; } }\n.glyphicon-off { &:before { content: \"\\e017\"; } }\n.glyphicon-signal { &:before { content: \"\\e018\"; } }\n.glyphicon-cog { &:before { content: \"\\e019\"; } }\n.glyphicon-trash { &:before { content: \"\\e020\"; } }\n.glyphicon-home { &:before { content: \"\\e021\"; } }\n.glyphicon-file { &:before { content: \"\\e022\"; } }\n.glyphicon-time { &:before { content: \"\\e023\"; } }\n.glyphicon-road { &:before { content: \"\\e024\"; } }\n.glyphicon-download-alt { &:before { content: \"\\e025\"; } }\n.glyphicon-download { &:before { content: \"\\e026\"; } }\n.glyphicon-upload { &:before { content: \"\\e027\"; } }\n.glyphicon-inbox { &:before { content: \"\\e028\"; } }\n.glyphicon-play-circle { &:before { content: \"\\e029\"; } }\n.glyphicon-repeat { &:before { content: \"\\e030\"; } }\n.glyphicon-refresh { &:before { content: \"\\e031\"; } }\n.glyphicon-list-alt { &:before { content: \"\\e032\"; } }\n.glyphicon-lock { &:before { content: \"\\e033\"; } }\n.glyphicon-flag { &:before { content: \"\\e034\"; } }\n.glyphicon-headphones { &:before { content: \"\\e035\"; } }\n.glyphicon-volume-off { &:before { content: \"\\e036\"; } }\n.glyphicon-volume-down { &:before { content: \"\\e037\"; } }\n.glyphicon-volume-up { &:before { content: \"\\e038\"; } }\n.glyphicon-qrcode { &:before { content: \"\\e039\"; } }\n.glyphicon-barcode { &:before { content: \"\\e040\"; } }\n.glyphicon-tag { &:before { content: \"\\e041\"; } }\n.glyphicon-tags { &:before { content: \"\\e042\"; } }\n.glyphicon-book { &:before { content: \"\\e043\"; } }\n.glyphicon-bookmark { &:before { content: \"\\e044\"; } }\n.glyphicon-print { &:before { content: \"\\e045\"; } }\n.glyphicon-camera { &:before { content: \"\\e046\"; } }\n.glyphicon-font { &:before { content: \"\\e047\"; } }\n.glyphicon-bold { &:before { content: \"\\e048\"; } }\n.glyphicon-italic { &:before { content: \"\\e049\"; } }\n.glyphicon-text-height { &:before { content: \"\\e050\"; } }\n.glyphicon-text-width { &:before { content: \"\\e051\"; } }\n.glyphicon-align-left { &:before { content: \"\\e052\"; } }\n.glyphicon-align-center { &:before { content: \"\\e053\"; } }\n.glyphicon-align-right { &:before { content: \"\\e054\"; } }\n.glyphicon-align-justify { &:before { content: \"\\e055\"; } }\n.glyphicon-list { &:before { content: \"\\e056\"; } }\n.glyphicon-indent-left { &:before { content: \"\\e057\"; } }\n.glyphicon-indent-right { &:before { content: \"\\e058\"; } }\n.glyphicon-facetime-video { &:before { content: \"\\e059\"; } }\n.glyphicon-picture { &:before { content: \"\\e060\"; } }\n.glyphicon-map-marker { &:before { content: \"\\e062\"; } }\n.glyphicon-adjust { &:before { content: \"\\e063\"; } }\n.glyphicon-tint { &:before { content: \"\\e064\"; } }\n.glyphicon-edit { &:before { content: \"\\e065\"; } }\n.glyphicon-share { &:before { content: \"\\e066\"; } }\n.glyphicon-check { &:before { content: \"\\e067\"; } }\n.glyphicon-move { &:before { content: \"\\e068\"; } }\n.glyphicon-step-backward { &:before { content: \"\\e069\"; } }\n.glyphicon-fast-backward { &:before { content: \"\\e070\"; } }\n.glyphicon-backward { &:before { content: \"\\e071\"; } }\n.glyphicon-play { &:before { content: \"\\e072\"; } }\n.glyphicon-pause { &:before { content: \"\\e073\"; } }\n.glyphicon-stop { &:before { content: \"\\e074\"; } }\n.glyphicon-forward { &:before { content: \"\\e075\"; } }\n.glyphicon-fast-forward { &:before { content: \"\\e076\"; } }\n.glyphicon-step-forward { &:before { content: \"\\e077\"; } }\n.glyphicon-eject { &:before { content: \"\\e078\"; } }\n.glyphicon-chevron-left { &:before { content: \"\\e079\"; } }\n.glyphicon-chevron-right { &:before { content: \"\\e080\"; } }\n.glyphicon-plus-sign { &:before { content: \"\\e081\"; } }\n.glyphicon-minus-sign { &:before { content: \"\\e082\"; } }\n.glyphicon-remove-sign { &:before { content: \"\\e083\"; } }\n.glyphicon-ok-sign { &:before { content: \"\\e084\"; } }\n.glyphicon-question-sign { &:before { content: \"\\e085\"; } }\n.glyphicon-info-sign { &:before { content: \"\\e086\"; } }\n.glyphicon-screenshot { &:before { content: \"\\e087\"; } }\n.glyphicon-remove-circle { &:before { content: \"\\e088\"; } }\n.glyphicon-ok-circle { &:before { content: \"\\e089\"; } }\n.glyphicon-ban-circle { &:before { content: \"\\e090\"; } }\n.glyphicon-arrow-left { &:before { content: \"\\e091\"; } }\n.glyphicon-arrow-right { &:before { content: \"\\e092\"; } }\n.glyphicon-arrow-up { &:before { content: \"\\e093\"; } }\n.glyphicon-arrow-down { &:before { content: \"\\e094\"; } }\n.glyphicon-share-alt { &:before { content: \"\\e095\"; } }\n.glyphicon-resize-full { &:before { content: \"\\e096\"; } }\n.glyphicon-resize-small { &:before { content: \"\\e097\"; } }\n.glyphicon-exclamation-sign { &:before { content: \"\\e101\"; } }\n.glyphicon-gift { &:before { content: \"\\e102\"; } }\n.glyphicon-leaf { &:before { content: \"\\e103\"; } }\n.glyphicon-fire { &:before { content: \"\\e104\"; } }\n.glyphicon-eye-open { &:before { content: \"\\e105\"; } }\n.glyphicon-eye-close { &:before { content: \"\\e106\"; } }\n.glyphicon-warning-sign { &:before { content: \"\\e107\"; } }\n.glyphicon-plane { &:before { content: \"\\e108\"; } }\n.glyphicon-calendar { &:before { content: \"\\e109\"; } }\n.glyphicon-random { &:before { content: \"\\e110\"; } }\n.glyphicon-comment { &:before { content: \"\\e111\"; } }\n.glyphicon-magnet { &:before { content: \"\\e112\"; } }\n.glyphicon-chevron-up { &:before { content: \"\\e113\"; } }\n.glyphicon-chevron-down { &:before { content: \"\\e114\"; } }\n.glyphicon-retweet { &:before { content: \"\\e115\"; } }\n.glyphicon-shopping-cart { &:before { content: \"\\e116\"; } }\n.glyphicon-folder-close { &:before { content: \"\\e117\"; } }\n.glyphicon-folder-open { &:before { content: \"\\e118\"; } }\n.glyphicon-resize-vertical { &:before { content: \"\\e119\"; } }\n.glyphicon-resize-horizontal { &:before { content: \"\\e120\"; } }\n.glyphicon-hdd { &:before { content: \"\\e121\"; } }\n.glyphicon-bullhorn { &:before { content: \"\\e122\"; } }\n.glyphicon-bell { &:before { content: \"\\e123\"; } }\n.glyphicon-certificate { &:before { content: \"\\e124\"; } }\n.glyphicon-thumbs-up { &:before { content: \"\\e125\"; } }\n.glyphicon-thumbs-down { &:before { content: \"\\e126\"; } }\n.glyphicon-hand-right { &:before { content: \"\\e127\"; } }\n.glyphicon-hand-left { &:before { content: \"\\e128\"; } }\n.glyphicon-hand-up { &:before { content: \"\\e129\"; } }\n.glyphicon-hand-down { &:before { content: \"\\e130\"; } }\n.glyphicon-circle-arrow-right { &:before { content: \"\\e131\"; } }\n.glyphicon-circle-arrow-left { &:before { content: \"\\e132\"; } }\n.glyphicon-circle-arrow-up { &:before { content: \"\\e133\"; } }\n.glyphicon-circle-arrow-down { &:before { content: \"\\e134\"; } }\n.glyphicon-globe { &:before { content: \"\\e135\"; } }\n.glyphicon-wrench { &:before { content: \"\\e136\"; } }\n.glyphicon-tasks { &:before { content: \"\\e137\"; } }\n.glyphicon-filter { &:before { content: \"\\e138\"; } }\n.glyphicon-briefcase { &:before { content: \"\\e139\"; } }\n.glyphicon-fullscreen { &:before { content: \"\\e140\"; } }\n.glyphicon-dashboard { &:before { content: \"\\e141\"; } }\n.glyphicon-paperclip { &:before { content: \"\\e142\"; } }\n.glyphicon-heart-empty { &:before { content: \"\\e143\"; } }\n.glyphicon-link { &:before { content: \"\\e144\"; } }\n.glyphicon-phone { &:before { content: \"\\e145\"; } }\n.glyphicon-pushpin { &:before { content: \"\\e146\"; } }\n.glyphicon-usd { &:before { content: \"\\e148\"; } }\n.glyphicon-gbp { &:before { content: \"\\e149\"; } }\n.glyphicon-sort { &:before { content: \"\\e150\"; } }\n.glyphicon-sort-by-alphabet { &:before { content: \"\\e151\"; } }\n.glyphicon-sort-by-alphabet-alt { &:before { content: \"\\e152\"; } }\n.glyphicon-sort-by-order { &:before { content: \"\\e153\"; } }\n.glyphicon-sort-by-order-alt { &:before { content: \"\\e154\"; } }\n.glyphicon-sort-by-attributes { &:before { content: \"\\e155\"; } }\n.glyphicon-sort-by-attributes-alt { &:before { content: \"\\e156\"; } }\n.glyphicon-unchecked { &:before { content: \"\\e157\"; } }\n.glyphicon-expand { &:before { content: \"\\e158\"; } }\n.glyphicon-collapse-down { &:before { content: \"\\e159\"; } }\n.glyphicon-collapse-up { &:before { content: \"\\e160\"; } }\n.glyphicon-log-in { &:before { content: \"\\e161\"; } }\n.glyphicon-flash { &:before { content: \"\\e162\"; } }\n.glyphicon-log-out { &:before { content: \"\\e163\"; } }\n.glyphicon-new-window { &:before { content: \"\\e164\"; } }\n.glyphicon-record { &:before { content: \"\\e165\"; } }\n.glyphicon-save { &:before { content: \"\\e166\"; } }\n.glyphicon-open { &:before { content: \"\\e167\"; } }\n.glyphicon-saved { &:before { content: \"\\e168\"; } }\n.glyphicon-import { &:before { content: \"\\e169\"; } }\n.glyphicon-export { &:before { content: \"\\e170\"; } }\n.glyphicon-send { &:before { content: \"\\e171\"; } }\n.glyphicon-floppy-disk { &:before { content: \"\\e172\"; } }\n.glyphicon-floppy-saved { &:before { content: \"\\e173\"; } }\n.glyphicon-floppy-remove { &:before { content: \"\\e174\"; } }\n.glyphicon-floppy-save { &:before { content: \"\\e175\"; } }\n.glyphicon-floppy-open { &:before { content: \"\\e176\"; } }\n.glyphicon-credit-card { &:before { content: \"\\e177\"; } }\n.glyphicon-transfer { &:before { content: \"\\e178\"; } }\n.glyphicon-cutlery { &:before { content: \"\\e179\"; } }\n.glyphicon-header { &:before { content: \"\\e180\"; } }\n.glyphicon-compressed { &:before { content: \"\\e181\"; } }\n.glyphicon-earphone { &:before { content: \"\\e182\"; } }\n.glyphicon-phone-alt { &:before { content: \"\\e183\"; } }\n.glyphicon-tower { &:before { content: \"\\e184\"; } }\n.glyphicon-stats { &:before { content: \"\\e185\"; } }\n.glyphicon-sd-video { &:before { content: \"\\e186\"; } }\n.glyphicon-hd-video { &:before { content: \"\\e187\"; } }\n.glyphicon-subtitles { &:before { content: \"\\e188\"; } }\n.glyphicon-sound-stereo { &:before { content: \"\\e189\"; } }\n.glyphicon-sound-dolby { &:before { content: \"\\e190\"; } }\n.glyphicon-sound-5-1 { &:before { content: \"\\e191\"; } }\n.glyphicon-sound-6-1 { &:before { content: \"\\e192\"; } }\n.glyphicon-sound-7-1 { &:before { content: \"\\e193\"; } }\n.glyphicon-copyright-mark { &:before { content: \"\\e194\"; } }\n.glyphicon-registration-mark { &:before { content: \"\\e195\"; } }\n.glyphicon-cloud-download { &:before { content: \"\\e197\"; } }\n.glyphicon-cloud-upload { &:before { content: \"\\e198\"; } }\n.glyphicon-tree-conifer { &:before { content: \"\\e199\"; } }\n.glyphicon-tree-deciduous { &:before { content: \"\\e200\"; } }\n.glyphicon-cd { &:before { content: \"\\e201\"; } }\n.glyphicon-save-file { &:before { content: \"\\e202\"; } }\n.glyphicon-open-file { &:before { content: \"\\e203\"; } }\n.glyphicon-level-up { &:before { content: \"\\e204\"; } }\n.glyphicon-copy { &:before { content: \"\\e205\"; } }\n.glyphicon-paste { &:before { content: \"\\e206\"; } }\n// The following 2 Glyphicons are omitted for the time being because\n// they currently use Unicode codepoints that are outside the\n// Basic Multilingual Plane (BMP). Older buggy versions of WebKit can't handle\n// non-BMP codepoints in CSS string escapes, and thus can't display these two icons.\n// Notably, the bug affects some older versions of the Android Browser.\n// More info: https://github.com/twbs/bootstrap/issues/10106\n// .glyphicon-door { &:before { content: \"\\1f6aa\"; } }\n// .glyphicon-key { &:before { content: \"\\1f511\"; } }\n.glyphicon-alert { &:before { content: \"\\e209\"; } }\n.glyphicon-equalizer { &:before { content: \"\\e210\"; } }\n.glyphicon-king { &:before { content: \"\\e211\"; } }\n.glyphicon-queen { &:before { content: \"\\e212\"; } }\n.glyphicon-pawn { &:before { content: \"\\e213\"; } }\n.glyphicon-bishop { &:before { content: \"\\e214\"; } }\n.glyphicon-knight { &:before { content: \"\\e215\"; } }\n.glyphicon-baby-formula { &:before { content: \"\\e216\"; } }\n.glyphicon-tent { &:before { content: \"\\26fa\"; } }\n.glyphicon-blackboard { &:before { content: \"\\e218\"; } }\n.glyphicon-bed { &:before { content: \"\\e219\"; } }\n.glyphicon-apple { &:before { content: \"\\f8ff\"; } }\n.glyphicon-erase { &:before { content: \"\\e221\"; } }\n.glyphicon-hourglass { &:before { content: \"\\231b\"; } }\n.glyphicon-lamp { &:before { content: \"\\e223\"; } }\n.glyphicon-duplicate { &:before { content: \"\\e224\"; } }\n.glyphicon-piggy-bank { &:before { content: \"\\e225\"; } }\n.glyphicon-scissors { &:before { content: \"\\e226\"; } }\n.glyphicon-bitcoin { &:before { content: \"\\e227\"; } }\n.glyphicon-btc { &:before { content: \"\\e227\"; } }\n.glyphicon-xbt { &:before { content: \"\\e227\"; } }\n.glyphicon-yen { &:before { content: \"\\00a5\"; } }\n.glyphicon-jpy { &:before { content: \"\\00a5\"; } }\n.glyphicon-ruble { &:before { content: \"\\20bd\"; } }\n.glyphicon-rub { &:before { content: \"\\20bd\"; } }\n.glyphicon-scale { &:before { content: \"\\e230\"; } }\n.glyphicon-ice-lolly { &:before { content: \"\\e231\"; } }\n.glyphicon-ice-lolly-tasted { &:before { content: \"\\e232\"; } }\n.glyphicon-education { &:before { content: \"\\e233\"; } }\n.glyphicon-option-horizontal { &:before { content: \"\\e234\"; } }\n.glyphicon-option-vertical { &:before { content: \"\\e235\"; } }\n.glyphicon-menu-hamburger { &:before { content: \"\\e236\"; } }\n.glyphicon-modal-window { &:before { content: \"\\e237\"; } }\n.glyphicon-oil { &:before { content: \"\\e238\"; } }\n.glyphicon-grain { &:before { content: \"\\e239\"; } }\n.glyphicon-sunglasses { &:before { content: \"\\e240\"; } }\n.glyphicon-text-size { &:before { content: \"\\e241\"; } }\n.glyphicon-text-color { &:before { content: \"\\e242\"; } }\n.glyphicon-text-background { &:before { content: \"\\e243\"; } }\n.glyphicon-object-align-top { &:before { content: \"\\e244\"; } }\n.glyphicon-object-align-bottom { &:before { content: \"\\e245\"; } }\n.glyphicon-object-align-horizontal{ &:before { content: \"\\e246\"; } }\n.glyphicon-object-align-left { &:before { content: \"\\e247\"; } }\n.glyphicon-object-align-vertical { &:before { content: \"\\e248\"; } }\n.glyphicon-object-align-right { &:before { content: \"\\e249\"; } }\n.glyphicon-triangle-right { &:before { content: \"\\e250\"; } }\n.glyphicon-triangle-left { &:before { content: \"\\e251\"; } }\n.glyphicon-triangle-bottom { &:before { content: \"\\e252\"; } }\n.glyphicon-triangle-top { &:before { content: \"\\e253\"; } }\n.glyphicon-console { &:before { content: \"\\e254\"; } }\n.glyphicon-superscript { &:before { content: \"\\e255\"; } }\n.glyphicon-subscript { &:before { content: \"\\e256\"; } }\n.glyphicon-menu-left { &:before { content: \"\\e257\"; } }\n.glyphicon-menu-right { &:before { content: \"\\e258\"; } }\n.glyphicon-menu-down { &:before { content: \"\\e259\"; } }\n.glyphicon-menu-up { &:before { content: \"\\e260\"; } }\n","//\n// Scaffolding\n// --------------------------------------------------\n\n\n// Reset the box-sizing\n//\n// Heads up! This reset may cause conflicts with some third-party widgets.\n// For recommendations on resolving such conflicts, see\n// http://getbootstrap.com/getting-started/#third-box-sizing\n* {\n .box-sizing(border-box);\n}\n*:before,\n*:after {\n .box-sizing(border-box);\n}\n\n\n// Body reset\n\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n}\n\nbody {\n font-family: @font-family-base;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @text-color;\n background-color: @body-bg;\n}\n\n// Reset fonts for relevant elements\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\n\n// Links\n\na {\n color: @link-color;\n text-decoration: none;\n\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: @link-hover-decoration;\n }\n\n &:focus {\n .tab-focus();\n }\n}\n\n\n// Figures\n//\n// We reset this here because previously Normalize had no `figure` margins. This\n// ensures we don't break anyone's use of the element.\n\nfigure {\n margin: 0;\n}\n\n\n// Images\n\nimg {\n vertical-align: middle;\n}\n\n// Responsive images (ensure images don't scale beyond their parents)\n.img-responsive {\n .img-responsive();\n}\n\n// Rounded corners\n.img-rounded {\n border-radius: @border-radius-large;\n}\n\n// Image thumbnails\n//\n// Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`.\n.img-thumbnail {\n padding: @thumbnail-padding;\n line-height: @line-height-base;\n background-color: @thumbnail-bg;\n border: 1px solid @thumbnail-border;\n border-radius: @thumbnail-border-radius;\n .transition(all .2s ease-in-out);\n\n // Keep them at most 100% wide\n .img-responsive(inline-block);\n}\n\n// Perfect circle\n.img-circle {\n border-radius: 50%; // set radius in percents\n}\n\n\n// Horizontal rules\n\nhr {\n margin-top: @line-height-computed;\n margin-bottom: @line-height-computed;\n border: 0;\n border-top: 1px solid @hr-border;\n}\n\n\n// Only display content to screen readers\n//\n// See: http://a11yproject.com/posts/how-to-hide-content/\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0,0,0,0);\n border: 0;\n}\n\n// Use in conjunction with .sr-only to only display content when it's focused.\n// Useful for \"Skip to main content\" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1\n// Credit: HTML5 Boilerplate\n\n.sr-only-focusable {\n &:active,\n &:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n }\n}\n\n\n// iOS \"clickable elements\" fix for role=\"button\"\n//\n// Fixes \"clickability\" issue (and more generally, the firing of events such as focus as well)\n// for traditionally non-focusable elements with role=\"button\"\n// see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile\n\n[role=\"button\"] {\n cursor: pointer;\n}\n","// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They will be removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility){\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n word-wrap: break-word;\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// WebKit-style focus\n\n.tab-focus() {\n // Default\n outline: thin dotted;\n // WebKit\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n","// Image Mixins\n// - Responsive image\n// - Retina image\n\n\n// Responsive image\n//\n// Keep images from scaling beyond the width of their parents.\n.img-responsive(@display: block) {\n display: @display;\n max-width: 100%; // Part 1: Set a maximum relative to the parent\n height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching\n}\n\n\n// Retina image\n//\n// Short retina mixin for setting background-image and -size. Note that the\n// spelling of `min--moz-device-pixel-ratio` is intentional.\n.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {\n background-image: url(\"@{file-1x}\");\n\n @media\n only screen and (-webkit-min-device-pixel-ratio: 2),\n only screen and ( min--moz-device-pixel-ratio: 2),\n only screen and ( -o-min-device-pixel-ratio: 2/1),\n only screen and ( min-device-pixel-ratio: 2),\n only screen and ( min-resolution: 192dpi),\n only screen and ( min-resolution: 2dppx) {\n background-image: url(\"@{file-2x}\");\n background-size: @width-1x @height-1x;\n }\n}\n","//\n// Typography\n// --------------------------------------------------\n\n\n// Headings\n// -------------------------\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n font-family: @headings-font-family;\n font-weight: @headings-font-weight;\n line-height: @headings-line-height;\n color: @headings-color;\n\n small,\n .small {\n font-weight: normal;\n line-height: 1;\n color: @headings-small-color;\n }\n}\n\nh1, .h1,\nh2, .h2,\nh3, .h3 {\n margin-top: @line-height-computed;\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 65%;\n }\n}\nh4, .h4,\nh5, .h5,\nh6, .h6 {\n margin-top: (@line-height-computed / 2);\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 75%;\n }\n}\n\nh1, .h1 { font-size: @font-size-h1; }\nh2, .h2 { font-size: @font-size-h2; }\nh3, .h3 { font-size: @font-size-h3; }\nh4, .h4 { font-size: @font-size-h4; }\nh5, .h5 { font-size: @font-size-h5; }\nh6, .h6 { font-size: @font-size-h6; }\n\n\n// Body text\n// -------------------------\n\np {\n margin: 0 0 (@line-height-computed / 2);\n}\n\n.lead {\n margin-bottom: @line-height-computed;\n font-size: floor((@font-size-base * 1.15));\n font-weight: 300;\n line-height: 1.4;\n\n @media (min-width: @screen-sm-min) {\n font-size: (@font-size-base * 1.5);\n }\n}\n\n\n// Emphasis & misc\n// -------------------------\n\n// Ex: (12px small font / 14px base font) * 100% = about 85%\nsmall,\n.small {\n font-size: floor((100% * @font-size-small / @font-size-base));\n}\n\nmark,\n.mark {\n background-color: @state-warning-bg;\n padding: .2em;\n}\n\n// Alignment\n.text-left { text-align: left; }\n.text-right { text-align: right; }\n.text-center { text-align: center; }\n.text-justify { text-align: justify; }\n.text-nowrap { white-space: nowrap; }\n\n// Transformation\n.text-lowercase { text-transform: lowercase; }\n.text-uppercase { text-transform: uppercase; }\n.text-capitalize { text-transform: capitalize; }\n\n// Contextual colors\n.text-muted {\n color: @text-muted;\n}\n.text-primary {\n .text-emphasis-variant(@brand-primary);\n}\n.text-success {\n .text-emphasis-variant(@state-success-text);\n}\n.text-info {\n .text-emphasis-variant(@state-info-text);\n}\n.text-warning {\n .text-emphasis-variant(@state-warning-text);\n}\n.text-danger {\n .text-emphasis-variant(@state-danger-text);\n}\n\n// Contextual backgrounds\n// For now we'll leave these alongside the text classes until v4 when we can\n// safely shift things around (per SemVer rules).\n.bg-primary {\n // Given the contrast here, this is the only class to have its color inverted\n // automatically.\n color: #fff;\n .bg-variant(@brand-primary);\n}\n.bg-success {\n .bg-variant(@state-success-bg);\n}\n.bg-info {\n .bg-variant(@state-info-bg);\n}\n.bg-warning {\n .bg-variant(@state-warning-bg);\n}\n.bg-danger {\n .bg-variant(@state-danger-bg);\n}\n\n\n// Page header\n// -------------------------\n\n.page-header {\n padding-bottom: ((@line-height-computed / 2) - 1);\n margin: (@line-height-computed * 2) 0 @line-height-computed;\n border-bottom: 1px solid @page-header-border-color;\n}\n\n\n// Lists\n// -------------------------\n\n// Unordered and Ordered lists\nul,\nol {\n margin-top: 0;\n margin-bottom: (@line-height-computed / 2);\n ul,\n ol {\n margin-bottom: 0;\n }\n}\n\n// List options\n\n// Unstyled keeps list items block level, just removes default browser padding and list-style\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n// Inline turns list items into inline-block\n.list-inline {\n .list-unstyled();\n margin-left: -5px;\n\n > li {\n display: inline-block;\n padding-left: 5px;\n padding-right: 5px;\n }\n}\n\n// Description Lists\ndl {\n margin-top: 0; // Remove browser default\n margin-bottom: @line-height-computed;\n}\ndt,\ndd {\n line-height: @line-height-base;\n}\ndt {\n font-weight: bold;\n}\ndd {\n margin-left: 0; // Undo browser default\n}\n\n// Horizontal description lists\n//\n// Defaults to being stacked without any of the below styles applied, until the\n// grid breakpoint is reached (default of ~768px).\n\n.dl-horizontal {\n dd {\n &:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present\n }\n\n @media (min-width: @grid-float-breakpoint) {\n dt {\n float: left;\n width: (@dl-horizontal-offset - 20);\n clear: left;\n text-align: right;\n .text-overflow();\n }\n dd {\n margin-left: @dl-horizontal-offset;\n }\n }\n}\n\n\n// Misc\n// -------------------------\n\n// Abbreviations and acronyms\nabbr[title],\n// Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257\nabbr[data-original-title] {\n cursor: help;\n border-bottom: 1px dotted @abbr-border-color;\n}\n.initialism {\n font-size: 90%;\n .text-uppercase();\n}\n\n// Blockquotes\nblockquote {\n padding: (@line-height-computed / 2) @line-height-computed;\n margin: 0 0 @line-height-computed;\n font-size: @blockquote-font-size;\n border-left: 5px solid @blockquote-border-color;\n\n p,\n ul,\n ol {\n &:last-child {\n margin-bottom: 0;\n }\n }\n\n // Note: Deprecated small and .small as of v3.1.0\n // Context: https://github.com/twbs/bootstrap/issues/11660\n footer,\n small,\n .small {\n display: block;\n font-size: 80%; // back to default font-size\n line-height: @line-height-base;\n color: @blockquote-small-color;\n\n &:before {\n content: '\\2014 \\00A0'; // em dash, nbsp\n }\n }\n}\n\n// Opposite alignment of blockquote\n//\n// Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0.\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n border-right: 5px solid @blockquote-border-color;\n border-left: 0;\n text-align: right;\n\n // Account for citation\n footer,\n small,\n .small {\n &:before { content: ''; }\n &:after {\n content: '\\00A0 \\2014'; // nbsp, em dash\n }\n }\n}\n\n// Addresses\naddress {\n margin-bottom: @line-height-computed;\n font-style: normal;\n line-height: @line-height-base;\n}\n","// Typography\n\n.text-emphasis-variant(@color) {\n color: @color;\n a&:hover,\n a&:focus {\n color: darken(@color, 10%);\n }\n}\n","// Contextual backgrounds\n\n.bg-variant(@color) {\n background-color: @color;\n a&:hover,\n a&:focus {\n background-color: darken(@color, 10%);\n }\n}\n","// Text overflow\n// Requires inline-block or block for proper styling\n\n.text-overflow() {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n","//\n// Code (inline and block)\n// --------------------------------------------------\n\n\n// Inline and block code styles\ncode,\nkbd,\npre,\nsamp {\n font-family: @font-family-monospace;\n}\n\n// Inline code\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: @code-color;\n background-color: @code-bg;\n border-radius: @border-radius-base;\n}\n\n// User input typically entered via keyboard\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: @kbd-color;\n background-color: @kbd-bg;\n border-radius: @border-radius-small;\n box-shadow: inset 0 -1px 0 rgba(0,0,0,.25);\n\n kbd {\n padding: 0;\n font-size: 100%;\n font-weight: bold;\n box-shadow: none;\n }\n}\n\n// Blocks of code\npre {\n display: block;\n padding: ((@line-height-computed - 1) / 2);\n margin: 0 0 (@line-height-computed / 2);\n font-size: (@font-size-base - 1); // 14px to 13px\n line-height: @line-height-base;\n word-break: break-all;\n word-wrap: break-word;\n color: @pre-color;\n background-color: @pre-bg;\n border: 1px solid @pre-border-color;\n border-radius: @border-radius-base;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n }\n}\n\n// Enable scrollable blocks of code\n.pre-scrollable {\n max-height: @pre-scrollable-max-height;\n overflow-y: scroll;\n}\n","//\n// Grid system\n// --------------------------------------------------\n\n\n// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n.container {\n .container-fixed();\n\n @media (min-width: @screen-sm-min) {\n width: @container-sm;\n }\n @media (min-width: @screen-md-min) {\n width: @container-md;\n }\n @media (min-width: @screen-lg-min) {\n width: @container-lg;\n }\n}\n\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but without any defined\n// width for fluid, full width layouts.\n\n.container-fluid {\n .container-fixed();\n}\n\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n.row {\n .make-row();\n}\n\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n.make-grid-columns();\n\n\n// Extra small grid\n//\n// Columns, offsets, pushes, and pulls for extra small devices like\n// smartphones.\n\n.make-grid(xs);\n\n\n// Small grid\n//\n// Columns, offsets, pushes, and pulls for the small device range, from phones\n// to tablets.\n\n@media (min-width: @screen-sm-min) {\n .make-grid(sm);\n}\n\n\n// Medium grid\n//\n// Columns, offsets, pushes, and pulls for the desktop device range.\n\n@media (min-width: @screen-md-min) {\n .make-grid(md);\n}\n\n\n// Large grid\n//\n// Columns, offsets, pushes, and pulls for the large desktop device range.\n\n@media (min-width: @screen-lg-min) {\n .make-grid(lg);\n}\n","// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n// Centered container element\n.container-fixed(@gutter: @grid-gutter-width) {\n margin-right: auto;\n margin-left: auto;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n &:extend(.clearfix all);\n}\n\n// Creates a wrapper for a series of columns\n.make-row(@gutter: @grid-gutter-width) {\n margin-left: ceil((@gutter / -2));\n margin-right: floor((@gutter / -2));\n &:extend(.clearfix all);\n}\n\n// Generate the extra small columns\n.make-xs-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n float: left;\n width: percentage((@columns / @grid-columns));\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n}\n.make-xs-column-offset(@columns) {\n margin-left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-push(@columns) {\n left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-pull(@columns) {\n right: percentage((@columns / @grid-columns));\n}\n\n// Generate the small columns\n.make-sm-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-sm-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-offset(@columns) {\n @media (min-width: @screen-sm-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-push(@columns) {\n @media (min-width: @screen-sm-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-pull(@columns) {\n @media (min-width: @screen-sm-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the medium columns\n.make-md-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-md-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-offset(@columns) {\n @media (min-width: @screen-md-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-push(@columns) {\n @media (min-width: @screen-md-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-pull(@columns) {\n @media (min-width: @screen-md-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the large columns\n.make-lg-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-left: (@gutter / 2);\n padding-right: (@gutter / 2);\n\n @media (min-width: @screen-lg-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-offset(@columns) {\n @media (min-width: @screen-lg-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-push(@columns) {\n @media (min-width: @screen-lg-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-pull(@columns) {\n @media (min-width: @screen-lg-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n","// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `@grid-columns`.\n\n.make-grid-columns() {\n // Common styles for all sizes of grid columns, widths 1-12\n .col(@index) { // initial\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general; \"=<\" isn't a typo\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n position: relative;\n // Prevent columns from collapsing when empty\n min-height: 1px;\n // Inner gutter via padding\n padding-left: ceil((@grid-gutter-width / 2));\n padding-right: floor((@grid-gutter-width / 2));\n }\n }\n .col(1); // kickstart it\n}\n\n.float-grid-columns(@class) {\n .col(@index) { // initial\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n float: left;\n }\n }\n .col(1); // kickstart it\n}\n\n.calc-grid-column(@index, @class, @type) when (@type = width) and (@index > 0) {\n .col-@{class}-@{index} {\n width: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index > 0) {\n .col-@{class}-push-@{index} {\n left: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index = 0) {\n .col-@{class}-push-0 {\n left: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index > 0) {\n .col-@{class}-pull-@{index} {\n right: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index = 0) {\n .col-@{class}-pull-0 {\n right: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = offset) {\n .col-@{class}-offset-@{index} {\n margin-left: percentage((@index / @grid-columns));\n }\n}\n\n// Basic looping in LESS\n.loop-grid-columns(@index, @class, @type) when (@index >= 0) {\n .calc-grid-column(@index, @class, @type);\n // next iteration\n .loop-grid-columns((@index - 1), @class, @type);\n}\n\n// Create grid for specific class\n.make-grid(@class) {\n .float-grid-columns(@class);\n .loop-grid-columns(@grid-columns, @class, width);\n .loop-grid-columns(@grid-columns, @class, pull);\n .loop-grid-columns(@grid-columns, @class, push);\n .loop-grid-columns(@grid-columns, @class, offset);\n}\n","//\n// Tables\n// --------------------------------------------------\n\n\ntable {\n background-color: @table-bg;\n}\ncaption {\n padding-top: @table-cell-padding;\n padding-bottom: @table-cell-padding;\n color: @text-muted;\n text-align: left;\n}\nth {\n text-align: left;\n}\n\n\n// Baseline styles\n\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: @line-height-computed;\n // Cells\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-cell-padding;\n line-height: @line-height-base;\n vertical-align: top;\n border-top: 1px solid @table-border-color;\n }\n }\n }\n // Bottom align for column headings\n > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid @table-border-color;\n }\n // Remove top border from thead by default\n > caption + thead,\n > colgroup + thead,\n > thead:first-child {\n > tr:first-child {\n > th,\n > td {\n border-top: 0;\n }\n }\n }\n // Account for multiple tbody instances\n > tbody + tbody {\n border-top: 2px solid @table-border-color;\n }\n\n // Nesting\n .table {\n background-color: @body-bg;\n }\n}\n\n\n// Condensed table w/ half padding\n\n.table-condensed {\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-condensed-cell-padding;\n }\n }\n }\n}\n\n\n// Bordered version\n//\n// Add borders all around the table and between all the columns.\n\n.table-bordered {\n border: 1px solid @table-border-color;\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n border: 1px solid @table-border-color;\n }\n }\n }\n > thead > tr {\n > th,\n > td {\n border-bottom-width: 2px;\n }\n }\n}\n\n\n// Zebra-striping\n//\n// Default zebra-stripe styles (alternating gray and transparent backgrounds)\n\n.table-striped {\n > tbody > tr:nth-of-type(odd) {\n background-color: @table-bg-accent;\n }\n}\n\n\n// Hover effect\n//\n// Placed here since it has to come after the potential zebra striping\n\n.table-hover {\n > tbody > tr:hover {\n background-color: @table-bg-hover;\n }\n}\n\n\n// Table cell sizing\n//\n// Reset default table behavior\n\ntable col[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n float: none;\n display: table-column;\n}\ntable {\n td,\n th {\n &[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n float: none;\n display: table-cell;\n }\n }\n}\n\n\n// Table backgrounds\n//\n// Exact selectors below required to override `.table-striped` and prevent\n// inheritance to nested tables.\n\n// Generate the contextual variants\n.table-row-variant(active; @table-bg-active);\n.table-row-variant(success; @state-success-bg);\n.table-row-variant(info; @state-info-bg);\n.table-row-variant(warning; @state-warning-bg);\n.table-row-variant(danger; @state-danger-bg);\n\n\n// Responsive tables\n//\n// Wrap your tables in `.table-responsive` and we'll make them mobile friendly\n// by enabling horizontal scrolling. Only applies <768px. Everything above that\n// will display normally.\n\n.table-responsive {\n overflow-x: auto;\n min-height: 0.01%; // Workaround for IE9 bug (see https://github.com/twbs/bootstrap/issues/14837)\n\n @media screen and (max-width: @screen-xs-max) {\n width: 100%;\n margin-bottom: (@line-height-computed * 0.75);\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid @table-border-color;\n\n // Tighten up spacing\n > .table {\n margin-bottom: 0;\n\n // Ensure the content doesn't wrap\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n white-space: nowrap;\n }\n }\n }\n }\n\n // Special overrides for the bordered tables\n > .table-bordered {\n border: 0;\n\n // Nuke the appropriate borders so that the parent can handle them\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th:first-child,\n > td:first-child {\n border-left: 0;\n }\n > th:last-child,\n > td:last-child {\n border-right: 0;\n }\n }\n }\n\n // Only nuke the last row's bottom-border in `tbody` and `tfoot` since\n // chances are there will be only one `tr` in a `thead` and that would\n // remove the border altogether.\n > tbody,\n > tfoot {\n > tr:last-child {\n > th,\n > td {\n border-bottom: 0;\n }\n }\n }\n\n }\n }\n}\n","// Tables\n\n.table-row-variant(@state; @background) {\n // Exact selectors below required to override `.table-striped` and prevent\n // inheritance to nested tables.\n .table > thead > tr,\n .table > tbody > tr,\n .table > tfoot > tr {\n > td.@{state},\n > th.@{state},\n &.@{state} > td,\n &.@{state} > th {\n background-color: @background;\n }\n }\n\n // Hover states for `.table-hover`\n // Note: this is not available for cells or rows within `thead` or `tfoot`.\n .table-hover > tbody > tr {\n > td.@{state}:hover,\n > th.@{state}:hover,\n &.@{state}:hover > td,\n &:hover > .@{state},\n &.@{state}:hover > th {\n background-color: darken(@background, 5%);\n }\n }\n}\n","//\n// Forms\n// --------------------------------------------------\n\n\n// Normalize non-controls\n//\n// Restyle and baseline non-control form elements.\n\nfieldset {\n padding: 0;\n margin: 0;\n border: 0;\n // Chrome and Firefox set a `min-width: min-content;` on fieldsets,\n // so we reset that to ensure it behaves more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359.\n min-width: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: @line-height-computed;\n font-size: (@font-size-base * 1.5);\n line-height: inherit;\n color: @legend-color;\n border: 0;\n border-bottom: 1px solid @legend-border-color;\n}\n\nlabel {\n display: inline-block;\n max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141)\n margin-bottom: 5px;\n font-weight: bold;\n}\n\n\n// Normalize form controls\n//\n// While most of our form styles require extra classes, some basic normalization\n// is required to ensure optimum display with or without those classes to better\n// address browser inconsistencies.\n\n// Override content-box in Normalize (* isn't specific enough)\ninput[type=\"search\"] {\n .box-sizing(border-box);\n}\n\n// Position radios and checkboxes better\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9; // IE8-9\n line-height: normal;\n}\n\ninput[type=\"file\"] {\n display: block;\n}\n\n// Make range inputs behave like textual form controls\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\n\n// Make multiple select elements height not fixed\nselect[multiple],\nselect[size] {\n height: auto;\n}\n\n// Focus for file, radio, and checkbox\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n .tab-focus();\n}\n\n// Adjust output element\noutput {\n display: block;\n padding-top: (@padding-base-vertical + 1);\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n}\n\n\n// Common form controls\n//\n// Shared size and type resets for form controls. Apply `.form-control` to any\n// of the following form controls:\n//\n// select\n// textarea\n// input[type=\"text\"]\n// input[type=\"password\"]\n// input[type=\"datetime\"]\n// input[type=\"datetime-local\"]\n// input[type=\"date\"]\n// input[type=\"month\"]\n// input[type=\"time\"]\n// input[type=\"week\"]\n// input[type=\"number\"]\n// input[type=\"email\"]\n// input[type=\"url\"]\n// input[type=\"search\"]\n// input[type=\"tel\"]\n// input[type=\"color\"]\n\n.form-control {\n display: block;\n width: 100%;\n height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n background-color: @input-bg;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid @input-border;\n border-radius: @input-border-radius; // Note: This has no effect on s in CSS.\n .box-shadow(inset 0 1px 1px rgba(0,0,0,.075));\n .transition(~\"border-color ease-in-out .15s, box-shadow ease-in-out .15s\");\n\n // Customize the `:focus` state to imitate native WebKit styles.\n .form-control-focus();\n\n // Placeholder\n .placeholder();\n\n // Disabled and read-only inputs\n //\n // HTML5 says that controls under a fieldset > legend:first-child won't be\n // disabled if the fieldset is disabled. Due to implementation difficulty, we\n // don't honor that edge case; we style them as disabled anyway.\n &[disabled],\n &[readonly],\n fieldset[disabled] & {\n background-color: @input-bg-disabled;\n opacity: 1; // iOS fix for unreadable disabled content; see https://github.com/twbs/bootstrap/issues/11655\n }\n\n &[disabled],\n fieldset[disabled] & {\n cursor: @cursor-disabled;\n }\n\n // Reset height for `textarea`s\n textarea& {\n height: auto;\n }\n}\n\n\n// Search inputs in iOS\n//\n// This overrides the extra rounded corners on search inputs in iOS so that our\n// `.form-control` class can properly style them. Note that this cannot simply\n// be added to `.form-control` as it's not specific enough. For details, see\n// https://github.com/twbs/bootstrap/issues/11586.\n\ninput[type=\"search\"] {\n -webkit-appearance: none;\n}\n\n\n// Special styles for iOS temporal inputs\n//\n// In Mobile Safari, setting `display: block` on temporal inputs causes the\n// text within the input to become vertically misaligned. As a workaround, we\n// set a pixel line-height that matches the given height of the input, but only\n// for Safari. See https://bugs.webkit.org/show_bug.cgi?id=139848\n//\n// Note that as of 8.3, iOS doesn't support `datetime` or `week`.\n\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"],\n input[type=\"time\"],\n input[type=\"datetime-local\"],\n input[type=\"month\"] {\n &.form-control {\n line-height: @input-height-base;\n }\n\n &.input-sm,\n .input-group-sm & {\n line-height: @input-height-small;\n }\n\n &.input-lg,\n .input-group-lg & {\n line-height: @input-height-large;\n }\n }\n}\n\n\n// Form groups\n//\n// Designed to help with the organization and spacing of vertical forms. For\n// horizontal forms, use the predefined grid classes.\n\n.form-group {\n margin-bottom: @form-group-margin-bottom;\n}\n\n\n// Checkboxes and radios\n//\n// Indent the labels to position radios/checkboxes as hanging controls.\n\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n\n label {\n min-height: @line-height-computed; // Ensure the input doesn't jump when there is no text\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: normal;\n cursor: pointer;\n }\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n position: absolute;\n margin-left: -20px;\n margin-top: 4px \\9;\n}\n\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px; // Move up sibling radios or checkboxes for tighter spacing\n}\n\n// Radios and checkboxes on same line\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n vertical-align: middle;\n font-weight: normal;\n cursor: pointer;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px; // space out consecutive inline controls\n}\n\n// Apply same disabled cursor tweak as for inputs\n// Some special care is needed because