html5-boilerplate 0.3.2 → 0.3.3

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.2
1
+ 0.3.3
@@ -3,11 +3,10 @@ module Html5BoilerplateHelper
3
3
  # http://paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither
4
4
  def ie_tag(name=:body, attrs={}, &block)
5
5
  attrs.symbolize_keys!
6
- haml_concat("<!--[if lt IE 7 ]> #{ tag(name, add_class('ie6', attrs), true) } <![endif]-->".html_safe)
7
- haml_concat("<!--[if IE 7 ]> #{ tag(name, add_class('ie7', attrs), true) } <![endif]-->".html_safe)
8
- haml_concat("<!--[if IE 8 ]> #{ tag(name, add_class('ie8', attrs), true) } <![endif]-->".html_safe)
9
- haml_concat("<!--[if IE 9 ]> #{ tag(name, add_class('ie9', attrs), true) } <![endif]-->".html_safe)
10
- haml_concat("<!--[if (gte IE 9)|!(IE)]><!-->".html_safe)
6
+ haml_concat("<!--[if lt IE 7]> #{ tag(name, add_class('ie6', attrs), true) } <![endif]-->".html_safe)
7
+ haml_concat("<!--[if IE 7]> #{ tag(name, add_class('ie7', attrs), true) } <![endif]-->".html_safe)
8
+ haml_concat("<!--[if IE 8]> #{ tag(name, add_class('ie8', attrs), true) } <![endif]-->".html_safe)
9
+ haml_concat("<!--[if gt IE 8]><!-->".html_safe)
11
10
  haml_tag name, attrs do
12
11
  haml_concat("<!--<![endif]-->".html_safe)
13
12
  block.call
@@ -3,7 +3,7 @@ $base-font-size: 13px !default;
3
3
  $base-line-height: 1.231 !default;
4
4
 
5
5
  //
6
- // Font normalization inspired by YUI Library's fonts.css: developer.yahoo.com/yui
6
+ // Font normalization inspired by YUI Library's fonts.css: developer.yahoo.com/yui/
7
7
  // Whatever parts of this port of YUI to Sass that are copyrightable, are Copyright (c) 2008, Christopher Eppstein. All Rights Reserved.
8
8
  //
9
9
 
@@ -17,15 +17,13 @@ $base-line-height: 1.231 !default;
17
17
 
18
18
  select, input, textarea, button { font: 99% $family; }
19
19
 
20
- // normalize monospace sizing
21
- // meyerweb.com/eric/thoughts/2010/02/12/fixed-monospace-sizing/
20
+ // Normalize monospace sizing:
22
21
  // en.wikipedia.org/wiki/MediaWiki_talk:Common.css/Archive_11#Teletype_style_fix_for_Chrome
23
22
  pre, code, kbd, samp { font-family: monospace, sans-serif; }
24
23
  }
25
24
 
26
- // maxvoltar.com/archive/-webkit-font-smoothing
27
25
  @mixin font-smoothing {
28
- -webkit-font-smoothing: antialiased;
26
+ @warn "The 'font-smoothing' mixin has been deprecated as it made monospace too thin.";
29
27
  }
30
28
 
31
29
  // Sets the font size specified in pixels using percents so that the base
@@ -22,7 +22,7 @@
22
22
 
