structrdfal 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +21 -0
  3. data/README.md +133 -0
  4. data/_includes/blogList.html +82 -0
  5. data/_includes/blogList.html~1 +100 -0
  6. data/_includes/blogList.html~2 +85 -0
  7. data/_includes/catag-old.html +15 -0
  8. data/_includes/catag.html +16 -0
  9. data/_includes/footer.html +18 -0
  10. data/_includes/nav.html +14 -0
  11. data/_layouts/aboutPage.html +5 -0
  12. data/_layouts/autopage_category.html +11 -0
  13. data/_layouts/autopage_tags.html +12 -0
  14. data/_layouts/bloghome.html +10 -0
  15. data/_layouts/contactPage.html +5 -0
  16. data/_layouts/default.html +131 -0
  17. data/_layouts/event.html +145 -0
  18. data/_layouts/page.html +4 -0
  19. data/_layouts/post.html +34 -0
  20. data/_layouts/sitehome.html +62 -0
  21. data/_sass/_variables.scss +36 -0
  22. data/_sass/_vertical-rhythm.scss +61 -0
  23. data/assets/.colophon/html5-boilerplate_v7.0.1/404.html +60 -0
  24. data/assets/.colophon/html5-boilerplate_v7.0.1/LICENSE.txt +19 -0
  25. data/assets/.colophon/html5-boilerplate_v7.0.1/docs/TOC.md +34 -0
  26. data/assets/.colophon/html5-boilerplate_v7.0.1/docs/css.md +54 -0
  27. data/assets/.colophon/html5-boilerplate_v7.0.1/docs/extend.md +640 -0
  28. data/assets/.colophon/html5-boilerplate_v7.0.1/docs/faq.md +42 -0
  29. data/assets/.colophon/html5-boilerplate_v7.0.1/docs/html.md +198 -0
  30. data/assets/.colophon/html5-boilerplate_v7.0.1/docs/js.md +36 -0
  31. data/assets/.colophon/html5-boilerplate_v7.0.1/docs/misc.md +173 -0
  32. data/assets/.colophon/html5-boilerplate_v7.0.1/docs/usage.md +130 -0
  33. data/assets/.colophon/html5-boilerplate_v7.0.1/index.html +41 -0
  34. data/assets/.colophon/normalize-scss/README.md +158 -0
  35. data/assets/.editorconfig +13 -0
  36. data/assets/.htaccess +1224 -0
  37. data/assets/404.html +6 -0
  38. data/assets/browserconfig.xml +12 -0
  39. data/assets/contactform.html +23 -0
  40. data/assets/eventform.html +110 -0
  41. data/assets/favicon.ico +0 -0
  42. data/assets/humans.txt +16 -0
  43. data/assets/icon.png +0 -0
  44. data/assets/robots.txt +5 -0
  45. data/assets/scripts/.DS_Store +0 -0
  46. data/assets/scripts/main.js +0 -0
  47. data/assets/scripts/plugins.js +24 -0
  48. data/assets/scripts/vendor/jquery-3.3.1.min.js +2 -0
  49. data/assets/scripts/vendor/modernizr-3.6.0.min.js +3 -0
  50. data/assets/site.webmanifest +12 -0
  51. data/assets/styles/HTML5BP-main.css +290 -0
  52. data/assets/styles/form.css +81 -0
  53. data/assets/styles/normalize.css +349 -0
  54. data/assets/styles/structRDFaL.css +177 -0
  55. data/assets/tile-wide.png +0 -0
  56. data/assets/tile.png +0 -0
  57. metadata +156 -0
