From fd2607548b9faad0691e31e237086f12a02af130 Mon Sep 17 00:00:00 2001 From: vladfaust Date: Tue, 20 Oct 2015 20:21:03 +0300 Subject: [PATCH] Initial commit --- .gitignore | 20 ++ Gemfile | 22 ++ Gemfile.lock | 160 +++++++++++ config.rb | 85 ++++++ source/_gtm.haml | 10 + source/images/background.png | Bin 0 -> 2726 bytes source/images/socials/facebook.svg | 1 + source/images/socials/github.svg | 1 + source/images/socials/google_play.svg | 1 + source/images/socials/instagram.svg | 1 + source/images/socials/skype.svg | 1 + source/images/socials/telegram.svg | 1 + source/images/socials/twitter.svg | 1 + source/images/socials/vkontakte.svg | 1 + source/index.haml | 19 ++ source/javascripts/all.js | 18 ++ source/layouts/layout.haml | 11 + source/stylesheets/all.sass | 30 +++ source/stylesheets/normalize.css | 375 ++++++++++++++++++++++++++ 19 files changed, 758 insertions(+) create mode 100644 .gitignore create mode 100644 Gemfile create mode 100644 Gemfile.lock create mode 100644 config.rb create mode 100644 source/_gtm.haml create mode 100644 source/images/background.png create mode 100644 source/images/socials/facebook.svg create mode 100644 source/images/socials/github.svg create mode 100644 source/images/socials/google_play.svg create mode 100644 source/images/socials/instagram.svg create mode 100644 source/images/socials/skype.svg create mode 100644 source/images/socials/telegram.svg create mode 100644 source/images/socials/twitter.svg create mode 100644 source/images/socials/vkontakte.svg create mode 100644 source/index.haml create mode 100644 source/javascripts/all.js create mode 100644 source/layouts/layout.haml create mode 100644 source/stylesheets/all.sass create mode 100644 source/stylesheets/normalize.css diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e62da08 --- /dev/null +++ b/.gitignore @@ -0,0 +1,20 @@ +# See http://help.github.com/ignore-files/ for more about ignoring files. +# +# If you find yourself ignoring temporary files generated by your text editor +# or operating system, you probably want to add a global ignore instead: +# git config --global core.excludesfile ~/.gitignore_global + +# Ignore bundler config +/.bundle + +# Ignore the build directory +/build + +# Ignore cache +/.sass-cache +/.cache + +# Ignore .DS_store file +.DS_Store + +.idea diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..f073ecd --- /dev/null +++ b/Gemfile @@ -0,0 +1,22 @@ +# If you do not have OpenSSL installed, update +# the following line to use "http://" instead +source 'https://rubygems.org' + +gem "middleman", "~>3.4.0" + +# Live-reloading plugin +gem "middleman-livereload", "~> 3.1.0" + +# For faster file watcher updates on Windows: +gem "wdm", "~> 0.1.0", :platforms => [:mswin, :mingw] + +# Windows does not come with time zone data +gem "tzinfo-data", platforms: [:mswin, :mingw, :jruby] + +gem 'bootstrap-sass', require: false +gem 'jquery-middleman' +gem 'sass' +gem 'haml' +gem 'coffee-script' + +gem 'middleman-deploy', '~> 1.0' \ No newline at end of file diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000..ebe1aab --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,160 @@ +GEM + remote: https://rubygems.org/ + specs: + activesupport (4.2.4) + i18n (~> 0.7) + json (~> 1.7, >= 1.7.7) + minitest (~> 5.1) + thread_safe (~> 0.3, >= 0.3.4) + tzinfo (~> 1.1) + autoprefixer-rails (6.0.3) + execjs + json + bootstrap-sass (3.3.5.1) + autoprefixer-rails (>= 5.0.0.1) + sass (>= 3.3.0) + capybara (2.4.4) + mime-types (>= 1.16) + nokogiri (>= 1.3.3) + rack (>= 1.0.0) + rack-test (>= 0.5.4) + xpath (~> 2.0) + chunky_png (1.3.4) + coffee-script (2.4.1) + coffee-script-source + execjs + coffee-script-source (1.9.1.1) + compass (1.0.3) + chunky_png (~> 1.2) + compass-core (~> 1.0.2) + compass-import-once (~> 1.0.5) + rb-fsevent (>= 0.9.3) + rb-inotify (>= 0.9) + sass (>= 3.3.13, < 3.5) + compass-core (1.0.3) + multi_json (~> 1.0) + sass (>= 3.3.0, < 3.5) + compass-import-once (1.0.5) + sass (>= 3.2, < 3.5) + em-websocket (0.5.1) + eventmachine (>= 0.12.9) + http_parser.rb (~> 0.6.0) + erubis (2.7.0) + eventmachine (1.0.8) + execjs (2.6.0) + ffi (1.9.10) + haml (4.0.7) + tilt + hike (1.2.3) + hooks (0.4.1) + uber (~> 0.0.14) + http_parser.rb (0.6.0) + i18n (0.7.0) + jquery-middleman (3.1.2) + thor (>= 0.14, < 2.0) + json (1.8.3) + kramdown (1.9.0) + listen (3.0.3) + rb-fsevent (>= 0.9.3) + rb-inotify (>= 0.9) + middleman (3.4.0) + coffee-script (~> 2.2) + compass (>= 1.0.0, < 2.0.0) + compass-import-once (= 1.0.5) + execjs (~> 2.0) + haml (>= 4.0.5) + kramdown (~> 1.2) + middleman-core (= 3.4.0) + middleman-sprockets (>= 3.1.2) + sass (>= 3.4.0, < 4.0) + uglifier (~> 2.5) + middleman-core (3.4.0) + activesupport (~> 4.1) + bundler (~> 1.1) + capybara (~> 2.4.4) + erubis + hooks (~> 0.3) + i18n (~> 0.7.0) + listen (~> 3.0.3) + padrino-helpers (~> 0.12.3) + rack (>= 1.4.5, < 2.0) + thor (>= 0.15.2, < 2.0) + tilt (~> 1.4.1, < 2.0) + middleman-deploy (1.0.0) + middleman-core (>= 3.2) + net-sftp + ptools + middleman-livereload (3.1.1) + em-websocket (>= 0.2.0) + middleman-core (>= 3.0.2) + multi_json (~> 1.0) + rack-livereload + middleman-sprockets (3.4.2) + middleman-core (>= 3.3) + sprockets (~> 2.12.1) + sprockets-helpers (~> 1.1.0) + sprockets-sass (~> 1.3.0) + mime-types (2.6.2) + mini_portile (0.6.2) + minitest (5.8.1) + multi_json (1.11.2) + net-sftp (2.1.2) + net-ssh (>= 2.6.5) + net-ssh (3.0.1) + nokogiri (1.6.6.2) + mini_portile (~> 0.6.0) + padrino-helpers (0.12.5) + i18n (~> 0.6, >= 0.6.7) + padrino-support (= 0.12.5) + tilt (~> 1.4.1) + padrino-support (0.12.5) + activesupport (>= 3.1) + ptools (1.3.3) + rack (1.6.4) + rack-livereload (0.3.16) + rack + rack-test (0.6.3) + rack (>= 1.0) + rb-fsevent (0.9.6) + rb-inotify (0.9.5) + ffi (>= 0.5.0) + sass (3.4.19) + sprockets (2.12.4) + hike (~> 1.2) + multi_json (~> 1.0) + rack (~> 1.0) + tilt (~> 1.1, != 1.3.0) + sprockets-helpers (1.1.0) + sprockets (~> 2.0) + sprockets-sass (1.3.1) + sprockets (~> 2.0) + tilt (~> 1.1) + thor (0.19.1) + thread_safe (0.3.5) + tilt (1.4.1) + tzinfo (1.2.2) + thread_safe (~> 0.1) + uber (0.0.15) + uglifier (2.7.2) + execjs (>= 0.3.0) + json (>= 1.8.0) + xpath (2.0.0) + nokogiri (~> 1.3) + +PLATFORMS + ruby + +DEPENDENCIES + bootstrap-sass + coffee-script + haml + jquery-middleman + middleman (~> 3.4.0) + middleman-deploy (~> 1.0) + middleman-livereload (~> 3.1.0) + sass + tzinfo-data + wdm (~> 0.1.0) + +BUNDLED WITH + 1.10.6 diff --git a/config.rb b/config.rb new file mode 100644 index 0000000..30fd685 --- /dev/null +++ b/config.rb @@ -0,0 +1,85 @@ +### +# Compass +### + +# Change Compass configuration +# compass_config do |config| +# config.output_style = :compact +# end + +### +# Page options, layouts, aliases and proxies +### + +# Per-page layout changes: +# +# With no layout +# page "/path/to/file.html", :layout => false +# +# With alternative layout +# page "/path/to/file.html", :layout => :otherlayout +# +# A path which all have the same layout +# with_layout :admin do +# page "/admin/*" +# end + +# Proxy pages (https://middlemanapp.com/advanced/dynamic_pages/) +# proxy "/this-page-has-no-template.html", "/template-file.html", :locals => { +# :which_fake_page => "Rendering a fake page with a local variable" } + +### +# Helpers +### + +# Automatic image dimensions on image_tag helper +activate :automatic_image_sizes + +# Reload the browser automatically whenever files change +configure :development do + activate :livereload +end + +# Methods defined in the helpers block are available in templates +# helpers do +# def some_helper +# "Helping" +# end +# end + +set :css_dir, 'stylesheets' + +set :js_dir, 'javascripts' + +set :images_dir, 'images' + +# Build-specific configuration +configure :build do + # For example, change the Compass output style for deployment + # activate :minify_css + + # Minify Javascript on build + # activate :minify_javascript + + # Enable cache buster + # activate :asset_hash + + # Use relative URLs + # activate :relative_assets + + # Or use a different image path + # set :http_prefix, "/Content/images/" +end + +activate :deploy do |deploy| + deploy.deploy_method = :git + # Optional Settings + # deploy.remote = 'custom-remote' # remote name or git url, default: origin + deploy.branch = 'master' # default: gh-pages + # deploy.strategy = :submodule # commit strategy: can be :force_push or :submodule, default: :force_push + # deploy.commit_message = 'custom-message' # commit message (can be empty), default: Automated commit at `timestamp` by middleman-deploy `version` +end + +# Variables +@socials = { github: 'https://github.com/vladfaust', vkontakte: 'https://vk.com/vladfaust', telegram: 'https://telegram.me/vladfaust', instagram: 'https://instagram.com/vladfaust', google_play: 'https://play.google.com/store/apps/developer?id=VLADISLAV+FAUST', twitter: 'https://twitter.com/vladfaust', email: 'hello@vladfaust.com' } +set :socials, @socials diff --git a/source/_gtm.haml b/source/_gtm.haml new file mode 100644 index 0000000..113baa8 --- /dev/null +++ b/source/_gtm.haml @@ -0,0 +1,10 @@ +/ Google Tag Manager +%noscript + %iframe{:height => "0", :src => "//www.googletagmanager.com/ns.html?id=GTM-MRZ5F7", :style => "display:none;visibility:hidden", :width => "0"} +:javascript + (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': + new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], + j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= + '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); + })(window,document,'script','dataLayer','GTM-MRZ5F7'); +/ End Google Tag Manager \ No newline at end of file diff --git a/source/images/background.png b/source/images/background.png new file mode 100644 index 0000000000000000000000000000000000000000..8681d44f7954cf98014bf87abb43af7ee7f63cd7 GIT binary patch literal 2726 zcmaJ@c|4SB8=iX?xY`8m9>;X zAdsr73*J+izbiY$Ma$x;zd(900>88g#r*)1|~Xf5|0_u+YOi9vg!|L`O%%qs`zfP8b4(Mx$3XOif`j1dJ5ldJnx z0S|Dg96FmvXE7nGij+`RBo7OfRr>c880>GdOzxL9$r^^>Q`iU;9JzX>uRtR4|3ev! zZ)h&h6Zogz|0&ER3)ld{6X3EUIaJx;4(YC@Vq=^*0ENfmkXfvwU%Tjjn8jmp53|@1 zCoc;KkwT?2SL4rkA`#=t%(`qK^fc<7TReBBr@OX*_HT4a#!K*v4Jm3z$^)*9jEr2ldez>}?n-QVY;1XE zW@h!DD@z|{X6O>>la;HH$4{K-{Iv3RLD(TZrt{n4;>ybF;;CI0!P@pu%QnmnzP2>( z4||zK3=R&Ks_vPjjC4G=?dliz?8k>mhfYxdm*`i4qxRe4rDL$5ln~l_zKE05r&hZ$~P>AGsam0Foc(=}@=8Jc<+6F#_H%gddXhDtW%pwEB&RCh=}aeR;b zt`yR%+}qlUC~0c{6jQ-*`ZN);)T?7ud2W3D1o;4}WxW#iRfJz)jDlL>8}X*xCeY=h z4{t?Y%1cS}2u&hlCQP_H^*Y6s*7}PY9^f5OK@1qUIDR~DsibjP?y^haqX}Kj&4$NnMjlS_ zF;4$77>lnRDR5XpHw?9y7GZYh>x_<>RGdW@oL75-+Iv9iW$+V>tv-0Tx1l7(sy%rY zes>@?S#ILaf6ii$nmh9xZalk2vn%&?TOW(wqw;&8NAhu)G72YsNZjEc7nvTZBsIFy zMoN0qzDCfg*ip5y!>KsTCJp~|a%lT?hc(7FgpYBe4Rx(awzo0_wne=H8*oDSZLe z+AVK#H`CiXwWdJV_1J^$O08vL?fC4Ie5*Z!t-n3Id@}*E4|PeNtc$EFEj+U8+3g^I z2lCHe8l!iAC;&Byc945U*5GS_e#OR?;q{tLyOojGI(lO7phwdHo#lfJ7;;|Wu(4TozzT$QhGYYYS?VUc}Dae*= z3VE!9%~*TUTeu}--OlCMa$elK)TDTZj{69?ZhWSftZ4;O4zF(P->qJH$0Cj5%DgeW!LkuXF3tD)a$vZ z7X65sGE@cyfW`04q^Y{0LO?$O2Rkr>1T<&J76_gUU!HJ zPR;oayVw<71~;q1)DPO69)KMEBdt+&efF=(FSR0Ob}7j9_qhrWekj&ACN!T{wWzlf zH*mqDZv$d2%@>9GBgV**ob5h2l0~l^ zd2zr30{b*$HuabJO=)Xxt{pf%qh+H`I1EUC4zJG*sY~f2PUQz36K^@267;k)N2^U( zU$43KVwTqgAY4#AP=+Qe;ir$>P3>yjOCV{REzQT}-W16PZR6TRHb-i+w|FQ&E3BJT z;JEY{XPV^p{yew~apdq|$SYB5eBfCn#j0 zB3Y1yj3`b|V>C6i%%ZR!$~z^TS5(%3#V~f(iLufwn;<7ifN(e&mb&k>SgjpJ#9nI|1Olj@gxJltn-feE7S_g6vk Ypjdc_C!v4Qef7`Ll|aImJBGyn1ssN`fdBvi literal 0 HcmV?d00001 diff --git a/source/images/socials/facebook.svg b/source/images/socials/facebook.svg new file mode 100644 index 0000000..5540720 --- /dev/null +++ b/source/images/socials/facebook.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/source/images/socials/github.svg b/source/images/socials/github.svg new file mode 100644 index 0000000..a3d2657 --- /dev/null +++ b/source/images/socials/github.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/source/images/socials/google_play.svg b/source/images/socials/google_play.svg new file mode 100644 index 0000000..1533ae7 --- /dev/null +++ b/source/images/socials/google_play.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/source/images/socials/instagram.svg b/source/images/socials/instagram.svg new file mode 100644 index 0000000..32d623e --- /dev/null +++ b/source/images/socials/instagram.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/source/images/socials/skype.svg b/source/images/socials/skype.svg new file mode 100644 index 0000000..87cfc0b --- /dev/null +++ b/source/images/socials/skype.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/source/images/socials/telegram.svg b/source/images/socials/telegram.svg new file mode 100644 index 0000000..fd8ad07 --- /dev/null +++ b/source/images/socials/telegram.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/source/images/socials/twitter.svg b/source/images/socials/twitter.svg new file mode 100644 index 0000000..8ae05b7 --- /dev/null +++ b/source/images/socials/twitter.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/source/images/socials/vkontakte.svg b/source/images/socials/vkontakte.svg new file mode 100644 index 0000000..779f1fa --- /dev/null +++ b/source/images/socials/vkontakte.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/source/index.haml b/source/index.haml new file mode 100644 index 0000000..cb6cd7f --- /dev/null +++ b/source/index.haml @@ -0,0 +1,19 @@ +;;; + "title": "Vlad Faust | Vladislav Faust | Vlad Faust.com" +;;; + +.container + #hi.center-block + %h1= "Hi, my name is #{ link_to "Vlad Faust", '#' }," + %h2= "and I'm the #{content_tag :em, 'next big startup'} founder." + %hr + #socials.center-block + = link_to (image_tag image_path('socials/github.svg'), class: 'social-icon', id: 'github'), socials[:github], target: :blank, class: 'social-link', alt: socials[:github] + = link_to (image_tag image_path('socials/twitter.svg'), class: 'social-icon', id: 'twitter'), socials[:twitter], target: :blank, class: 'social-link', alt: socials[:twitter] + = link_to (image_tag image_path('socials/telegram.svg'), class: 'social-icon', id: 'telegram'), socials[:telegram], target: :blank, class: 'social-link', alt: socials[:telegram] + = link_to (image_tag image_path('socials/vkontakte.svg'), class: 'social-icon', id: 'vkontakte'), socials[:vkontakte], target: :blank, class: 'social-link', alt: socials[:vkontakte] + = link_to (image_tag image_path('socials/google_play.svg'), class: 'social-icon', id: 'google-play'), socials[:google_play], target: :blank, class: 'social-link', alt: socials[:google_play] + = link_to (image_tag image_path('socials/instagram.svg'), class: 'social-icon', id: 'instagram'), socials[:instagram], target: :blank, class: 'social-link', alt: socials[:instagram] + %hr + #contact.center-block + %h4= "Or email me at #{ mail_to socials[:email], socials[:email], id: 'mailto' }" \ No newline at end of file diff --git a/source/javascripts/all.js b/source/javascripts/all.js new file mode 100644 index 0000000..10e4c73 --- /dev/null +++ b/source/javascripts/all.js @@ -0,0 +1,18 @@ +//= require jquery +//= require_tree . + +function extractDomain(url) { + var domain; + //find & remove protocol (http, ftp, etc.) and get domain + if (url.indexOf("://") > -1) { + domain = url.split('/')[2]; + } + else { + domain = url.split('/')[0]; + } + + //find & remove port number + domain = domain.split(':')[0]; + + return domain; +} diff --git a/source/layouts/layout.haml b/source/layouts/layout.haml new file mode 100644 index 0000000..1a6da23 --- /dev/null +++ b/source/layouts/layout.haml @@ -0,0 +1,11 @@ +!!! +%html + %head + %meta{:charset => "utf-8"}/ + %meta{:content => "IE=edge,chrome=1", "http-equiv" => "X-UA-Compatible"}/ + %title= current_page.data.title || "The Middleman" + = stylesheet_link_tag "all" + = javascript_include_tag "all" + = partial 'gtm' + %body.full-screen-height.vertical-center + = yield \ No newline at end of file diff --git a/source/stylesheets/all.sass b/source/stylesheets/all.sass new file mode 100644 index 0000000..9edf9db --- /dev/null +++ b/source/stylesheets/all.sass @@ -0,0 +1,30 @@ +@charset "utf-8" + +@import "normalize.css" +@import "bootstrap" + +#hi, #contact, #socials + text-align: center + +#hi h2 + margin-top: -0.2em + +#socials + .social-link + &:not(:first-child) + margin-left: 0.2em + + .social-icon + height: 48px + +#contact + margin-bottom: 50px + +.vertical-center + display: flex + align-items: center + justify-content: center + +.full-screen-height + min-height: 100% + min-height: 100vh \ No newline at end of file diff --git a/source/stylesheets/normalize.css b/source/stylesheets/normalize.css new file mode 100644 index 0000000..73abb76 --- /dev/null +++ b/source/stylesheets/normalize.css @@ -0,0 +1,375 @@ +/*! normalize.css v2.0.1 | MIT License | git.io/normalize */ + +/* ========================================================================== + HTML5 display definitions + ========================================================================== */ + +/* + * Corrects `block` display not defined in IE 8/9. + */ + +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +nav, +section, +summary { + display: block; +} + +/* + * Corrects `inline-block` display not defined in IE 8/9. + */ + +audio, +canvas, +video { + display: inline-block; +} + +/* + * Prevents modern browsers from displaying `audio` without controls. + * Remove excess height in iOS 5 devices. + */ + +audio:not([controls]) { + display: none; + height: 0; +} + +/* + * Addresses styling for `hidden` attribute not present in IE 8/9. + */ + +[hidden] { + display: none; +} + +/* ========================================================================== + Base + ========================================================================== */ + +/* + * 1. Sets default font family to sans-serif. + * 2. Prevents iOS text size adjust after orientation change, without disabling + * user zoom. + */ + +html { + font-family: sans-serif; /* 1 */ + -webkit-text-size-adjust: 100%; /* 2 */ + -ms-text-size-adjust: 100%; /* 2 */ +} + +/* + * Removes default margin. + */ + +body { + margin: 0; +} + +/* ========================================================================== + Links + ========================================================================== */ + +/* + * Addresses `outline` inconsistency between Chrome and other browsers. + */ + +a:focus { + outline: thin dotted; +} + +/* + * Improves readability when focused and also mouse hovered in all browsers. + */ + +a:active, +a:hover { + outline: 0; +} + +/* ========================================================================== + Typography + ========================================================================== */ + +/* + * Addresses `h1` font sizes within `section` and `article` in Firefox 4+, + * Safari 5, and Chrome. + */ + +h1 { + font-size: 2em; +} + +/* + * Addresses styling not present in IE 8/9, Safari 5, and Chrome. + */ + +abbr[title] { + border-bottom: 1px dotted; +} + +/* + * Addresses style set to `bolder` in Firefox 4+, Safari 5, and Chrome. + */ + +b, +strong { + font-weight: bold; +} + +/* + * Addresses styling not present in Safari 5 and Chrome. + */ + +dfn { + font-style: italic; +} + +/* + * Addresses styling not present in IE 8/9. + */ + +mark { + background: #ff0; + color: #000; +} + + +/* + * Corrects font family set oddly in Safari 5 and Chrome. + */ + +code, +kbd, +pre, +samp { + font-family: monospace, serif; + font-size: 1em; +} + +/* + * Improves readability of pre-formatted text in all browsers. + */ + +pre { + white-space: pre; + white-space: pre-wrap; + word-wrap: break-word; +} + +/* + * Sets consistent quote types. + */ + +q { + quotes: "\201C" "\201D" "\2018" "\2019"; +} + +/* + * Addresses inconsistent and variable font size in all browsers. + */ + +small { + font-size: 80%; +} + +/* + * Prevents `sub` and `sup` affecting `line-height` in all browsers. + */ + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sup { + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +/* ========================================================================== + Embedded content + ========================================================================== */ + +/* + * Removes border when inside `a` element in IE 8/9. + */ + +img { + border: 0; +} + +/* + * Corrects overflow displayed oddly in IE 9. + */ + +svg:not(:root) { + overflow: hidden; +} + +/* ========================================================================== + Figures + ========================================================================== */ + +/* + * Addresses margin not present in IE 8/9 and Safari 5. + */ + +figure { + margin: 0; +} + +/* ========================================================================== + Forms + ========================================================================== */ + +/* + * Define consistent border, margin, and padding. + */ + +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} + +/* + * 1. Corrects color not being inherited in IE 8/9. + * 2. Remove padding so people aren't caught out if they zero out fieldsets. + */ + +legend { + border: 0; /* 1 */ + padding: 0; /* 2 */ +} + +/* + * 1. Corrects font family not being inherited in all browsers. + * 2. Corrects font size not being inherited in all browsers. + * 3. Addresses margins set differently in Firefox 4+, Safari 5, and Chrome + */ + +button, +input, +select, +textarea { + font-family: inherit; /* 1 */ + font-size: 100%; /* 2 */ + margin: 0; /* 3 */ +} + +/* + * Addresses Firefox 4+ setting `line-height` on `input` using `!important` in + * the UA stylesheet. + */ + +button, +input { + line-height: normal; +} + +/* + * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` + * and `video` controls. + * 2. Corrects inability to style clickable `input` types in iOS. + * 3. Improves usability and consistency of cursor style between image-type + * `input` and others. + */ + +button, +html input[type="button"], /* 1 */ +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; /* 2 */ + cursor: pointer; /* 3 */ +} + +/* + * Re-set default cursor for disabled elements. + */ + +button[disabled], +input[disabled] { + cursor: default; +} + +/* + * 1. Addresses box sizing set to `content-box` in IE 8/9. + * 2. Removes excess padding in IE 8/9. + */ + +input[type="checkbox"], +input[type="radio"] { + box-sizing: border-box; /* 1 */ + padding: 0; /* 2 */ +} + +/* + * 1. Addresses `appearance` set to `searchfield` in Safari 5 and Chrome. + * 2. Addresses `box-sizing` set to `border-box` in Safari 5 and Chrome + * (include `-moz` to future-proof). + */ + +input[type="search"] { + -webkit-appearance: textfield; /* 1 */ + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; /* 2 */ + box-sizing: content-box; +} + +/* + * Removes inner padding and search cancel button in Safari 5 and Chrome + * on OS X. + */ + +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +/* + * Removes inner padding and border in Firefox 4+. + */ + +button::-moz-focus-inner, +input::-moz-focus-inner { + border: 0; + padding: 0; +} + +/* + * 1. Removes default vertical scrollbar in IE 8/9. + * 2. Improves readability and alignment in all browsers. + */ + +textarea { + overflow: auto; /* 1 */ + vertical-align: top; /* 2 */ +} + +/* ========================================================================== + Tables + ========================================================================== */ + +/* + * Remove most spacing between table cells. + */ + +table { + border-collapse: collapse; + border-spacing: 0; +} \ No newline at end of file