23
23
  @mixin media-print {
24
24
  * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important;
25
- -ms-filter: none !important; } // black prints faster: sanbeiji.com/archives/953
25
+ -ms-filter: none !important; } // Black prints faster: sanbeiji.com/archives/953
26
26
  a, a:visited { color: #444 !important; text-decoration: underline; }
27
27
  a[href]:after { content: " (" attr(href) ")"; }
28
28
  abbr[title]:after { content: " (" attr(title) ")"; }
@@ -12,23 +12,23 @@
12
12
  article, aside, canvas, details, figcaption, figure,
13
13
  footer, header, hgroup, menu, nav, section, summary,
14
14
  time, mark, audio, video {
15
- margin:0;
16
- padding:0;
17
- border:0;
18
- font-size:100%;
15
+ margin: 0;
16
+ padding: 0;
17
+ border: 0;
18
+ font-size: 100%;
19
19
  font: inherit;
20
- vertical-align:baseline;
20
+ vertical-align: baseline;
21
21
  }
22
22
 
23
23
  article, aside, details, figcaption, figure,
24
- footer, header, hgroup, menu, nav, section {
24
+ footer, header, hgroup, menu, nav, section {
25
25
  display: block;
26
26
  }
27
27
 
28
28
  blockquote, q { quotes: none; }
29
29
 
30
30
  blockquote:before, blockquote:after,
31
- q:before, q:after { content:''; content:none; }
31
+ q:before, q:after { content: ""; content: none; }
32
32
 
33
33
  ins { background-color: #ff9; color: #000; text-decoration: none; }
34
34
 
@@ -17,7 +17,7 @@ $list-left-margin: 1.8em !default;
17
17
  ul, ol { margin-left: $list-left-margin; }
18
18
  ol { list-style-type: decimal; }
19
19
 
20
- td, td img { vertical-align: top; }
20
+ td { vertical-align: top; }
21
21
 
22
22
  sub { @include sub; }
23
23
 
@@ -33,7 +33,7 @@ $list-left-margin: 1.8em !default;
33
33
 
34
34
  @include hand-cursor-inputs;
35
35
 
36
- @include webkit-reset-form-elements;
36
+ @include reset-form-elements;
37
37
 
38
38
  @include selected-text;
39
39
 
@@ -60,13 +60,12 @@ $list-left-margin: 1.8em !default;
60
60
  // www.pathf.com/blogs/2008/05/formatting-quoted-code-in-blog-posts-css21-white-space-pre-wrap
61
61
  @mixin quoted-pre {
62
62
  pre {
63
- white-space: pre; white-space: pre-wrap; white-space: pre-line; word-wrap: break-word;
63
+ white-space: pre; white-space: pre-wrap; word-wrap: break-word;
64
64
  padding: 15px;
65
65
  }
66
66
  }
67
67
 
68
- // Align checkboxes, radios, text inputs with their label
69
- // by: Thierry Koblentz tjkdesign.com/ez-css/css/base.css
68
+ // Align checkboxes, radios, text inputs with their label by: Thierry Koblentz tjkdesign.com/ez-css/css/base.css
70
69
  @mixin align-input-labels {
71
70
  input[type="radio"] { vertical-align: text-bottom; }
72
71
  input[type="checkbox"] { vertical-align: bottom; }
@@ -79,9 +78,19 @@ $list-left-margin: 1.8em !default;
79
78
  label, input[type="button"], input[type="submit"], input[type="image"], button { cursor: pointer; }
80
79
  }
81
80
 
82
- // Webkit browsers add a 2px margin outside the chrome of form elements
81
+ @mixin reset-form-elements {
82
+ // 1) Make inputs and buttons play nice in IE: www.viget.com/inspire/styling-the-button-element-in-internet-explorer/
83
+ // 2) WebKit browsers add a 2px margin outside the chrome of form elements.
84
+ // Firefox adds a 1px margin above and below textareas
85
+ button, input, select, textarea { width: auto; overflow: visible; margin: 0; }
86
+
87
+ // Remove extra padding and inner border in Firefox
88
+ input::-moz-focus-inner,
89
+ button::-moz-focus-inner { border: 0; padding: 0; }
90
+ }
91
+
83
92
  @mixin webkit-reset-form-elements {
84
- button, input, select, textarea { margin: 0; }
93
+ @warn "The 'webkit-reset-form-elements' mixin has been deprecated. Use 'reset-form-elements' instead.";
85
94
  }
86
95
 
87
96
  // These selection declarations have to be separate.
@@ -103,10 +112,6 @@ $list-left-margin: 1.8em !default;
103
112
  }
104
113
 
105
114
  @mixin ie-hacks {
106
- // Make buttons play nice in IE:
107
- // www.viget.com/inspire/styling-the-button-element-in-internet-explorer/
108
- button { width: auto; overflow: visible; }
109
-
110
115
  // Bicubic resizing for non-native sized IMG:
111
116
  // code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/
112
117
  .ie7 img { -ms-interpolation-mode: bicubic; }
@@ -117,4 +122,4 @@ $list-left-margin: 1.8em !default;
117
122
  @mixin no-nav-margins {
118
123
  // remove margins for navigation lists
119
124
  nav ul, nav li { margin: 0; list-style:none; list-style-image: none; }
120
- }
125
+ }
@@ -1,27 +1,27 @@
1
- %head
2
- %meta{ :charset => "utf-8" }/
1
+ %meta{ :charset => "utf-8" }/
2
+
3
+ -# Always force latest IE rendering engine (even in intranet) & Chrome Frame
4
+ -# Remove this if you use the .htaccess
5
+ %meta{ "http-equiv" => "X-UA-Compatible", :content => "IE=edge,chrome=1" }/
6
+
7
+ %title
8
+ == #{ controller.controller_name.titleize } - #{ controller.action_name.titleize }
3
9
 
4
- -#
5
- Always force latest IE rendering engine (even in intranet) & Chrome Frame
6
- Remove this if you use the .htaccess
7
- %meta{ :content => "IE=edge,chrome=1", "http-equiv" => "X-UA-Compatible" }/
8
-
9
- %title
10
- == #{ controller.controller_name.titleize } - #{ controller.action_name.titleize }
11
-
12
- %meta{ :content => "", :name => "description" }/
13
- %meta{ :content => "", :name => "author" }/
14
-
15
- -# Mobile viewport optimized: j.mp/bplateviewport
16
- %meta{ :content => "width=device-width, initial-scale=1.0", :name => "viewport" }/
17
-
18
- -# Place favicon.ico and apple-touch-icon.png in the root of your domain and delete these references
19
- -# %link{ :href => "/favicon.ico", :rel => "shortcut icon" }/
20
- -# %link{ :href => "/apple-touch-icon.png", :rel => "apple-touch-icon" }/
21
-
22
- = render :partial => 'layouts/stylesheets'
23
-
24
- -# All JavaScript at the bottom, except for Modernizr which enables HTML5 elements & feature detects
25
- = javascript_include_tag 'modernizr.min'
26
-
27
- = csrf_meta_tag
10
+ %meta{ :name => "description", :content => "" }/
11
+ %meta{ :name => "author", :content => "" }/
12
+
13
+ -# Mobile viewport optimized: j.mp/bplateviewport
14
+ %meta{ :name => "viewport", :content => "width=device-width, initial-scale=1.0" }/
15
+
16
+ -# Place favicon.ico and apple-touch-icon.png in the root of your domain and delete these references
17
+ -# %link{ :rel => "shortcut icon", :href => "/favicon.ico" }/
18
+ -# %link{ :rel => "apple-touch-icon", :href => "/apple-touch-icon.png" }/
19
+
20
+ -# You can specify a stylesheet_partial when rendering this partial (i.e. admin/stylesheets)
21
+ - if local_assigns[:stylesheet_partial]
22
+ = render :partial => local_assigns[:stylesheet_partial]
23
+
24
+ -# All JavaScript at the bottom, except for Modernizr which enables HTML5 elements & feature detects
25
+ = javascript_include_tag 'modernizr.min'
26
+
27
+ = csrf_meta_tag
@@ -4,13 +4,13 @@
4
4
  - if !google_api_key.blank?
5
5
  = javascript_include_tag "//www.google.com/jsapi?key=#{google_api_key}"
6
6
  :javascript
7
- google.load(#{ remote_jquery("1.5.1") });
7
+ google.load(#{ remote_jquery("1.5.2") });
8
8
  - else
9
- = javascript_include_tag "//ajax.googleapis.com/ajax/libs/jquery/#{ local_jquery("1.5.1") }"
9
+ = javascript_include_tag "//ajax.googleapis.com/ajax/libs/jquery/#{ local_jquery("1.5.2") }"
10
10
 
11
11
  -# fall back to local jQuery if necessary
12
12
  :javascript
13
- !window.jQuery && document.write(unescape('%3Cscript src="/javascripts/jquery.min.js"%3E%3C/script%3E'))
13
+ window.jQuery || document.write("<script src='/javascripts/jquery.min.js'>\x3C/script>")
14
14
 
15
15
  = javascript_include_tag 'rails', 'plugins', 'application'
16
16
 
@@ -27,11 +27,7 @@
27
27
  -# Looks for google_account_id first in ENV['GOOGLE_ACCOUNT_ID'] then in config/google.yml
28
28
  - if !google_account_id.blank?
29
29
  :javascript
30
- var _gaq = [['_setAccount', '#{google_account_id}'], ['_trackPageview']];
31
- (function(d, t) {
32
- var g = d.createElement(t),
33
- s = d.getElementsByTagName(t)[0];
34
- g.async = true;
35
- g.src = ('https:' == location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
36
- s.parentNode.insertBefore(g, s);
37
- })(document, 'script');
30
+ var _gaq=[["_setAccount","#{google_account_id}"],["_trackPageview"]];
31
+ (function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];g.async=1;
32
+ g.src=("https:"==location.protocol?"//ssl":"//www")+".google-analytics.com/ga.js";
33
+ s.parentNode.insertBefore(g,s)}(document,"script"));
@@ -1,15 +1,20 @@
1
1
  !!! 5
2
2
  -# http://paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither
3
- -ie_html :class => 'no-js' do
4
- = render :partial => 'layouts/head'
5
- %body{ :lang => 'en', :class => "#{controller.controller_name}" }
3
+ -ie_html :class => 'no-js', :lang => 'en' do
4
+ %head
5
+ = render "layouts/head", :stylesheet_partial => "layouts/stylesheets"
6
+
7
+ %body{ :class => "#{controller.controller_name}" }
6
8
  #container
7
9
  %header#header
8
- = render :partial => 'layouts/header'
10
+ = render "layouts/header"
11
+
9
12
  #main{ :role => 'main' }
10
- = render :partial => 'layouts/flashes'
13
+ = render "layouts/flashes"
11
14
  = yield
15
+
12
16
  %footer#footer
13
- = render :partial => 'layouts/footer'
17
+ = render "layouts/footer"
18
+
14
19
  -# Javascript at the bottom for fast page loading
15
- = render :partial => 'layouts/javascripts'
20
+ = render "layouts/javascripts"
@@ -1,22 +1,38 @@
1
1
  <!doctype html>
2
- <title>not found</title>
3
-
4
- <style>
5
- body { text-align: center;}
6
- h1 { font-size: 50px; }
7
- body { font: 20px Constantia, 'Hoefler Text', "Adobe Caslon Pro", Baskerville, Georgia, Times, serif; color: #999; text-shadow: 2px 2px 2px rgba(200, 200, 200, 0.5); }
8
- ::-moz-selection{ background:#FF5E99; color:#fff; }
9
- ::selection { background:#FF5E99; color:#fff; }
10
- details { display:block; }
11
- a { color: rgb(36, 109, 56); text-decoration:none; }
12
- a:hover { color: rgb(96, 73, 141) ; text-shadow: 2px 2px 2px rgba(36, 109, 56, 0.5); }
13
- span[frown] { transform: rotate(90deg); display:inline-block; color: #bbb; }
14
- </style>
15
-
16
-
17
-
18
-
19
- <details>
20
- <summary><h1>Not found</h1></summary>
21
- <p><span frown>:(</span></p>
22
- </details>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <title>Page Not Found :(</title>
6
+ <style>
7
+ body { text-align: center;}
8
+ h1 { font-size: 50px; text-align: center }
9
+ span[frown] { transform: rotate(90deg); display:inline-block; color: #bbb; }
10
+ body { font: 20px Constantia, 'Hoefler Text', "Adobe Caslon Pro", Baskerville, Georgia, Times, serif; color: #999; text-shadow: 2px 2px 2px rgba(200, 200, 200, 0.5); }
11
+ ::-moz-selection{ background:#FF5E99; color:#fff; }
12
+ ::selection { background:#FF5E99; color:#fff; }
13
+ article {display:block; text-align: left; width: 500px; margin: 0 auto; }
14
+
15
+ a { color: rgb(36, 109, 56); text-decoration:none; }
16
+ a:hover { color: rgb(96, 73, 141) ; text-shadow: 2px 2px 2px rgba(36, 109, 56, 0.5); }
17
+ </style>
18
+ </head>
19
+ <body>
20
+ <article>
21
+ <h1>Not found <span frown>:(</span></h1>
22
+ <div>
23
+ <p>Sorry, but the page you were trying to view does not exist.</p>
24
+ <p>It looks like this was the result of either:</p>
25
+ <ul>
26
+ <li>a mistyped address</li>
27
+ <li>an out-of-date link</li>
28
+ </ul>
29
+ </div>
30
+
31
+ <script>
32
+ var GOOG_FIXURL_LANG = (navigator.language || '').slice(0,2),
33
+ GOOG_FIXURL_SITE = location.host;
34
+ </script>
35
+ <script src="http://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js"></script>
36
+ </article>
37
+ </body>
38
+ </html>
@@ -17,9 +17,9 @@
17
17
  <allow-http-request-headers-from domain="*" headers="*" secure="false"/>
18
18
  -->
19
19
  <!--
20
- If you host a crossdomain.xml file with allow-access-from domain=“*”
20
+ If you host a crossdomain.xml file with allow-access-from domain="*"
21
21
  and don’t understand all of the points described here, you probably
22
22
  have a nasty security vulnerability. ~ simon willison
23
23
  -->
24
24
 
25
- </cross-domain-policy>
25
+ </cross-domain-policy>
@@ -91,7 +91,7 @@ AddEncoding gzip svgz
91
91
  AddType application/vnd.ms-fontobject eot
92
92
  AddType font/truetype ttf
93
93
  AddType font/opentype otf
94
- AddType application/x-font-woff woff
94
+ AddType application/x-font-woff woff
95
95
 
96
96
  # assorted types
97
97
  AddType image/x-icon ico
@@ -215,7 +215,7 @@ AddType application/octet-stream safariextz
215
215
  # webfonts
216
216
  ExpiresByType font/truetype "access plus 1 month"
217
217
  ExpiresByType font/opentype "access plus 1 month"
218
- ExpiresByType font/woff "access plus 1 month"
218
+ ExpiresByType application/x-font-woff "access plus 1 month"
219
219
  ExpiresByType image/svg+xml "access plus 1 month"
220
220
  ExpiresByType application/vnd.ms-fontobject "access plus 1 month"
221
221
 
@@ -327,6 +327,61 @@ FileETag None
327
327
 
328
328
 
329
329
 
330
+ # ----------------------------------------------------------------------
331
+ # Add/remove trailing slash to (non-file) URLs
332
+ # ----------------------------------------------------------------------
333
+
334
+ # Google treats URLs with and without trailing slashes separately.
335
+ # Forcing a trailing slash is usually preferred, but all that's really
336
+ # important is that one correctly redirects to the other.
337
+
338
+ # By default option 1 (force trailing slash) is activated.
339
+ # http://googlewebmastercentral.blogspot.com/2010/04/to-slash-or-not-to-slash.html
340
+ # http://www.alistapart.com/articles/slashforward/
341
+ # http://httpd.apache.org/docs/2.0/misc/rewriteguide.html#url Trailing Slash Problem
342
+
343
+ # ----------------------------------------------------------------------
344
+
345
+ # Option 1:
346
+ # Rewrite "domain.com/foo -> domain.com/foo/"
347
+
348
+ <IfModule mod_rewrite.c>
349
+ RewriteCond %{REQUEST_FILENAME} !-f
350
+ RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/|#(.*))$
351
+ RewriteRule ^(.*)$ /$1/ [R=301,L]
352
+ </IfModule>
353
+
354
+ # ----------------------------------------------------------------------
355
+
356
+ # Option 2:
357
+ # Rewrite "domain.com/foo/ -> domain.com/foo"
358
+
359
+ #<IfModule mod_rewrite.c>
360
+ # RewriteRule ^(.*)/$ /$1 [R=301,L]
361
+ #</IfModule>
362
+
363
+
364
+
365
+ # ----------------------------------------------------------------------
366
+ # Built-in filename-based cache busting
367
+ # ----------------------------------------------------------------------
368
+
369
+ # If you're not using the build script to manage your filename version revving,
370
+ # you might want to consider enabling this, which will route requests for
371
+ # /css/style.20110203.css to /css/style.css
372
+
373
+ # To understand why this is important and a better idea than all.css?v1231,
374
+ # read: github.com/paulirish/html5-boilerplate/wiki/Version-Control-with-Cachebusting
375
+
376
+ # Uncomment to enable.
377
+ # <IfModule mod_rewrite.c>
378
+ # RewriteCond %{REQUEST_FILENAME} !-f
379
+ # RewriteCond %{REQUEST_FILENAME} !-d
380
+ # RewriteRule ^(.+)\.(\d+)\.(js|css|png|jpg|gif)$ $1.$3 [L]
381
+ # </IfModule>
382
+
383
+
384
+
330
385
  # ----------------------------------------------------------------------
331
386
  # Prevent SSL cert warnings
332
387
  # ----------------------------------------------------------------------
@@ -337,7 +392,7 @@ FileETag None
337
392
 
338
393
  # <IfModule mod_rewrite.c>
339
394
  # RewriteCond %{SERVER_PORT} !^443
340
- # RewriteRule (.*) https://example-domain-please-change.com.com/$1 [R=301,L]
395
+ # RewriteRule (.*) https://example-domain-please-change-me.com/$1 [R=301,L]
341
396
  # </IfModule>
342
397
 
343
398
 
@@ -388,7 +443,7 @@ AddCharset utf-8 .html .css .js .xml .json .rss
388
443
  # "-Indexes" will have Apache block users from browsing folders without a default document
389
444
  # Usually you should leave this activated, because you shouldn't allow everybody to surf through
390
445
  # every folder on your server (which includes rather private places like CMS system folders).
391
- # Options -Indexes
446
+ Options -Indexes
392
447
 
393
448
 
394
449
  # Block access to "hidden" directories whose names begin with a period. This
@@ -416,5 +471,8 @@ AddCharset utf-8 .html .css .js .xml .json .rss
416
471
  # php_flag register_globals Off
417
472
 
418
473
 
419
-
474
+ # Increase cookie security
475
+ <IfModule php5_module>
476
+ php_value session.cookie_httponly true
477
+ </IfModule>
420
478