@@ -0,0 +1,131 @@
1
+ <!doctype html>
2
+ <html class="no-js" lang="en" prefix="dc: http://purl.org/dc/terms/">
3
+ <head profile="http://www.w3.org/2005/10/profile">
4
+ <meta charset="utf-8">
5
+ {% if site.sitemark %}
6
+ {%- capture preTitle %}{{ site.sitemark }} - {% endcapture -%}
7
+ {%- else %}
8
+ {%- capture postTitle %} - {{ site.title }}{% endcapture -%}
9
+ {%- endif -%}
10
+
11
+ {% comment -%}
12
+ <!-- -----------------------------------------------------------------
13
+ I can find no validator for HTML embedded Dublin Core markup. Google's
14
+ Structured Data Testing Tool completely ignores the stuff. Yandex's
15
+ Structured Data Validator recognizes it given the prefix data in the
16
+ <html> above, even tho according to RDFa Core Initial Context, dc:
17
+ should be predefined (https://www.w3.org/2011/rdfa-context/rdfa-1.1)
18
+
19
+ for some really good examples of how the markup should look in your
20
+ code, see (https://www.w3.org/TR/rdfa-core/#s_initialcontexts)
21
+ ------------------------------------------------------------------ -->
22
+ {%- endcomment %}
23
+ <title property="dc:title">{{ preTitle }}{{ page.title }}{{ postTitle }}</title>
24
+ <meta name="description" property="dc:description" content="{{ page.description | default: site.description }}">
25
+ {% if page.tags or page.categories or page.keywords -%}
26
+ {%- assign nothing = "" | split: ", " %}
27
+ {%- assign ptags = page.tags | default: nothing %}
28
+ {%- assign pcats = page.categories | default: nothing %}
29
+ {%- assign pkeys = page.keywords | default: nothing %}
30
+ {%- assign keys = ptags | concat: pcats | concat: pkeys | uniq | join: "," %}
31
+ {%- assign keys = keys | remove_first: "blog," | remove_first: ",blog" -%}
32
+ <meta name="keywords" property="dc:keywords" content="{{ keys }}" />
33
+ {%- endif -%}
34
+ <meta name="viewport" content="width=device-width, initial-scale=1">
35
+
36
+ {% if page.meta-creator or site.author -%}
37
+ <meta name="author" property="dc:creator" content="{{ page.meta-creator | default: site.author }}" />
38
+ {%- endif %}
39
+ {% if page.meta-subject -%}
40
+ <meta property="dc:subject" content="{{ page.meta-subject }}" />
41
+ {%- endif %}
42
+ <meta property="dc:format" content="text/html" />
43
+ <meta property="dc:identifier" content="{{ page.url | absolute_url }}" />
44
+ {% if page.creation-date -%}
45
+ <meta property="dc:date.created" content="{{ page.creation-date | date: '%Y-%m-%d' }}" />
46
+ {%- endif -%}
47
+ {% if page.date -%}
48
+ <meta property="dc:date.lastmodified" content="{{ page.date | date: '%Y-%m-%d' }}" />
49
+ {%- endif -%}
50
+ {% if site.copynotice -%}
51
+ <meta property="dc:rights" content="{{ site.copynotice }}" />
52
+ {%- endif -%}
53
+
54
+ <link rel="manifest" href="site.webmanifest">
55
+ <link rel="apple-touch-icon" href="icon.png">
56
+ {%- comment -%}
57
+ HTML5BP says:
58
+ <!-- Place favicon.ico in the root directory -->
59
+ but the W3C "discourage" this behaviour (https://www.w3.org/2005/10/howto-favicon), so...
60
+ {%- endcomment %}
61
+ <link rel="icon" href="{{ site.baseurl }}favicon.ico">
62
+
63
+ <link rel="stylesheet" href="{{ site.stPath }}normalize.css">
64
+ <link rel="stylesheet" href="{{ site.stPath }}HTML5BP-main.css">
65
+ <link rel="stylesheet" href="{{ site.stPath }}structRDFaL.css">
66
+ {% if page.isform -%}<link rel="stylesheet" href="{{ site.stPath }}form.css">{%- endif %}
67
+
68
+ <meta name="theme-color" content="#fafafa">
69
+ </head>
70
+ {% comment -%}
71
+ <!-- ------------------------------------------------------------------
72
+ pgtype: (typeof WebPage) you might want (see https://schema.org/WebPage)
73
+ WebPage, AboutPage, ContactPage, CollectionPage (ImageGallery or VideoGallery)
74
+ Also could be- ItemPage, ProfilePage, QAPage (or FAQPage), SearchResultsPage
75
+
76
+ Will default to WebPage.
77
+
78
+ The pageType/mainType page/layout pgtype/mntype dance is because
79
+ Liquid/Jekyll frontmatter inheritance sucks.
80
+ ----------------------------------------------------------------------
81
+ mntype: (MainEntity)
82
+ some common ones: Event, Review, Book, HowTo, Article, BlogPost
83
+ ----------------------------------------------------------------------
84
+ Some dates that could be put in:
85
+ lastReviewed (last checked for accuracy)
86
+ dateCreated
87
+ dateModified
88
+ datePublished
89
+
90
+ name: usually page title
91
+ description:
92
+ breadcrumbs are marked up as an element of WebPage
93
+ there are also "about" and "keywords" but Google frowns on schema markup that is not visible unless one wants to implement a poor-man's search via tags
94
+ ------------------------------------------------------------------ -->
95
+ {%- endcomment %}
96
+
97
+ {%- if layout.pgtype or page.pgtype %}
98
+ {% assign pageType = layout.pgtype | default: page.pgtype %}
99
+ {%- endif -%}
100
+ {%- if layout.mntype or page.mntype %}
101
+ {% assign mainType = layout.mntype | default: page.mntype %}
102
+ {%- endif -%}
103
+
104
+ <body vocab="http://schema.org/" typeof="{{ pageType | default: 'WebPage' }}">
105
+ <!--[if lte IE 9]>
106
+ <p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="https://browsehappy.com/">upgrade your browser</a> to improve your experience and security.</p>
107
+ <![endif]-->
108
+ {%- if mainType %}
109
+ <main tabindex="-1" id="main-thing" property="mainEntity" typeof="{{ mainType }}">
110
+ {%- else %}
111
+ <main tabindex="-1" id="main-thing">
112
+ <h1 property="name">{{ page.title }}</h1>
113
+ {%- endif %}
114
+ <a href="/" title="Home"><img id="top-corner-logo" src="/icon.png" alt="logo"></a>
115
+ <!-- <p>default: pageType={{pageType}}, spt:{{site.pgtype}}, lpt:{{layout.pgtype}}<br />
116
+ mainType={{mainType}}, smt:{{site.mntype}}, lmt:{{layout.mntype}}</p> -->
117
+ {{ content }}
118
+ </main>
119
+ {% include nav.html -%}
120
+ {% include footer.html -%}
121
+ {%- comment -%}
122
+ Since it is the <main> element that is scrolling, focus must be
123
+ moved from the overall document to the <main> element for the
124
+ default spacebar scrolling to work. Obviously, Javascript must be
125
+ enabled for this to work since, sadly, there is no HTML/CSS way to
126
+ do it. It is a cosmetic level convenience so if it does not
127
+ enabled/work it is not fatal.
128
+ {%- endcomment %}
129
+ <script type="text/javascript">document.getElementById("main-thing").focus();</script>
130
+ </body>
131
+ </html>
@@ -0,0 +1,145 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+ {% comment -%}
5
+ <!-- some debug stuff -->
6
+ <!-- event: spt:{{site.pgtype}}, lpt:{{layout.pgtype}}<br />
7
+ smt:{{site.mntype}}, lmt:{{layout.mntype}}<br />
8
+ evtype: let:{{layout.evtype}}, pet:{{page.evtype}}<br /> -->
9
+ {%- endcomment -%}
10
+ {%- if page.image %}<meta property="image" href="{{ page.image }}" /></a>{%- endif %}
11
+
12
+ <section property="mainEntity" typeof="{{ layout.evtype | default: page.evtype | default: 'Event' }}">
13
+ {%- if page.image %}
14
+ <a property="image" href="{{ page.image }}" title="bigger"><img src="{{ page.image }}" align="right" alt="" title="Poster for {{ page.title }}" style="max-width: 33%;" /></a>
15
+ {%- endif %}
16
+ {%- if page.description %}
17
+ {%- if page.age %}
18
+ {% capture ageStmt %} Recommended for <span property="typicalAgeRange">{{ page.age }}</span>.{% endcapture %}
19
+ {%- endif %}
20
+ <p property="description">{{ page.description | newline_to_br }}{{ ageStmt }}</p>
21
+ {%- endif %}
22
+
23
+
24
+ <!-- only if needed
25
+ <meta property="eventStatus" content="http://schema.org/EventRescheduled">
26
+ <meta property="eventStatus" content="http://schema.org/EventCancelled">
27
+ <meta property="eventStatus" content="http://schema.org/EventPostponed">
28
+ <span property="previousStartDate" content="2013-09-14T21:30">(previously scheduled for Sept 14th)</span>
29
+ -->
30
+
31
+
32
+
33
+ <dl>
34
+ {%- if page.website %}
35
+ <dt>Website</dt>
36
+ <dd><a property="url" href="{{ page.website }}" title="{{ page.title}}">{{ page.website }}</a></dd>
37
+ {%- endif %}
38
+ <dt>Host</dt>
39
+ {%- if page.orgURL %}
40
+ <dd property="organizer" typeof="Organization"><a property="url" title="{{ page.organizer }}" href="{{ page.orgURL }}"><span property="name">{{ page.organizer }}</span></a></dd>
41
+ {%- else %}
42
+ <dd property="organizer" typeof="Organization"><span property="name">{{ page.organizer }}</span></dd>
43
+ {%- endif %}
44
+ {%- if page.sponsor %}
45
+ <dt>Sponsor(s)</dt>
46
+ <dd>
47
+ <ul style="padding: 0; list-style: none;"
48
+ {%- assign sponsors = page.sponsor | split: ", " %}
49
+ {%- for spons in sponsors %}
50
+ <li property="sponsor" typeof="Organization"> <span property="name">{{ spons }}</span></li>
51
+ {%- endfor %}
52
+ </ul>
53
+ </dd>
54
+ {%- endif %}
55
+
56
+ <!-- if doing dates with times, need the date/time to be in ISO_8601 format
57
+ <dd property="startDate" content="2019-01-26T08:10:36-08:00">January 26, 2019 at 8:10am PST</dd>
58
+ -->
59
+ {%- if page.endDate -%}
60
+ <dt>Dates</dt>
61
+ {%- capture endday %} to <span property="endDate" content="{{ page.endDate }}">{{ page.endDate | date: "%b %d, %Y" }}</span>{%- endcapture -%}
62
+ {%- else %}
63
+ <dt>Date</dt>
64
+ {%- endif %}
65
+ <dd><span property="startDate" content="{{ page.startDate }}">{{ page.startDate | date: "%b %d, %Y" }}</span>{{ endday }}</dd>
66
+ <dt>Where</dt>
67
+ <dd property="location" typeof="Place">
68
+ {%- if page.venue -%}
69
+ {%- if page.venueURL %}
70
+ <span property="name" content="{{ page.venue }}"><a property="url" href="{{ page.venueURL }}">{{ page.venue }}</a></span>
71
+ {%- else %}
72
+ <span property="name">{{ page.venue }}</span>
73
+ {%- endif -%}
74
+ {%- endif %}
75
+ <div property="address" typeof="PostalAddress">
76
+ <span property="streetAddress">{{ page.stAddress | newline_to_br }}</span><br>
77
+ <span property="addressLocality">{{ page.locality }}</span>,
78
+ <span property="addressRegion">{{ page.region }}</span>,
79
+ {%- if page.postal %}
80
+ <span property="postalCode">{{ page.postal }}</span>,
81
+ {%- endif %}
82
+ <span property="addressCountry">{{ page.country }}</span>
83
+ </div>
84
+ {%- if page.mappic or page.maplink %}
85
+ <span property="hasMap">
86
+ {%- if page.mappic %}
87
+ <link itemprop="mapType" href="http://schema.org/VenueMap" />
88
+ <a property="map" href="{{ page.mappic }}">Map</a><br>
89
+ {%- endif %}
90
+ {%- if page.maplink %}
91
+ <a property="url" href="{{ page.maplink }}">click here for directions</a>
92
+ {%- endif %}
93
+ </span>
94
+ {%- endif %}
95
+ </dd>
96
+ {%- if page.langs %}
97
+ <dt>Language(s)</dt>
98
+ <dd property="inLanguage">
99
+ {%- assign languages = page.langs | split: ", " %}
100
+ {%- for lang in languages %}
101
+ {%- unless forloop.first == true %}, {% endunless -%}
102
+ <span property="name">{{ lang }}</span>
103
+ {%- endfor -%}
104
+ </dd>
105
+ {%- endif %}
106
+ {%- if page.offers %}
107
+ <dt>Price</dt>
108
+ <dd property="offers" typeof="http://schema.org/Offer">
109
+ <span property="price" content="{{ page.price }}">
110
+ {%- if page.currency %}
111
+ <span property="priceCurrency" content="{{ page.currencyCode }}">{{ page.currency }}</span>
112
+ {%- endif %}
113
+ {%- if page.price %}
114
+ {{ page.price }}
115
+ {%- else %}
116
+ {{ page.offers }}
117
+ {%- endif %}
118
+ </span>
119
+ </dd>
120
+ {%- endif %}
121
+ <!--
122
+ <dd><ul>
123
+ <li property="offers" typeof="http://schema.org/Offer">
124
+ <a property="url" href="example.com/registration.html" title="registration form">Register here</a>
125
+ <span property="validFrom" content="2015-10-01T00:01">Oct 1, 2015</span> –
126
+ <span property="validThrough" content="2016-01-31T23:59">Jan 31, 2016</span> –
127
+ <div class="event-price">
128
+ <meta property="priceCurrency" content="USD" />$
129
+ <meta property="price" content="13.00" />13.00
130
+ </div>
131
+ </li>
132
+ <li property="offers" typeof="http://schema.org/Offer">
133
+ <a property="url" href="example.com/registration.html" title="registration form">Register here</a>
134
+ <span property="validFrom" content="2016-02-01T00:01">Feb 1, 2016</span> –
135
+ <span property="validThrough" content="2016-06-14T23:59">June 14, 2016</span> –
136
+ <span property="priceCurrency" content="USD">$</span><span property="price" content="1000.00">1,000.00</span>
137
+ </li>
138
+ </ul></dd> -->
139
+ </dl>
140
+ <!-- <p property="description">
141
+ yatta yatta event
142
+ </p> -->
143
+ </section>
144
+ </main>
145
+ </section>
@@ -0,0 +1,4 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+ {{ content }}
@@ -0,0 +1,34 @@
1
+ ---
2
+ layout: default
3
+ mntype: BlogPosting
4
+ ---
5
+ {% comment -%}
6
+ <!-- some debug stuff -->
7
+ <!-- <p>post: spt:{{site.pgtype}}, lpt:{{layout.pgtype}}<br />
8
+ smt:{{site.mntype}}, lmt:{{layout.mntype}}</p> -->
9
+ {%- endcomment -%}
10
+ <article class="post">
11
+ <header>
12
+ <h1 property="headline">{{ page.title }}</h1>
13
+ <time property="datePublished"
14
+ content="{{ page.date | date_to_xmlschema }}"
15
+ class="post-date">{{ page.date | date_to_string }}</time>
16
+ <a property="author publisher" typeof="Person"><meta property="name"
17
+ content="{{ site.author }}" /></a>
18
+ {% include catag.html list=page -%}
19
+ </header>
20
+ <section property="articleBody">
21
+ {{ content }}
22
+ </section>
23
+ </article>
24
+ <section class="related">
25
+ <h2>Related Posts</h2>
26
+ <ul class="related-posts">
27
+ {%- for post in site.related_posts limit:3 -%}
28
+ <li>
29
+ <small>{{ post.date | date_to_string }}</small>
30
+ <a href="{{ post.url | relative_url }}">{{ post.title }}</a>
31
+ </li>
32
+ {% endfor -%}
33
+ </ul>
34
+ </section>
@@ -0,0 +1,62 @@
1
+ <!doctype html>
2
+ <html class="no-js" lang="en" prefix="dc: http://purl.org/dc/terms/">
3
+ <head profile="http://www.w3.org/2005/10/profile">
4
+ <meta charset="utf-8">
5
+ {% if site.title -%}
6
+ {%- capture preTitle %}{{ site.title }} - {% endcapture -%}
7
+ {% endif -%}
8
+
9
+ <title property="dc:title">{{ preTitle }}{{ page.title }}</title>
10
+ <meta name="description" property="dc:description" content="{{ page.description | default: site.description }}">
11
+ <meta name="viewport" content="width=device-width, initial-scale=1">
12
+
13
+ {% if site.author -%}
14
+ <meta name="author" property="dc:creator" content="{{ site.author }}" />
15
+ {%- endif %}
16
+ {% if page.meta-subject -%}
17
+ <meta property="dc:subject" content="{{ page.meta-subject }}" />
18
+ {%- endif %}
19
+ <meta property="dc:format" content="text/html" />
20
+ <meta property="dc:identifier" content="{{ page.url | absolute_url }}" />
21
+ {% if page.creation-date -%}
22
+ <meta property="dc:date.created" content="{{ page.creation-date | date: '%Y-%m-%d' }}" />
23
+ {%- endif %}
24
+ <meta property="dc:date.lastmodified" content="{{ page.date | date: '%Y-%m-%d' }}" />
25
+ {% if site.copynotice -%}
26
+ <meta property="dc:rights" content="{{ site.copynotice }}" />
27
+ {%- endif %}
28
+
29
+ <link rel="manifest" href="site.webmanifest">
30
+ <link rel="apple-touch-icon" href="icon.png">
31
+ {%- comment -%}
32
+ HTML5BP says:
33
+ <!-- Place favicon.ico in the root directory -->
34
+ but the W3C "discourage" this behaviour, so...
35
+ {%- endcomment %}
36
+ <link rel="icon" href="{{ site.baseurl }}favicon.ico">
37
+
38
+ <link rel="stylesheet" href="{{ site.stPath }}normalize.css">
39
+ <link rel="stylesheet" href="{{ site.stPath }}HTML5BP-main.css">
40
+ <link rel="stylesheet" href="{{ site.stPath }}structRDFaL.css">
41
+ {% if page.isform -%}<link rel="stylesheet" href="{{ site.stPath }}form.css">{%- endif %}
42
+
43
+ <meta name="theme-color" content="#fafafa">
44
+ </head>
45
+
46
+ <body vocab="http://schema.org/" typeof="{{ page.pgtype | default: 'WebPage' }}">
47
+ <!--[if lte IE 9]>
48
+ <p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="https://browsehappy.com/">upgrade your browser</a> to improve your experience and security.</p>
49
+ <![endif]-->
50
+ {%- if page.mntype -%}
51
+ <main tabindex="-1" id="main-thing" property="mainEntity" typeof="{{ page.mntype }}">
52
+ {%- else -%}
53
+ <main tabindex="-1" id="main-thing">
54
+ <h1 property="name">{{ page.title }}</h1>
55
+ {%- endif %}
56
+ <img id="top-corner-logo" src="/icon.png" alt="logo" title="Home">
57
+ {{ content }}
58
+ </main>
59
+ {% include nav.html -%}
60
+ {% include footer.html -%}
61
+ </body>
62
+ </html>
@@ -0,0 +1,36 @@
1
+ //
2
+ // Variables
3
+ //
4
+ // If you have an initialization partial (or equivalent), you should move these
5
+ // lines to that file. NOTE: Edit the lines to remove "!default".
6
+
7
+ // The font size set on the root html element.
8
+ $base-font-size: 16px !default;
9
+
10
+ // The base line height determines the basic unit of vertical rhythm.
11
+ $base-line-height: 24px !default;
12
+
13
+ // The length unit in which to output vertical rhythm values.
14
+ // Supported values: px, em, rem.
15
+ $base-unit: 'em' !default;
16
+
17
+ // The default font family.
18
+ $base-font-family: null !default;
19
+
20
+ // The font sizes for h1-h6.
21
+ $h1-font-size: 2 * $base-font-size !default;
22
+ $h2-font-size: 1.5 * $base-font-size !default;
23
+ $h3-font-size: 1.17 * $base-font-size !default;
24
+ $h4-font-size: 1 * $base-font-size !default;
25
+ $h5-font-size: 0.83 * $base-font-size !default;
26
+ $h6-font-size: 0.67 * $base-font-size !default;
27
+
28
+ // The amount lists and blockquotes are indented.
29
+ $indent-amount: 40px !default;
30
+
31
+ // The following variable controls whether normalize-scss will output
32
+ // font-sizes, line-heights and block-level top/bottom margins that form a basic
33
+ // vertical rhythm on the page, which differs from the original Normalize.css.
34
+ // However, changing any of the variables above will cause
35
+ // $normalize-vertical-rhythm to be automatically set to true.
36
+ $normalize-vertical-rhythm: false !default;
@@ -0,0 +1,61 @@
1
+ //
2
+ // Vertical Rhythm
3
+ //
4
+ // This is the minimal amount of code needed to create vertical rhythm in our
5
+ // CSS. If you are looking for a robust solution, look at the excellent Typey
6
+ // library. @see https://github.com/jptaranto/typey
7
+
8
+ @function normalize-rhythm($value, $relative-to: $base-font-size, $unit: $base-unit) {
9
+ @if unit($value) != px {
10
+ @error "The normalize vertical-rhythm module only supports px inputs. The typey library is better.";
11
+ }
12
+ @if $unit == rem {
13
+ @return ($value / $base-font-size) * 1rem;
14
+ }
15
+ @else if $unit == em {
16
+ @return ($value / $relative-to) * 1em;
17
+ }
18
+ @else { // $unit == px
19
+ @return $value;
20
+ }
21
+ }
22
+
23
+ @mixin normalize-font-size($value, $relative-to: $base-font-size) {
24
+ @if unit($value) != 'px' {
25
+ @error "normalize-font-size() only supports px inputs. The typey library is better.";
26
+ }
27
+ font-size: normalize-rhythm($value, $relative-to);
28
+ }
29
+
30
+ @mixin normalize-rhythm($property, $values, $relative-to: $base-font-size) {
31
+ $value-list: $values;
32
+ $sep: space;
33
+ @if type-of($values) == 'list' {
34
+ $sep: list-separator($values);
35
+ }
36
+ @else {
37
+ $value-list: append((), $values);
38
+ }
39
+
40
+ $normalized-values: ();
41
+ @each $value in $value-list {
42
+ @if unitless($value) and $value != 0 {
43
+ $value: $value * normalize-rhythm($base-line-height, $relative-to);
44
+ }
45
+ $normalized-values: append($normalized-values, $value, $sep);
46
+ }
47
+ #{$property}: $normalized-values;
48
+ }
49
+
50
+ @mixin normalize-margin($values, $relative-to: $base-font-size) {
51
+ @include normalize-rhythm(margin, $values, $relative-to);
52
+ }
53
+
54
+ @mixin normalize-line-height($font-size, $min-line-padding: 2px) {
55
+ $lines: ceil($font-size / $base-line-height);
56
+ // If lines are cramped include some extra leading.
57
+ @if ($lines * $base-line-height - $font-size) < ($min-line-padding * 2) {
58
+ $lines: $lines + 1;
59
+ }
60
+ @include normalize-rhythm(line-height, $lines, $font-size);
61
+ }
@@ -0,0 +1,60 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <title>Page Not Found</title>
6
+ <meta name="viewport" content="width=device-width, initial-scale=1">
7
+ <style>
8
+
9
+ * {
10
+ line-height: 1.2;
11
+ margin: 0;
12
+ }
13
+
14
+ html {
15
+ color: #888;
16
+ display: table;
17
+ font-family: sans-serif;
18
+ height: 100%;
19
+ text-align: center;
20
+ width: 100%;
21
+ }
22
+
23
+ body {
24
+ display: table-cell;
25
+ vertical-align: middle;
26
+ margin: 2em auto;
27
+ }
28
+
29
+ h1 {
30
+ color: #555;
31
+ font-size: 2em;
32
+ font-weight: 400;
33
+ }
34
+
35
+ p {
36
+ margin: 0 auto;
37
+ width: 280px;
38
+ }
39
+
40
+ @media only screen and (max-width: 280px) {
41
+
42
+ body, p {
43
+ width: 95%;
44
+ }
45
+
46
+ h1 {
47
+ font-size: 1.5em;
48
+ margin: 0 0 0.3em;
49
+ }
50
+
51
+ }
52
+
53
+ </style>
54
+ </head>
55
+ <body>
56
+ <h1>Page Not Found</h1>
57
+ <p>Sorry, but the page you were trying to view does not exist.</p>
58
+ </body>
59
+ </html>
60
+ <!-- IE needs 512+ bytes: https://blogs.msdn.microsoft.com/ieinternals/2010/08/18/friendly-http-error-pages/ -->
@@ -0,0 +1,19 @@
1
+ Copyright (c) HTML5 Boilerplate
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
4
+ this software and associated documentation files (the "Software"), to deal in
5
+ the Software without restriction, including without limitation the rights to
6
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
7
+ of the Software, and to permit persons to whom the Software is furnished to do
8
+ so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in all
11
+ copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
19
+ SOFTWARE.
@@ -0,0 +1,34 @@
1
+ [HTML5 Boilerplate homepage](https://html5boilerplate.com/)
2
+
3
+ ## Getting started
4
+
5
+ * [Usage](usage.md) — Overview of the project contents.
6
+ * [FAQ](faq.md) — Frequently asked questions along with their answers.
7
+
8
+ ## HTML5 Boilerplate core
9
+
10
+ * [HTML](html.md) — Guide to the default HTML.
11
+ * [CSS](css.md) — Guide to the default CSS.
12
+ * [JavaScript](js.md) — Guide to the default JavaScript.
13
+ * [Everything else](misc.md).
14
+
15
+ ## Development
16
+
17
+ * [Extending and customizing HTML5 Boilerplate](extend.md) — Going further
18
+ with the boilerplate.
19
+
20
+ ## Related projects
21
+
22
+ The [H5BP organization](https://github.com/h5bp) maintains several projects
23
+ that complement HTML5 Boilerplate, projects that can help you improve different
24
+ aspects of your website/web app (e.g.: the performance, security, etc.).
25
+
26
+ * [Server Configs](https://github.com/h5bp/server-configs) — Fast and
27
+ smart configurations for web servers such as Apache and Nginx.
28
+ * [Apache](https://github.com/h5bp/server-configs-apache)
29
+ * [Google App Engine (GAE)](https://github.com/h5bp/server-configs-gae)
30
+ * [Internet Information Services (IIS)](https://github.com/h5bp/server-configs-iis)
31
+ * [lighttpd](https://github.com/h5bp/server-configs-lighttpd)
32
+ * [Nginx](https://github.com/h5bp/server-configs-nginx)
33
+ * [Node.js](https://github.com/h5bp/server-configs-node)
34
+ * [Front-end Developer Interview Questions](https://github.com/h5bp/Front-end-Developer-Interview-Questions)
@@ -0,0 +1,54 @@
1
+ [HTML5 Boilerplate homepage](https://html5boilerplate.com/) | [Documentation
2
+ table of contents](TOC.md)
3
+
4
+ # The CSS
5
+
6
+ HTML5 Boilerplate's CSS includes:
7
+
8
+ * [Normalize.css](#normalizecss)
9
+ * [Useful defaults](#useful-defaults)
10
+ * [Common helpers](#common-helpers)
11
+ * [Placeholder media queries](#media-queries)
12
+ * [Print styles](#print-styles)
13
+
14
+ This starting CSS does not rely on the presence of
15
+ [conditional class names](https://www.paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/),
16
+ [conditional style sheets](https://css-tricks.com/how-to-create-an-ie-only-stylesheet/),
17
+ or [Modernizr](https://modernizr.com/), and it is ready to use no matter what
18
+ your development preferences happen to be.
19
+
20
+
21
+ ## Normalize.css
22
+
23
+ In order to make browsers render all elements more consistently and in line
24
+ with modern standards, we include
25
+ [Normalize.css](https://necolas.github.io/normalize.css/) — a modern, HTML5-ready
26
+ alternative to CSS resets.
27
+
28
+ As opposed to CSS resets, Normalize.css:
29
+
30
+ * targets only the styles that need normalizing
31
+ * preserves useful browser defaults rather than erasing them
32
+ * corrects bugs and common browser inconsistencies
33
+ * improves usability with subtle improvements
34
+ * doesn't clutter the debugging tools
35
+ * has better documentation
36
+
37
+ For more information about Normalize.css, please refer to its [project
38
+ page](https://necolas.github.com/normalize.css/), as well as this
39
+ [blog post](http://nicolasgallagher.com/about-normalize-css/).
40
+
41
+
42
+ ## main.css
43
+
44
+ Several base styles are included that build upon `Normalize.css`. These
45
+ styles:
46
+
47
+ * provide basic typography settings that improve text readability
48
+ * protect against unwanted `text-shadow` during text highlighting
49
+ * tweak the default alignment of some elements (e.g.: `img`, `video`,
50
+ `fieldset`, `textarea`)
51
+ * style the prompt that is displayed to users using an outdated browser
52
+ * and more...
53
+
54
+ These styles are included in [main.css](https://github.com/h5bp/html5-boilerplate/blob/master/dist/css/main.css). See the [main.css](https://github.com/h5bp/main.css) project [documentation](https://github.com/h5bp/main.css/blob/master/README.md#features) for a full discussion of these styles.