From 848ca6e31562fc65da891cce9046853bd16564eb Mon Sep 17 00:00:00 2001 From: "Patrick H. Lauke" Date: Wed, 2 Jan 2013 22:39:21 +0000 Subject: Basic keyboard accessibility CSS tweaks Mostly doubling-up :hover styles to also cover :focus, as a first step to making the framework more keyboard-friendly. Additionally, fixed two small markup issues in the docs/examples to make the "Learn more" large primary button-styled links keyboard-focusable (as without href they're treated as non-tabable anchors). --- docs/assets/css/bootstrap-responsive.css | 215 +++++++++++-------------------- 1 file changed, 76 insertions(+), 139 deletions(-) (limited to 'docs/assets/css/bootstrap-responsive.css') diff --git a/docs/assets/css/bootstrap-responsive.css b/docs/assets/css/bootstrap-responsive.css index dee5dc608..2b17b7978 100644 --- a/docs/assets/css/bootstrap-responsive.css +++ b/docs/assets/css/bootstrap-responsive.css @@ -7,22 +7,18 @@ * * Designed and built with all the love in the world @twitter by @mdo and @fat. */ - .clearfix { *zoom: 1; } - .clearfix:before, .clearfix:after { display: table; - line-height: 0; content: ""; + line-height: 0; } - .clearfix:after { clear: both; } - .hide-text { font: 0/0 a; color: transparent; @@ -30,41 +26,33 @@ background-color: transparent; border: 0; } - .input-block-level { display: block; width: 100%; min-height: 30px; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } - @-ms-viewport { width: device-width; } - .hidden { display: none; visibility: hidden; } - .visible-phone { display: none !important; } - .visible-tablet { display: none !important; } - .hidden-desktop { display: none !important; } - .visible-desktop { display: inherit !important; } - @media (min-width: 768px) and (max-width: 979px) { .hidden-desktop { display: inherit !important; @@ -79,7 +67,6 @@ display: none !important; } } - @media (max-width: 767px) { .hidden-desktop { display: inherit !important; @@ -94,7 +81,6 @@ display: none !important; } } - @media (min-width: 1200px) { .row { margin-left: -30px; @@ -103,8 +89,8 @@ .row:before, .row:after { display: table; - line-height: 0; content: ""; + line-height: 0; } .row:after { clear: both; @@ -199,22 +185,22 @@ .row-fluid:before, .row-fluid:after { display: table; - line-height: 0; content: ""; + line-height: 0; } .row-fluid:after { clear: both; } .row-fluid [class*="span"] { display: block; - float: left; width: 100%; min-height: 30px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + float: left; margin-left: 2.564102564102564%; *margin-left: 2.5109110747408616%; - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; } .row-fluid [class*="span"]:first-child { margin-left: 0; @@ -374,64 +360,40 @@ .controls-row [class*="span"] + [class*="span"] { margin-left: 30px; } - input.span12, - textarea.span12, - .uneditable-input.span12 { + input.span12, textarea.span12, .uneditable-input.span12 { width: 1156px; } - input.span11, - textarea.span11, - .uneditable-input.span11 { + input.span11, textarea.span11, .uneditable-input.span11 { width: 1056px; } - input.span10, - textarea.span10, - .uneditable-input.span10 { + input.span10, textarea.span10, .uneditable-input.span10 { width: 956px; } - input.span9, - textarea.span9, - .uneditable-input.span9 { + input.span9, textarea.span9, .uneditable-input.span9 { width: 856px; } - input.span8, - textarea.span8, - .uneditable-input.span8 { + input.span8, textarea.span8, .uneditable-input.span8 { width: 756px; } - input.span7, - textarea.span7, - .uneditable-input.span7 { + input.span7, textarea.span7, .uneditable-input.span7 { width: 656px; } - input.span6, - textarea.span6, - .uneditable-input.span6 { + input.span6, textarea.span6, .uneditable-input.span6 { width: 556px; } - input.span5, - textarea.span5, - .uneditable-input.span5 { + input.span5, textarea.span5, .uneditable-input.span5 { width: 456px; } - input.span4, - textarea.span4, - .uneditable-input.span4 { + input.span4, textarea.span4, .uneditable-input.span4 { width: 356px; } - input.span3, - textarea.span3, - .uneditable-input.span3 { + input.span3, textarea.span3, .uneditable-input.span3 { width: 256px; } - input.span2, - textarea.span2, - .uneditable-input.span2 { + input.span2, textarea.span2, .uneditable-input.span2 { width: 156px; } - input.span1, - textarea.span1, - .uneditable-input.span1 { + input.span1, textarea.span1, .uneditable-input.span1 { width: 56px; } .thumbnails { @@ -444,7 +406,6 @@ margin-left: 0; } } - @media (min-width: 768px) and (max-width: 979px) { .row { margin-left: -20px; @@ -453,8 +414,8 @@ .row:before, .row:after { display: table; - line-height: 0; content: ""; + line-height: 0; } .row:after { clear: both; @@ -549,22 +510,22 @@ .row-fluid:before, .row-fluid:after { display: table; - line-height: 0; content: ""; + line-height: 0; } .row-fluid:after { clear: both; } .row-fluid [class*="span"] { display: block; - float: left; width: 100%; min-height: 30px; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + float: left; margin-left: 2.7624309392265194%; *margin-left: 2.709239449864817%; - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; } .row-fluid [class*="span"]:first-child { margin-left: 0; @@ -724,86 +685,61 @@ .controls-row [class*="span"] + [class*="span"] { margin-left: 20px; } - input.span12, - textarea.span12, - .uneditable-input.span12 { + input.span12, textarea.span12, .uneditable-input.span12 { width: 710px; } - input.span11, - textarea.span11, - .uneditable-input.span11 { + input.span11, textarea.span11, .uneditable-input.span11 { width: 648px; } - input.span10, - textarea.span10, - .uneditable-input.span10 { + input.span10, textarea.span10, .uneditable-input.span10 { width: 586px; } - input.span9, - textarea.span9, - .uneditable-input.span9 { + input.span9, textarea.span9, .uneditable-input.span9 { width: 524px; } - input.span8, - textarea.span8, - .uneditable-input.span8 { + input.span8, textarea.span8, .uneditable-input.span8 { width: 462px; } - input.span7, - textarea.span7, - .uneditable-input.span7 { + input.span7, textarea.span7, .uneditable-input.span7 { width: 400px; } - input.span6, - textarea.span6, - .uneditable-input.span6 { + input.span6, textarea.span6, .uneditable-input.span6 { width: 338px; } - input.span5, - textarea.span5, - .uneditable-input.span5 { + input.span5, textarea.span5, .uneditable-input.span5 { width: 276px; } - input.span4, - textarea.span4, - .uneditable-input.span4 { + input.span4, textarea.span4, .uneditable-input.span4 { width: 214px; } - input.span3, - textarea.span3, - .uneditable-input.span3 { + input.span3, textarea.span3, .uneditable-input.span3 { width: 152px; } - input.span2, - textarea.span2, - .uneditable-input.span2 { + input.span2, textarea.span2, .uneditable-input.span2 { width: 90px; } - input.span1, - textarea.span1, - .uneditable-input.span1 { + input.span1, textarea.span1, .uneditable-input.span1 { width: 28px; } } - @media (max-width: 767px) { body { - padding-right: 20px; padding-left: 20px; + padding-right: 20px; } .navbar-fixed-top, .navbar-fixed-bottom, .navbar-static-top { - margin-right: -20px; margin-left: -20px; + margin-right: -20px; } .container-fluid { padding: 0; } .dl-horizontal dt { float: none; - width: auto; clear: none; + width: auto; text-align: left; } .dl-horizontal dd { @@ -826,20 +762,20 @@ [class*="span"], .uneditable-input[class*="span"], .row-fluid [class*="span"] { - display: block; float: none; + display: block; width: 100%; margin-left: 0; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .span12, .row-fluid .span12 { width: 100%; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .row-fluid [class*="offset"]:first-child { margin-left: 0; @@ -855,8 +791,8 @@ width: 100%; min-height: 30px; -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; } .input-prepend input, .input-append input, @@ -871,8 +807,8 @@ .modal { position: fixed; top: 20px; - right: 20px; left: 20px; + right: 20px; width: auto; margin: 0; } @@ -883,7 +819,6 @@ top: 20px; } } - @media (max-width: 480px) { .nav-collapse { -webkit-transform: translate3d(0, 0, 0); @@ -909,13 +844,13 @@ padding-top: 0; } .form-horizontal .form-actions { - padding-right: 10px; padding-left: 10px; + padding-right: 10px; } .media .pull-left, .media .pull-right { - display: block; float: none; + display: block; margin-bottom: 10px; } .media-object { @@ -924,8 +859,8 @@ } .modal { top: 10px; - right: 10px; left: 10px; + right: 10px; } .modal-header .close { padding: 10px; @@ -935,7 +870,6 @@ position: static; } } - @media (max-width: 979px) { body { padding-top: 0; @@ -959,8 +893,8 @@ padding: 0; } .navbar .brand { - padding-right: 10px; padding-left: 10px; + padding-right: 10px; margin: 0 0 0 -5px; } .nav-collapse { @@ -989,21 +923,23 @@ font-weight: bold; color: #777777; -webkit-border-radius: 3px; - -moz-border-radius: 3px; - border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; } .nav-collapse .btn { padding: 4px 10px 4px; font-weight: normal; -webkit-border-radius: 4px; - -moz-border-radius: 4px; - border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; } .nav-collapse .dropdown-menu li + li a { margin-bottom: 2px; } .nav-collapse .nav > li > a:hover, - .nav-collapse .dropdown-menu a:hover { + .nav-collapse .nav > li > a:focus, + .nav-collapse .dropdown-menu a:hover, + .nav-collapse .dropdown-menu a:focus { background-color: #f2f2f2; } .navbar-inverse .nav-collapse .nav > li > a, @@ -1011,30 +947,32 @@ color: #999999; } .navbar-inverse .nav-collapse .nav > li > a:hover, - .navbar-inverse .nav-collapse .dropdown-menu a:hover { + .navbar-inverse .nav-collapse .nav > li > a:focus, + .navbar-inverse .nav-collapse .dropdown-menu a:hover, + .navbar-inverse .nav-collapse .dropdown-menu a:focus { background-color: #111111; } .nav-collapse.in .btn-group { - padding: 0; margin-top: 5px; + padding: 0; } .nav-collapse .dropdown-menu { position: static; top: auto; left: auto; - display: none; float: none; + display: none; max-width: none; - padding: 0; margin: 0 15px; + padding: 0; background-color: transparent; border: none; -webkit-border-radius: 0; - -moz-border-radius: 0; - border-radius: 0; + -moz-border-radius: 0; + border-radius: 0; -webkit-box-shadow: none; - -moz-box-shadow: none; - box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; } .nav-collapse .open > .dropdown-menu { display: block; @@ -1057,9 +995,9 @@ margin: 10px 0; border-top: 1px solid #f2f2f2; border-bottom: 1px solid #f2f2f2; - -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); - -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); - box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1); + -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1); + box-shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1); } .navbar-inverse .nav-collapse .navbar-form, .navbar-inverse .nav-collapse .navbar-search { @@ -1072,18 +1010,17 @@ } .nav-collapse, .nav-collapse.collapse { - height: 0; overflow: hidden; + height: 0; } .navbar .btn-navbar { display: block; } .navbar-static .navbar-inner { - padding-right: 10px; padding-left: 10px; + padding-right: 10px; } } - @media (min-width: 980px) { .nav-collapse.collapse { height: auto !important; -- cgit v1.2.3