├── .gitignore ├── README.md ├── fonts ├── sourcesanspro-bold-webfont.eot ├── sourcesanspro-bold-webfont.ttf ├── sourcesanspro-bold-webfont.woff ├── sourcesanspro-bold-webfont.woff2 ├── sourcesanspro-italic-webfont.eot ├── sourcesanspro-italic-webfont.ttf ├── sourcesanspro-italic-webfont.woff ├── sourcesanspro-italic-webfont.woff2 ├── sourcesanspro-regular-webfont.eot ├── sourcesanspro-regular-webfont.ttf ├── sourcesanspro-regular-webfont.woff ├── sourcesanspro-bolditalic-webfont.eot ├── sourcesanspro-bolditalic-webfont.ttf ├── sourcesanspro-bolditalic-webfont.woff ├── sourcesanspro-extralight-webfont.eot ├── sourcesanspro-extralight-webfont.ttf ├── sourcesanspro-extralight-webfont.woff ├── sourcesanspro-regular-webfont.woff2 ├── sourcesanspro-bolditalic-webfont.woff2 ├── sourcesanspro-extralight-webfont.woff2 ├── sourcesanspro-extralightitalic-webfont.eot ├── sourcesanspro-extralightitalic-webfont.ttf ├── sourcesanspro-extralightitalic-webfont.woff ├── sourcesanspro-extralightitalic-webfont.woff2 └── sourcesanspro-bold-demo.html ├── icons ├── icons │ ├── ei-chevron-down.svg │ ├── ei-chevron-left.svg │ ├── ei-chevron-up.svg │ ├── ei-navicon.svg │ ├── ei-chevron-right.svg │ ├── ei-sc-facebook.svg │ ├── ei-close.svg │ ├── ei-chart.svg │ ├── ei-minus.svg │ ├── ei-clock.svg │ ├── ei-sc-tumblr.svg │ ├── ei-plus.svg │ ├── ei-search.svg │ ├── ei-check.svg │ ├── ei-play.svg │ ├── ei-exclamation.svg │ ├── ei-redo.svg │ ├── ei-undo.svg │ ├── ei-arrow-down.svg │ ├── ei-arrow-left.svg │ ├── ei-arrow-up.svg │ ├── ei-arrow-right.svg │ ├── ei-external-link.svg │ ├── ei-retweet.svg │ ├── ei-share-apple.svg │ ├── ei-close-o.svg │ ├── ei-heart.svg │ ├── ei-archive.svg │ ├── ei-comment.svg │ ├── ei-lock.svg │ ├── ei-location.svg │ ├── ei-spinner-3.svg │ ├── ei-unlock.svg │ ├── ei-sc-youtube.svg │ ├── ei-trash.svg │ ├── ei-sc-linkedin.svg │ ├── ei-bell.svg │ ├── ei-refresh.svg │ ├── ei-sc-instagram.svg │ ├── ei-sc-vimeo.svg │ ├── ei-paperclip.svg │ ├── ei-image.svg │ ├── ei-sc-twitter.svg │ ├── ei-tag.svg │ ├── ei-cart.svg │ ├── ei-pencil.svg │ ├── ei-star.svg │ ├── ei-envelope.svg │ ├── ei-sc-odnoklassniki.svg │ ├── ei-trophy.svg │ ├── ei-eye.svg │ ├── ei-share-google.svg │ ├── ei-credit-card.svg │ ├── ei-sc-github.svg │ ├── ei-spinner-2.svg │ ├── ei-camera.svg │ ├── ei-sc-vk.svg │ ├── ei-question.svg │ ├── ei-sc-google-plus.svg │ ├── ei-pointer.svg │ ├── ei-sc-skype.svg │ ├── ei-like.svg │ ├── ei-sc-soundcloud.svg │ ├── ei-link.svg │ ├── ei-user.svg │ ├── ei-gear.svg │ ├── ei-calendar.svg │ └── ei-spinner.svg ├── evil-icons.min.css ├── evil-icons.css ├── sprite.svg ├── evil-icons.min.js └── evil-icons.js ├── package.json ├── img ├── faceless.svg ├── criss-cross.svg ├── honeycomb.svg ├── w3c.svg └── spinner.svg ├── LICENSE ├── index.html ├── midgard.css ├── normalize.css └── hug.js /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # group-hug 2 | Playing the with the W3C Data API 3 | -------------------------------------------------------------------------------- /fonts/sourcesanspro-bold-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-bold-webfont.eot -------------------------------------------------------------------------------- /fonts/sourcesanspro-bold-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-bold-webfont.ttf -------------------------------------------------------------------------------- /fonts/sourcesanspro-bold-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-bold-webfont.woff -------------------------------------------------------------------------------- /fonts/sourcesanspro-bold-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-bold-webfont.woff2 -------------------------------------------------------------------------------- /fonts/sourcesanspro-italic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-italic-webfont.eot -------------------------------------------------------------------------------- /fonts/sourcesanspro-italic-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-italic-webfont.ttf -------------------------------------------------------------------------------- /fonts/sourcesanspro-italic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-italic-webfont.woff -------------------------------------------------------------------------------- /fonts/sourcesanspro-italic-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-italic-webfont.woff2 -------------------------------------------------------------------------------- /fonts/sourcesanspro-regular-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-regular-webfont.eot -------------------------------------------------------------------------------- /fonts/sourcesanspro-regular-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-regular-webfont.ttf -------------------------------------------------------------------------------- /fonts/sourcesanspro-regular-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-regular-webfont.woff -------------------------------------------------------------------------------- /fonts/sourcesanspro-bolditalic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-bolditalic-webfont.eot -------------------------------------------------------------------------------- /fonts/sourcesanspro-bolditalic-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-bolditalic-webfont.ttf -------------------------------------------------------------------------------- /fonts/sourcesanspro-bolditalic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-bolditalic-webfont.woff -------------------------------------------------------------------------------- /fonts/sourcesanspro-extralight-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-extralight-webfont.eot -------------------------------------------------------------------------------- /fonts/sourcesanspro-extralight-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-extralight-webfont.ttf -------------------------------------------------------------------------------- /fonts/sourcesanspro-extralight-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-extralight-webfont.woff -------------------------------------------------------------------------------- /fonts/sourcesanspro-regular-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-regular-webfont.woff2 -------------------------------------------------------------------------------- /fonts/sourcesanspro-bolditalic-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-bolditalic-webfont.woff2 -------------------------------------------------------------------------------- /fonts/sourcesanspro-extralight-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-extralight-webfont.woff2 -------------------------------------------------------------------------------- /fonts/sourcesanspro-extralightitalic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-extralightitalic-webfont.eot -------------------------------------------------------------------------------- /fonts/sourcesanspro-extralightitalic-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-extralightitalic-webfont.ttf -------------------------------------------------------------------------------- /fonts/sourcesanspro-extralightitalic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-extralightitalic-webfont.woff -------------------------------------------------------------------------------- /fonts/sourcesanspro-extralightitalic-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/darobin/group-hug/gh-pages/fonts/sourcesanspro-extralightitalic-webfont.woff2 -------------------------------------------------------------------------------- /icons/icons/ei-chevron-down.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-chevron-left.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-chevron-up.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-navicon.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-chevron-right.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-sc-facebook.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "w3c-hug" 3 | , "version": "0.0.1" 4 | , "private": true 5 | , "license": "MIT" 6 | , "dependencies": { 7 | "jquery": "latest" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /icons/icons/ei-close.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-chart.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-minus.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-clock.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-sc-tumblr.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-plus.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-search.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-check.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-play.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /img/faceless.svg: -------------------------------------------------------------------------------- 1 | 4 | Faceless Person 5 | 6 | 7 | -------------------------------------------------------------------------------- /icons/icons/ei-exclamation.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-redo.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-undo.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-arrow-down.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-arrow-left.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-arrow-up.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-arrow-right.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-external-link.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-retweet.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-share-apple.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-close-o.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-heart.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-archive.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-comment.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-lock.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-location.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-spinner-3.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-unlock.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-sc-youtube.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-trash.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-sc-linkedin.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-bell.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-refresh.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-sc-instagram.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-sc-vimeo.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-paperclip.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-image.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-sc-twitter.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-tag.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-cart.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-pencil.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-star.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-envelope.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-sc-odnoklassniki.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-trophy.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-eye.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-share-google.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /img/criss-cross.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /icons/icons/ei-credit-card.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-sc-github.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-spinner-2.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-camera.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-sc-vk.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /img/honeycomb.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /icons/icons/ei-question.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-sc-google-plus.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-pointer.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-sc-skype.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-like.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-sc-soundcloud.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-link.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-user.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-gear.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/icons/ei-calendar.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Robin Berjon 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /icons/evil-icons.min.css: -------------------------------------------------------------------------------- 1 | @-webkit-keyframes spin{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes spin{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.icon{position:relative;display:inline-block;width:25px;height:25px;overflow:hidden;fill:currentColor}.icon__cnt{width:100%;height:100%;background:inherit;fill:inherit;transform:translateX(0);-ms-transform:translate(.5px,-.3px)}.icon--m{width:50px;height:50px}.icon--l{width:100px;height:100px}.icon--xl{width:150px;height:150px}.icon--xxl{width:200px;height:200px}.icon__spinner{position:absolute;top:0;left:0;width:100%;height:100%}.icon--ei-spinner .icon__spinner,.icon--ei-spinner-2 .icon__spinner{-webkit-animation:spin 1s steps(12)infinite;animation:spin 1s steps(12)infinite}.icon--ei-spinner-3 .icon__spinner{-webkit-animation:spin 1.5s linear infinite;animation:spin 1.5s linear infinite}.icon--ei-sc-facebook{fill:#3b5998}.icon--ei-sc-github{fill:#333}.icon--ei-sc-google-plus{fill:#dd4b39}.icon--ei-sc-instagram{fill:#3f729b}.icon--ei-sc-linkedin{fill:#0976b4}.icon--ei-sc-odnoklassniki{fill:#ed812b}.icon--ei-sc-skype{fill:#00aff0}.icon--ei-sc-soundcloud{fill:#f80}.icon--ei-sc-tumblr{fill:#35465c}.icon--ei-sc-twitter{fill:#55acee}.icon--ei-sc-vimeo{fill:#1ab7ea}.icon--ei-sc-vk{fill:#45668e}.icon--ei-sc-youtube{fill:#e52d27} -------------------------------------------------------------------------------- /icons/icons/ei-spinner.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /img/w3c.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Group Hug 6 | 7 | 8 | 9 | 10 | 11 | 12 |
W3C logo
13 |
14 |
15 |

Group Hug

16 |

17 | This page exercises the W3C Data API (still password-protected while it is being tested 18 | because it can expose privacy-sensitive information). It is accessible to anyone with a 19 | W3C Member-level account. You can read the documentation for the full API. 21 |

22 |

23 | 24 | 44 |

45 |
46 |
x
47 |
48 | 49 | 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /icons/evil-icons.css: -------------------------------------------------------------------------------- 1 | @-webkit-keyframes spin { 2 | 100% { 3 | -webkit-transform:rotate(360deg); 4 | transform:rotate(360deg); 5 | } 6 | } 7 | 8 | @keyframes spin { 9 | 100% { 10 | -webkit-transform:rotate(360deg); 11 | transform:rotate(360deg); 12 | } 13 | } 14 | 15 | 16 | .icon { 17 | position: relative; 18 | display: inline-block; 19 | width: 25px; 20 | height: 25px; 21 | overflow: hidden; 22 | fill: currentColor; 23 | } 24 | 25 | .icon__cnt { 26 | width: 100%; 27 | height: 100%; 28 | background: inherit; 29 | fill: inherit; 30 | transform: translateX(0); /* Crisp fix for non-retina */ 31 | -ms-transform: translate(0.5px, -0.3px); /* Crisp fix for IE */ 32 | } 33 | 34 | .icon--m { 35 | width: 50px; 36 | height: 50px; 37 | } 38 | 39 | .icon--l { 40 | width: 100px; 41 | height: 100px; 42 | } 43 | 44 | .icon--xl { 45 | width: 150px; 46 | height: 150px; 47 | } 48 | 49 | .icon--xxl { 50 | width: 200px; 51 | height: 200px; 52 | } 53 | 54 | .icon__spinner { 55 | position: absolute; 56 | top: 0; 57 | left: 0; 58 | width: 100%; 59 | height: 100%; 60 | } 61 | 62 | .icon--ei-spinner .icon__spinner, 63 | .icon--ei-spinner-2 .icon__spinner { 64 | -webkit-animation: spin 1s steps(12) infinite; 65 | animation: spin 1s steps(12) infinite; 66 | } 67 | 68 | .icon--ei-spinner-3 .icon__spinner { 69 | -webkit-animation: spin 1.5s linear infinite; 70 | animation: spin 1.5s linear infinite; 71 | } 72 | 73 | .icon--ei-sc-facebook { 74 | fill: #3b5998; 75 | } 76 | 77 | .icon--ei-sc-github { 78 | fill: #333; 79 | } 80 | 81 | .icon--ei-sc-google-plus { 82 | fill: #dd4b39; 83 | } 84 | 85 | .icon--ei-sc-instagram { 86 | fill: #3f729b; 87 | } 88 | 89 | .icon--ei-sc-linkedin { 90 | fill: #0976b4; 91 | } 92 | 93 | .icon--ei-sc-odnoklassniki { 94 | fill: #ed812b; 95 | } 96 | 97 | .icon--ei-sc-skype { 98 | fill: #00aff0; 99 | } 100 | 101 | .icon--ei-sc-soundcloud { 102 | fill: #f80; 103 | } 104 | 105 | .icon--ei-sc-tumblr { 106 | fill: #35465c; 107 | } 108 | 109 | .icon--ei-sc-twitter { 110 | fill: #55acee; 111 | } 112 | 113 | .icon--ei-sc-vimeo { 114 | fill: #1ab7ea; 115 | } 116 | 117 | .icon--ei-sc-vk { 118 | fill: #45668e; 119 | } 120 | 121 | .icon--ei-sc-youtube { 122 | fill: #e52d27; 123 | } 124 | -------------------------------------------------------------------------------- /img/spinner.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /midgard.css: -------------------------------------------------------------------------------- 1 | 2 | 3 | /* 4 | ---- FONTS ------------------------------------------------------------------------------------- 5 | */ 6 | @font-face { 7 | font-family: "Source Sans"; 8 | src: url("fonts/sourcesanspro-regular-webfont.eot"); 9 | src: url("fonts/sourcesanspro-regular-webfont.eot?#iefix") format("embedded-opentype"), 10 | url("fonts/sourcesanspro-regular-webfont.woff2") format("woff2"), 11 | url("fonts/sourcesanspro-regular-webfont.woff") format("woff"), 12 | url("fonts/sourcesanspro-regular-webfont.ttf") format("truetype"); 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | @font-face { 17 | font-family: "Source Sans"; 18 | src: url("fonts/sourcesanspro-italic-webfont.eot"); 19 | src: url("fonts/sourcesanspro-italic-webfont.eot?#iefix") format("embedded-opentype"), 20 | url("fonts/sourcesanspro-italic-webfont.woff2") format("woff2"), 21 | url("fonts/sourcesanspro-italic-webfont.woff") format("woff"), 22 | url("fonts/sourcesanspro-italic-webfont.ttf") format("truetype"); 23 | font-weight: normal; 24 | font-style: italic; 25 | } 26 | @font-face { 27 | font-family: "Source Sans"; 28 | src: url("fonts/sourcesanspro-bold-webfont.eot"); 29 | src: url("fonts/sourcesanspro-bold-webfont.eot?#iefix") format("embedded-opentype"), 30 | url("fonts/sourcesanspro-bold-webfont.woff2") format("woff2"), 31 | url("fonts/sourcesanspro-bold-webfont.woff") format("woff"), 32 | url("fonts/sourcesanspro-bold-webfont.ttf") format("truetype"); 33 | font-weight: bold; 34 | font-style: normal; 35 | } 36 | @font-face { 37 | font-family: "Source Sans"; 38 | src: url("fonts/sourcesanspro-bolditalic-webfont.eot"); 39 | src: url("fonts/sourcesanspro-bolditalic-webfont.eot?#iefix") format("embedded-opentype"), 40 | url("fonts/sourcesanspro-bolditalic-webfont.woff2") format("woff2"), 41 | url("fonts/sourcesanspro-bolditalic-webfont.woff") format("woff"), 42 | url("fonts/sourcesanspro-bolditalic-webfont.ttf") format("truetype"); 43 | font-weight: bold; 44 | font-style: italic; 45 | } 46 | @font-face { 47 | font-family: "Source Sans"; 48 | src: url("fonts/sourcesanspro-extralight-webfont.eot"); 49 | src: url("fonts/sourcesanspro-extralight-webfont.eot?#iefix") format("embedded-opentype"), 50 | url("fonts/sourcesanspro-extralight-webfont.woff2") format("woff2"), 51 | url("fonts/sourcesanspro-extralight-webfont.woff") format("woff"), 52 | url("fonts/sourcesanspro-extralight-webfont.ttf") format("truetype"); 53 | font-weight: 300; 54 | font-style: normal; 55 | } 56 | @font-face { 57 | font-family: "Source Sans"; 58 | src: url("fonts/sourcesanspro-extralightitalic-webfont.eot"); 59 | src: url("fonts/sourcesanspro-extralightitalic-webfont.eot?#iefix") format("embedded-opentype"), 60 | url("fonts/sourcesanspro-extralightitalic-webfont.woff2") format("woff2"), 61 | url("fonts/sourcesanspro-extralightitalic-webfont.woff") format("woff"), 62 | url("fonts/sourcesanspro-extralightitalic-webfont.ttf") format("truetype"); 63 | font-weight: 300; 64 | font-style: italic; 65 | } 66 | 67 | /* 68 | ---- GLOBALS ----------------------------------------------------------------------------------- 69 | */ 70 | body { 71 | font-family: "Source Sans"; 72 | background: #343434; 73 | } 74 | 75 | img.loading { 76 | position: fixed; 77 | top: 50%; 78 | left: 50%; 79 | } 80 | 81 | /* 82 | ---- HEADER ------------------------------------------------------------------------------------ 83 | */ 84 | header { 85 | text-align: right; 86 | background: url("img/criss-cross.svg") darkorange; 87 | line-height: 0; 88 | border-bottom: 3px solid oldlace; 89 | } 90 | header img { 91 | padding: 5px 10px; 92 | background: #343434; 93 | } 94 | 95 | /* 96 | ---- COLUMNS ----------------------------------------------------------------------------------- 97 | */ 98 | main { 99 | padding-top: 1rem; 100 | display: flex; 101 | } 102 | .col { 103 | flex: 1; 104 | margin: 0 1rem 1rem 1rem; 105 | background: #fff; 106 | padding: 1rem; 107 | border: 1px solid darkorange; 108 | } 109 | 110 | 111 | /* local stuff */ 112 | 113 | h1, h2 { 114 | font-size: 2em; 115 | font-weight: 300; 116 | margin-top: 0; 117 | } 118 | h3 { 119 | font-weight: normal; 120 | margin-bottom: 0; 121 | } 122 | 123 | .group-type { 124 | color: #fff; 125 | border-radius: 50%; 126 | font-size: 0.5em; 127 | padding: 5px; 128 | display: inline-block; 129 | margin-right: 10px; 130 | vertical-align: top; 131 | } 132 | .group-type.wg { background: #00448d; } 133 | .group-type.cg { background: #fc0; color: #666; } 134 | .group-type.ig { background: #008d44; } 135 | 136 | .group-card h2 a { 137 | text-decoration: none; 138 | color: inherit; 139 | } 140 | .group-card > div, .group-card > p { 141 | margin-left: 42px; 142 | } 143 | .group-card .meta { 144 | margin-top: -1em; 145 | font-size: 0.9em; 146 | } 147 | .group-card ul { 148 | padding-left: 0; 149 | margin-top: 0; 150 | } 151 | .group-card li img { 152 | vertical-align: middle; 153 | } 154 | .specifications-card ul, .services-card ul { 155 | list-style-type: none 156 | } 157 | .group-card a { 158 | color: darkorange; 159 | text-decoration: none; 160 | } 161 | .group-card .status { 162 | font-size: 0.9em; 163 | color: #666; 164 | } 165 | .person-card ul { 166 | list-style-type: none; 167 | } 168 | .person-card li { 169 | display: inline-block; 170 | min-width: 150px; 171 | margin: 0 5px 5px 0; 172 | padding-right: 5px; 173 | border: 1px solid #666; 174 | } 175 | .person-card li img { 176 | margin-right: 5px; 177 | } 178 | 179 | -------------------------------------------------------------------------------- /normalize.css: -------------------------------------------------------------------------------- 1 | /*! normalize.css v3.0.2 | MIT License | git.io/normalize */ 2 | 3 | /** 4 | * 1. Set default font family to sans-serif. 5 | * 2. Prevent iOS text size adjust after orientation change, without disabling 6 | * user zoom. 7 | */ 8 | 9 | html { 10 | font-family: sans-serif; /* 1 */ 11 | -ms-text-size-adjust: 100%; /* 2 */ 12 | -webkit-text-size-adjust: 100%; /* 2 */ 13 | } 14 | 15 | /** 16 | * Remove default margin. 17 | */ 18 | 19 | body { 20 | margin: 0; 21 | } 22 | 23 | /* HTML5 display definitions 24 | ========================================================================== */ 25 | 26 | /** 27 | * Correct `block` display not defined for any HTML5 element in IE 8/9. 28 | * Correct `block` display not defined for `details` or `summary` in IE 10/11 29 | * and Firefox. 30 | * Correct `block` display not defined for `main` in IE 11. 31 | */ 32 | 33 | article, 34 | aside, 35 | details, 36 | figcaption, 37 | figure, 38 | footer, 39 | header, 40 | hgroup, 41 | main, 42 | menu, 43 | nav, 44 | section, 45 | summary { 46 | display: block; 47 | } 48 | 49 | /** 50 | * 1. Correct `inline-block` display not defined in IE 8/9. 51 | * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. 52 | */ 53 | 54 | audio, 55 | canvas, 56 | progress, 57 | video { 58 | display: inline-block; /* 1 */ 59 | vertical-align: baseline; /* 2 */ 60 | } 61 | 62 | /** 63 | * Prevent modern browsers from displaying `audio` without controls. 64 | * Remove excess height in iOS 5 devices. 65 | */ 66 | 67 | audio:not([controls]) { 68 | display: none; 69 | height: 0; 70 | } 71 | 72 | /** 73 | * Address `[hidden]` styling not present in IE 8/9/10. 74 | * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. 75 | */ 76 | 77 | [hidden], 78 | template { 79 | display: none; 80 | } 81 | 82 | /* Links 83 | ========================================================================== */ 84 | 85 | /** 86 | * Remove the gray background color from active links in IE 10. 87 | */ 88 | 89 | a { 90 | background-color: transparent; 91 | } 92 | 93 | /** 94 | * Improve readability when focused and also mouse hovered in all browsers. 95 | */ 96 | 97 | a:active, 98 | a:hover { 99 | outline: 0; 100 | } 101 | 102 | /* Text-level semantics 103 | ========================================================================== */ 104 | 105 | /** 106 | * Address styling not present in IE 8/9/10/11, Safari, and Chrome. 107 | */ 108 | 109 | abbr[title] { 110 | border-bottom: 1px dotted; 111 | } 112 | 113 | /** 114 | * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. 115 | */ 116 | 117 | b, 118 | strong { 119 | font-weight: bold; 120 | } 121 | 122 | /** 123 | * Address styling not present in Safari and Chrome. 124 | */ 125 | 126 | dfn { 127 | font-style: italic; 128 | } 129 | 130 | /** 131 | * Address variable `h1` font-size and margin within `section` and `article` 132 | * contexts in Firefox 4+, Safari, and Chrome. 133 | */ 134 | 135 | h1 { 136 | font-size: 2em; 137 | margin: 0.67em 0; 138 | } 139 | 140 | /** 141 | * Address styling not present in IE 8/9. 142 | */ 143 | 144 | mark { 145 | background: #ff0; 146 | color: #000; 147 | } 148 | 149 | /** 150 | * Address inconsistent and variable font size in all browsers. 151 | */ 152 | 153 | small { 154 | font-size: 80%; 155 | } 156 | 157 | /** 158 | * Prevent `sub` and `sup` affecting `line-height` in all browsers. 159 | */ 160 | 161 | sub, 162 | sup { 163 | font-size: 75%; 164 | line-height: 0; 165 | position: relative; 166 | vertical-align: baseline; 167 | } 168 | 169 | sup { 170 | top: -0.5em; 171 | } 172 | 173 | sub { 174 | bottom: -0.25em; 175 | } 176 | 177 | /* Embedded content 178 | ========================================================================== */ 179 | 180 | /** 181 | * Remove border when inside `a` element in IE 8/9/10. 182 | */ 183 | 184 | img { 185 | border: 0; 186 | } 187 | 188 | /** 189 | * Correct overflow not hidden in IE 9/10/11. 190 | */ 191 | 192 | svg:not(:root) { 193 | overflow: hidden; 194 | } 195 | 196 | /* Grouping content 197 | ========================================================================== */ 198 | 199 | /** 200 | * Address margin not present in IE 8/9 and Safari. 201 | */ 202 | 203 | figure { 204 | margin: 1em 40px; 205 | } 206 | 207 | /** 208 | * Address differences between Firefox and other browsers. 209 | */ 210 | 211 | hr { 212 | -moz-box-sizing: content-box; 213 | box-sizing: content-box; 214 | height: 0; 215 | } 216 | 217 | /** 218 | * Contain overflow in all browsers. 219 | */ 220 | 221 | pre { 222 | overflow: auto; 223 | } 224 | 225 | /** 226 | * Address odd `em`-unit font size rendering in all browsers. 227 | */ 228 | 229 | code, 230 | kbd, 231 | pre, 232 | samp { 233 | font-family: monospace, monospace; 234 | font-size: 1em; 235 | } 236 | 237 | /* Forms 238 | ========================================================================== */ 239 | 240 | /** 241 | * Known limitation: by default, Chrome and Safari on OS X allow very limited 242 | * styling of `select`, unless a `border` property is set. 243 | */ 244 | 245 | /** 246 | * 1. Correct color not being inherited. 247 | * Known issue: affects color of disabled elements. 248 | * 2. Correct font properties not being inherited. 249 | * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. 250 | */ 251 | 252 | button, 253 | input, 254 | optgroup, 255 | select, 256 | textarea { 257 | color: inherit; /* 1 */ 258 | font: inherit; /* 2 */ 259 | margin: 0; /* 3 */ 260 | } 261 | 262 | /** 263 | * Address `overflow` set to `hidden` in IE 8/9/10/11. 264 | */ 265 | 266 | button { 267 | overflow: visible; 268 | } 269 | 270 | /** 271 | * Address inconsistent `text-transform` inheritance for `button` and `select`. 272 | * All other form control elements do not inherit `text-transform` values. 273 | * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. 274 | * Correct `select` style inheritance in Firefox. 275 | */ 276 | 277 | button, 278 | select { 279 | text-transform: none; 280 | } 281 | 282 | /** 283 | * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` 284 | * and `video` controls. 285 | * 2. Correct inability to style clickable `input` types in iOS. 286 | * 3. Improve usability and consistency of cursor style between image-type 287 | * `input` and others. 288 | */ 289 | 290 | button, 291 | html input[type="button"], /* 1 */ 292 | input[type="reset"], 293 | input[type="submit"] { 294 | -webkit-appearance: button; /* 2 */ 295 | cursor: pointer; /* 3 */ 296 | } 297 | 298 | /** 299 | * Re-set default cursor for disabled elements. 300 | */ 301 | 302 | button[disabled], 303 | html input[disabled] { 304 | cursor: default; 305 | } 306 | 307 | /** 308 | * Remove inner padding and border in Firefox 4+. 309 | */ 310 | 311 | button::-moz-focus-inner, 312 | input::-moz-focus-inner { 313 | border: 0; 314 | padding: 0; 315 | } 316 | 317 | /** 318 | * Address Firefox 4+ setting `line-height` on `input` using `!important` in 319 | * the UA stylesheet. 320 | */ 321 | 322 | input { 323 | line-height: normal; 324 | } 325 | 326 | /** 327 | * It's recommended that you don't attempt to style these elements. 328 | * Firefox's implementation doesn't respect box-sizing, padding, or width. 329 | * 330 | * 1. Address box sizing set to `content-box` in IE 8/9/10. 331 | * 2. Remove excess padding in IE 8/9/10. 332 | */ 333 | 334 | input[type="checkbox"], 335 | input[type="radio"] { 336 | box-sizing: border-box; /* 1 */ 337 | padding: 0; /* 2 */ 338 | } 339 | 340 | /** 341 | * Fix the cursor style for Chrome's increment/decrement buttons. For certain 342 | * `font-size` values of the `input`, it causes the cursor style of the 343 | * decrement button to change from `default` to `text`. 344 | */ 345 | 346 | input[type="number"]::-webkit-inner-spin-button, 347 | input[type="number"]::-webkit-outer-spin-button { 348 | height: auto; 349 | } 350 | 351 | /** 352 | * 1. Address `appearance` set to `searchfield` in Safari and Chrome. 353 | * 2. Address `box-sizing` set to `border-box` in Safari and Chrome 354 | * (include `-moz` to future-proof). 355 | */ 356 | 357 | input[type="search"] { 358 | -webkit-appearance: textfield; /* 1 */ 359 | -moz-box-sizing: content-box; 360 | -webkit-box-sizing: content-box; /* 2 */ 361 | box-sizing: content-box; 362 | } 363 | 364 | /** 365 | * Remove inner padding and search cancel button in Safari and Chrome on OS X. 366 | * Safari (but not Chrome) clips the cancel button when the search input has 367 | * padding (and `textfield` appearance). 368 | */ 369 | 370 | input[type="search"]::-webkit-search-cancel-button, 371 | input[type="search"]::-webkit-search-decoration { 372 | -webkit-appearance: none; 373 | } 374 | 375 | /** 376 | * Define consistent border, margin, and padding. 377 | */ 378 | 379 | fieldset { 380 | border: 1px solid #c0c0c0; 381 | margin: 0 2px; 382 | padding: 0.35em 0.625em 0.75em; 383 | } 384 | 385 | /** 386 | * 1. Correct `color` not being inherited in IE 8/9/10/11. 387 | * 2. Remove padding so people aren't caught out if they zero out fieldsets. 388 | */ 389 | 390 | legend { 391 | border: 0; /* 1 */ 392 | padding: 0; /* 2 */ 393 | } 394 | 395 | /** 396 | * Remove default vertical scrollbar in IE 8/9/10/11. 397 | */ 398 | 399 | textarea { 400 | overflow: auto; 401 | } 402 | 403 | /** 404 | * Don't inherit the `font-weight` (applied by a rule above). 405 | * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. 406 | */ 407 | 408 | optgroup { 409 | font-weight: bold; 410 | } 411 | 412 | /* Tables 413 | ========================================================================== */ 414 | 415 | /** 416 | * Remove most spacing between table cells. 417 | */ 418 | 419 | table { 420 | border-collapse: collapse; 421 | border-spacing: 0; 422 | } 423 | 424 | td, 425 | th { 426 | padding: 0; 427 | } 428 | -------------------------------------------------------------------------------- /hug.js: -------------------------------------------------------------------------------- 1 | /* globals jQuery */ 2 | 3 | (function ($) { 4 | // XXX this is the test server 5 | var base = "https://api-test.w3.org/"; 6 | 7 | function defaultErrorHandler (xhr) { 8 | console.error("ERROR:", xhr.statusText); 9 | } 10 | 11 | // gets JSON in a way that works 12 | function getJSON (path, success, error) { 13 | path = path.indexOf("http") === 0 ? path : base + path; 14 | $.ajax(path, { 15 | type: "GET" 16 | , xhrFields: { 17 | withCredentials: true 18 | } 19 | , success: success 20 | , error: error || defaultErrorHandler 21 | }); 22 | } 23 | 24 | function renderCharter ($el, href) { 25 | getJSON( 26 | href 27 | , function (data) { 28 | console.log(data); 29 | $el.find("div.meta a").first().attr("href", data.uri); 30 | } 31 | ); 32 | } 33 | 34 | function renderDomain ($el, href) { 35 | getJSON( 36 | href 37 | , function (data) { 38 | console.log(data); 39 | $el.find("div.meta a") 40 | .last() 41 | .attr("href", data._links.homepage.href) 42 | .text(data.name + " Domain") 43 | ; 44 | } 45 | ); 46 | } 47 | 48 | function renderPeople ($parent, href, field, name, plural) { 49 | if (!plural) plural = name; 50 | getJSON( 51 | href 52 | , function (data) { 53 | var list = data._embedded[field]; 54 | name = list.length > 1 ? plural : name; 55 | console.log(name, data); 56 | var $card = $("
").addClass("person-card"); 57 | $("

").text(name).appendTo($card); 58 | var $ul = $("").appendTo($card); 59 | for (var i = 0, n = list.length; i < n; i++) { 60 | var item = list[i] 61 | , fullName = item.name.replace("[tm]", "™") 62 | , $li = $("
  • ").text(fullName).appendTo($ul) 63 | ; 64 | $("") 65 | .attr({ 66 | src: item._links.photos ? 67 | item._links.photos.filter(function (it) { return it.name === "tiny"; })[0].href : 68 | "img/faceless.svg" 69 | , alt: fullName 70 | , width: 36 71 | , height: 48 72 | }) 73 | .prependTo($li); 74 | } 75 | $card.appendTo($parent); 76 | } 77 | ); 78 | } 79 | 80 | function renderSpecifications ($ul, href) { 81 | getJSON( 82 | href 83 | , function (data) { 84 | // XXX we need to sort these specifications 85 | $.each(data._embedded.specifications, function (_, specification) { 86 | $("
  • ") 87 | .find("a") 88 | .attr("href", specification.shortlink) 89 | .text(specification.title) 90 | .end() 91 | .append($("").text("(" + specification._links.latest.title + ")")) 92 | .prepend( 93 | $("") 94 | ) 95 | .appendTo($ul) 96 | ; 97 | }); 98 | } 99 | ); 100 | } 101 | 102 | var icons = { 103 | tracker: "exclamation" 104 | , wiki: "pencil" 105 | , lists: "envelope" 106 | , repository: "sc-github" 107 | , unknown: "question" 108 | }; 109 | function renderServices ($ul, href) { 110 | getJSON( 111 | href 112 | , function (data) { 113 | // Sort the services array by type 114 | function sortByType(a, b) { 115 | return ((a.type < b.type) ? -1 : ((a.type > b.type) ? 1 : 0)); 116 | } 117 | var services = data._embedded.services; 118 | services.sort(sortByType); 119 | 120 | $.each(services, function (_, service) { 121 | $("
  • ") 122 | .find("a") 123 | .attr("href", service.link) 124 | .text(service.longdesc || service.shortdesc || service.type) 125 | .end() 126 | .prepend( 127 | $("") 128 | .attr({ 129 | alt: service.type 130 | , src: "icons/icons/ei-" + (icons[service.type] || icons.unknown) + ".svg" 131 | }) 132 | ) 133 | .appendTo($ul) 134 | ; 135 | }); 136 | } 137 | ); 138 | } 139 | 140 | function renderFullGroup ($el, gid) { 141 | // fetch the data for that group 142 | getJSON( 143 | "groups/" + gid 144 | , function (data) { 145 | console.log(data); 146 | 147 | // title =name (link =_links.homepage.href) 148 | var $title = $("

    ") 149 | .find("a") 150 | .text(data.name) 151 | .attr("href", data._links && data._links.homepage && data._links.homepage.href ? data._links.homepage.href : "") 152 | .end() 153 | .appendTo($el) 154 | ; 155 | 156 | // little group type icon =type 157 | var type = data.type ? data.type.replace(/\b(\w).*?\b\s*/g, "$1") : "??"; 158 | $("") 159 | .addClass("group-type") 160 | .addClass(type) 161 | .text(type.toUpperCase()) 162 | .prependTo($title) 163 | ; 164 | 165 | // time span =start_date-=end_date (in red if expired) 166 | var d = new Date() 167 | , fmt = function (str) { 168 | str = "" + str; 169 | return str.length < 2 ? "0" + str : str; 170 | } 171 | , date = d.getFullYear() + "-" + fmt(d.getMonth() + 1) + "-" + fmt(d.getDate()); 172 | $("
    Chartered in the .
    ") 173 | .addClass("lifetime") 174 | .find("time").first().text(data.start_date).end().end() 175 | .find("time") 176 | .last() 177 | .text(data.end_date) 178 | .css("color", data.end_date < date ? "#f00" : "inherit") 179 | .end().end() 180 | .appendTo($el) 181 | ; 182 | $("

    ") 183 | .addClass("mission") 184 | .text(data.description) 185 | .appendTo($el); 186 | 187 | // charter (get data from _links.active_charter.href, grab =uri) 188 | renderCharter( 189 | $el 190 | , data._links.active_charter.href 191 | ); 192 | // domain (get data from _links.domain.href, grab =name and =_links.homepage.href) 193 | renderDomain( 194 | $el 195 | , data._links.domain.href 196 | ); 197 | 198 | // Publications (list from _links.specifications.href) 199 | renderSpecifications( 200 | $("

    Documents

    ").appendTo($el).find("ul") 201 | , data._links.specifications.href + "?embed=true" 202 | ); 203 | 204 | // Services (list from _links.services.href) 205 | renderServices( 206 | $("

    Resources

    ").appendTo($el).find("ul") 207 | , data._links.services.href + "?embed=true" 208 | ); 209 | 210 | // get the people with embed=true so as to get the pictures 211 | renderPeople( 212 | $el 213 | , data._links.chairs.href + "?embed=true" 214 | , "chairs" 215 | , "Chair" 216 | , "Chairs" 217 | ); 218 | renderPeople( 219 | $el 220 | , data._links.team_contacts.href + "?embed=true" 221 | , "teamcontacts" 222 | , "Staff" 223 | ); 224 | 225 | } 226 | ); 227 | } 228 | 229 | // data-hug-group is to describe a group 230 | // we are likely to have others or more granular uses 231 | // $("*[data-hug-group]").each(function () { 232 | // var $el = $(this) 233 | // , gid = $el.attr("data-hug-group") 234 | // ; 235 | // renderFullGroup($el, gid); 236 | // }); 237 | 238 | var $hug = $("#hug"); 239 | $("#pick") 240 | .change(function (ev) { 241 | $hug.empty(); 242 | renderFullGroup($hug, $(ev.target).val()); 243 | }) 244 | .change() 245 | ; 246 | 247 | }(jQuery)); 248 | -------------------------------------------------------------------------------- /icons/sprite.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /icons/evil-icons.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Evil Icons 1.7.5 3 | * http://evil-icons.io 4 | * Licensed under the MIT License: http://www.opensource.org/licenses/mit-license.php 5 | * Copyright 2014-2015 Alexander Madyankin , Roman Shamin 6 | */ 7 | !function(c){"use strict";function h(){var h='';c.querySelector("body").insertAdjacentHTML("afterbegin",h)}function t(c,h){var h=h||{},t=h.size?"icon--"+h.size:"",p="icon icon--"+c+" "+t+" "+(h["class"]||""),l="",i="
    "+a(l,p)+"
    ";return i}function a(c,h){return h.indexOf("spinner")>-1?"
    "+c+"
    ":c}function p(){for(var h=c.querySelectorAll("[data-icon]"),a=0;a, Roman Shamin 6 | */ 7 | 8 | (function(document){ 9 | "use strict"; 10 | 11 | function renderSprite() { 12 | var sprite = ""; 13 | document.querySelector("body").insertAdjacentHTML("afterbegin", sprite); 14 | } 15 | 16 | function icon(name, options) { 17 | var options = options || {}; 18 | var size = options.size ? "icon--" + options.size : ""; 19 | var klass = "icon icon--" + name + " " + size + " " + (options.class || ""); 20 | 21 | 22 | var icon = "" + 23 | "" + 24 | ""; 25 | 26 | var html = "
    " + 27 | wrapSpinner(icon, klass) + 28 | "
    "; 29 | 30 | return html; 31 | } 32 | 33 | function wrapSpinner(html, klass) { 34 | if (klass.indexOf("spinner") > -1) { 35 | return "
    " + html + "
    "; 36 | } else { 37 | return html; 38 | } 39 | } 40 | 41 | function renderIcons() { 42 | var render = true; 43 | var icons = document.querySelectorAll("[data-icon]"); 44 | 45 | for (var i = 0; i < icons.length; i++) { 46 | var currentIcon = icons[i]; 47 | var name = currentIcon.getAttribute("data-icon"); 48 | var options = { 49 | class: currentIcon.className, 50 | size: currentIcon.getAttribute("data-size") 51 | }; 52 | 53 | currentIcon.insertAdjacentHTML("beforebegin", icon(name, options)); 54 | currentIcon.parentNode.removeChild(currentIcon); 55 | } 56 | } 57 | 58 | document.addEventListener("DOMContentLoaded", function() { 59 | renderSprite(); 60 | renderIcons(); 61 | }); 62 | 63 | })(window.document); 64 | -------------------------------------------------------------------------------- /fonts/sourcesanspro-bold-demo.html: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 17 | 18 | Source Sans Pro Bold Specimen 19 | 20 | 21 | 26 | 27 | 28 | 29 |
    30 | 32 | 39 | 40 |
    41 | 42 | 43 |
    44 | 45 |
    46 |
    47 |
    AaBb
    48 |
    49 |
    50 | 51 |
    52 |
    A​B​C​D​E​F​G​H​I​J​K​L​M​N​O​P​Q​R​S​T​U​V​W​X​Y​Z​a​b​c​d​e​f​g​h​i​j​k​l​m​n​o​p​q​r​s​t​u​v​w​x​y​z​1​2​3​4​5​6​7​8​9​0​&​.​,​?​!​@​(​)​#​$​%​*​+​-​=​:​;
    53 |
    54 |
    55 |
    56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 |
    10abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    11abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    12abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    13abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    14abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    16abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    18abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    20abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    24abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    30abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    36abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    48abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    60abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    72abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    90abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
    73 | 74 |
    75 | 76 |
    77 | 78 | 79 | 80 |
    81 | 82 | 83 |
    84 |
    ◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼◼body
    body
    body
    body
    85 |
    86 | bodySource Sans Pro Bold 87 |
    88 |
    89 | bodyArial 90 |
    91 |
    92 | bodyVerdana 93 |
    94 |
    95 | bodyGeorgia 96 |
    97 | 98 | 99 | 100 |
    101 | 102 | 103 |
    104 | 105 |
    106 |

    10.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    107 | 108 |
    109 |
    110 |

    11.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    111 | 112 |
    113 |
    114 |

    12.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    115 | 116 |
    117 |
    118 |

    13.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    119 | 120 |
    121 |
    122 | 123 |
    124 |
    125 |
    126 |

    14.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    127 | 128 |
    129 |
    130 |

    16.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    131 | 132 |
    133 |
    134 |

    18.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    135 | 136 |
    137 | 138 |
    139 | 140 |
    141 | 142 |
    143 |
    144 |

    20.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    145 |
    146 |
    147 |

    24.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    148 |
    149 | 150 |
    151 | 152 |
    153 | 154 |
    155 |
    156 |

    30.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    157 |
    158 |
    159 | 160 |
    161 | 162 | 163 | 164 |
    165 |
    166 |

    10.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    167 | 168 |
    169 |
    170 |

    11.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    171 | 172 |
    173 |
    174 |

    12.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    175 | 176 |
    177 |
    178 |

    13.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    179 | 180 |
    181 |
    182 | 183 |
    184 | 185 |
    186 |
    187 |

    14.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    188 | 189 |
    190 |
    191 |

    16.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    192 | 193 |
    194 |
    195 |

    18.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    196 | 197 |
    198 |
    199 | 200 |
    201 | 202 |
    203 |
    204 |

    20.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    205 |
    206 |
    207 |

    24.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    208 |
    209 | 210 |
    211 | 212 |
    213 | 214 |
    215 |
    216 |

    30.Aenean lacinia bibendum nulla sed consectetur. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Nullam id dolor id nibh ultricies vehicula ut id elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nulla vitae elit libero, a pharetra augue.

    217 |
    218 |
    219 | 220 |
    221 | 222 | 223 | 224 | 225 |
    226 | 227 |
    228 | 229 |
    230 | 231 |
    232 |

    Lorem Ipsum Dolor

    233 |

    Etiam porta sem malesuada magna mollis euismod

    234 | 235 | 236 |
    237 |
    238 |
    239 |
    240 |

    Donec sed odio dui. Morbi leo risus, porta ac consectetur ac, vestibulum at eros. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.

    241 | 242 | 243 |

    Pellentesque ornare sem

    244 | 245 |

    Maecenas sed diam eget risus varius blandit sit amet non magna. Maecenas faucibus mollis interdum. Donec ullamcorper nulla non metus auctor fringilla. Nullam id dolor id nibh ultricies vehicula ut id elit. Nullam id dolor id nibh ultricies vehicula ut id elit.

    246 | 247 |

    Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.

    248 | 249 |

    Nulla vitae elit libero, a pharetra augue. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Aenean lacinia bibendum nulla sed consectetur.

    250 | 251 |

    Nullam quis risus eget urna mollis ornare vel eu leo. Nullam quis risus eget urna mollis ornare vel eu leo. Maecenas sed diam eget risus varius blandit sit amet non magna. Donec ullamcorper nulla non metus auctor fringilla.

    252 | 253 |

    Cras mattis consectetur

    254 | 255 |

    Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Aenean lacinia bibendum nulla sed consectetur. Integer posuere erat a ante venenatis dapibus posuere velit aliquet. Cras mattis consectetur purus sit amet fermentum.

    256 | 257 |

    Nullam id dolor id nibh ultricies vehicula ut id elit. Nullam quis risus eget urna mollis ornare vel eu leo. Cras mattis consectetur purus sit amet fermentum.

    258 |
    259 | 260 | 277 |
    278 | 279 |
    280 | 281 | 282 | 283 | 284 | 285 | 286 |
    287 |
    288 |
    289 | 290 |

    Language Support

    291 |

    The subset of Source Sans Pro Bold in this kit supports the following languages:
    292 | 293 | English

    294 |

    Glyph Chart

    295 |

    The subset of Source Sans Pro Bold in this kit includes all the glyphs listed below. Unicode entities are included above each glyph to help you insert individual characters into your layout.

    296 |
    297 | 298 |

    &#13;

    299 |

    &#32;

    300 |

    &#33;

    !
    301 |

    &#35;

    #
    302 |

    &#36;

    $
    303 |

    &#38;

    &
    304 |

    &#39;

    '
    305 |

    &#40;

    (
    306 |

    &#41;

    )
    307 |

    &#42;

    *
    308 |

    &#43;

    +
    309 |

    &#44;

    ,
    310 |

    &#45;

    -
    311 |

    &#46;

    .
    312 |

    &#47;

    /
    313 |

    &#48;

    0
    314 |

    &#49;

    1
    315 |

    &#50;

    2
    316 |

    &#51;

    3
    317 |

    &#52;

    4
    318 |

    &#53;

    5
    319 |

    &#54;

    6
    320 |

    &#55;

    7
    321 |

    &#56;

    8
    322 |

    &#57;

    9
    323 |

    &#60;

    <
    324 |

    &#62;

    >
    325 |

    &#63;

    ?
    326 |

    &#64;

    @
    327 |

    &#65;

    A
    328 |

    &#66;

    B
    329 |

    &#67;

    C
    330 |

    &#68;

    D
    331 |

    &#69;

    E
    332 |

    &#70;

    F
    333 |

    &#71;

    G
    334 |

    &#72;

    H
    335 |

    &#73;

    I
    336 |

    &#74;

    J
    337 |

    &#75;

    K
    338 |

    &#76;

    L
    339 |

    &#77;

    M
    340 |

    &#78;

    N
    341 |

    &#79;

    O
    342 |

    &#80;

    P
    343 |

    &#81;

    Q
    344 |

    &#82;

    R
    345 |

    &#83;

    S
    346 |

    &#84;

    T
    347 |

    &#85;

    U
    348 |

    &#86;

    V
    349 |

    &#87;

    W
    350 |

    &#88;

    X
    351 |

    &#89;

    Y
    352 |

    &#90;

    Z
    353 |

    &#91;

    [
    354 |

    &#92;

    \
    355 |

    &#93;

    ]
    356 |

    &#94;

    ^
    357 |

    &#95;

    _
    358 |

    &#97;

    a
    359 |

    &#98;

    b
    360 |

    &#99;

    c
    361 |

    &#100;

    d
    362 |

    &#101;

    e
    363 |

    &#102;

    f
    364 |

    &#103;

    g
    365 |

    &#104;

    h
    366 |

    &#105;

    i
    367 |

    &#106;

    j
    368 |

    &#107;

    k
    369 |

    &#108;

    l
    370 |

    &#109;

    m
    371 |

    &#110;

    n
    372 |

    &#111;

    o
    373 |

    &#112;

    p
    374 |

    &#113;

    q
    375 |

    &#114;

    r
    376 |

    &#115;

    s
    377 |

    &#116;

    t
    378 |

    &#117;

    u
    379 |

    &#118;

    v
    380 |

    &#119;

    w
    381 |

    &#120;

    x
    382 |

    &#121;

    y
    383 |

    &#122;

    z
    384 |

    &#123;

    {
    385 |

    &#124;

    |
    386 |

    &#125;

    }
    387 |

    &#126;

    ~
    388 |

    &#160;

     
    389 |

    &#161;

    ¡
    390 |

    &#162;

    ¢
    391 |

    &#163;

    £
    392 |

    &#164;

    ¤
    393 |

    &#165;

    ¥
    394 |

    &#166;

    ¦
    395 |

    &#167;

    §
    396 |

    &#169;

    ©
    397 |

    &#172;

    ¬
    398 |

    &#174;

    ®
    399 |

    &#176;

    °
    400 |

    &#177;

    ±
    401 |

    &#181;

    µ
    402 |

    &#182;

    403 |

    &#191;

    ¿
    404 |

    &#198;

    Æ
    405 |

    &#208;

    Ð
    406 |

    &#215;

    ×
    407 |

    &#216;

    Ø
    408 |

    &#222;

    Þ
    409 |

    &#223;

    ß
    410 |

    &#230;

    æ
    411 |

    &#240;

    ð
    412 |

    &#247;

    ÷
    413 |

    &#248;

    ø
    414 |

    &#254;

    þ
    415 |

    &#305;

    ı
    416 |

    &#338;

    Œ
    417 |

    &#339;

    œ
    418 |

    &#768;

    ̀
    419 |

    &#769;

    ́
    420 |

    &#770;

    ̂
    421 |

    &#771;

    ̃
    422 |

    &#772;

    ̄
    423 |

    &#776;

    ̈
    424 |

    &#778;

    ̊
    425 |

    &#807;

    ̧
    426 |

    &#7491;

    427 |

    &#7506;

    428 |

    &#8192;

     
    429 |

    &#8193;

    430 |

    &#8194;

    431 |

    &#8195;

    432 |

    &#8196;

    433 |

    &#8197;

    434 |

    &#8198;

    435 |

    &#8199;

    436 |

    &#8200;

    437 |

    &#8201;

    438 |

    &#8202;

    439 |

    &#8208;

    440 |

    &#8209;

    441 |

    &#8210;

    442 |

    &#8211;

    443 |

    &#8212;

    444 |

    &#8216;

    445 |

    &#8217;

    446 |

    &#8226;

    447 |

    &#8239;

    448 |

    &#8249;

    449 |

    &#8250;

    450 |

    &#8260;

    451 |

    &#8287;

    452 |

    &#8364;

    453 |

    &#8482;

    454 |

    &#8722;

    455 |

    &#9724;

    456 |
    457 |
    458 | 459 | 460 |
    461 |
    462 | 463 | 464 |
    465 | 466 |
    467 | 468 |
    469 |
    470 |
    471 |

    Installing Webfonts

    472 | 473 |

    Webfonts are supported by all major browser platforms but not all in the same way. There are currently four different font formats that must be included in order to target all browsers. This includes TTF, WOFF, EOT and SVG.

    474 | 475 |

    1. Upload your webfonts

    476 |

    You must upload your webfont kit to your website. They should be in or near the same directory as your CSS files.

    477 | 478 |

    2. Include the webfont stylesheet

    479 |

    A special CSS @font-face declaration helps the various browsers select the appropriate font it needs without causing you a bunch of headaches. Learn more about this syntax by reading the Fontspring blog post about it. The code for it is as follows:

    480 | 481 | 482 | 483 | @font-face{ 484 | font-family: 'MyWebFont'; 485 | src: url('WebFont.eot'); 486 | src: url('WebFont.eot?#iefix') format('embedded-opentype'), 487 | url('WebFont.woff') format('woff'), 488 | url('WebFont.ttf') format('truetype'), 489 | url('WebFont.svg#webfont') format('svg'); 490 | } 491 | 492 | 493 |

    We've already gone ahead and generated the code for you. All you have to do is link to the stylesheet in your HTML, like this:

    494 | <link rel="stylesheet" href="stylesheet.css" type="text/css" charset="utf-8" /> 495 | 496 |

    3. Modify your own stylesheet

    497 |

    To take advantage of your new fonts, you must tell your stylesheet to use them. Look at the original @font-face declaration above and find the property called "font-family." The name linked there will be what you use to reference the font. Prepend that webfont name to the font stack in the "font-family" property, inside the selector you want to change. For example:

    498 | p { font-family: 'WebFont', Arial, sans-serif; } 499 | 500 |

    4. Test

    501 |

    Getting webfonts to work cross-browser can be tricky. Use the information in the sidebar to help you if you find that fonts aren't loading in a particular browser.

    502 |
    503 | 504 | 530 |
    531 | 532 |
    533 | 534 |
    535 | 538 |
    539 | 540 | 541 | --------------------------------------------------------------------------------