• Mark Otto's avatar
    Unitless line-height · 6fba68eb
    Mark Otto authored
    * Instead of 20px as @line-height-base, use 1.5
    * Update typographic scale for headings to use unitless as well--required some twerking of decimals a bit and some rounding
    * Introduce new @line-height-computed value, which takes base font-size and multiplies it by 1.5, for use in padding and margin on components
    6fba68eb
type.less 5.03 KiB
//
// Typography
// --------------------------------------------------
// Body text
// -------------------------
p {
  margin: 0 0 (@line-height-computed / 2);
.lead {
  margin-bottom: @line-height-computed;
  font-size: (@font-size-base * 1.5);
  font-weight: 200;
  line-height: 1.4;
// Emphasis & misc
// -------------------------
// Ex: 14px base font * 85% = about 12px
small   { font-size: 85%; }
strong  { font-weight: bold; }
em      { font-style: italic; }
cite    { font-style: normal; }
// Utility classes
.text-muted          { color: @gray-light; }
a.text-muted:hover,
a.text-muted:focus   { color: darken(@gray-light, 10%); }
.text-warning        { color: @state-warning-text; }
a.text-warning:hover,
a.text-warning:focus { color: darken(@state-warning-text, 10%); }
.text-danger         { color: @state-danger-text; }
a.text-danger:hover,
a.text-danger:focus  { color: darken(@state-danger-text, 10%); }
.text-success        { color: @state-success-text; }
a.text-success:hover,
a.text-success:focus { color: darken(@state-success-text, 10%); }
.text-left           { text-align: left; }
.text-right          { text-align: right; }
.text-center         { text-align: center; }
// Headings
// -------------------------
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: @headings-font-family;
  font-weight: @headings-font-weight;
  line-height: @line-height-headings;
  small {
    font-weight: normal;
    line-height: 1;
    color: @gray-light;
h1,
h2,
h3 {
  margin-top: @line-height-computed;
7172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
margin-bottom: (@line-height-computed / 2); } h4, h5, h6 { margin-top: (@line-height-computed / 2); margin-bottom: (@line-height-computed / 2); } h1, .h1 { font-size: ceil(@font-size-base * 2.70); } // ~38px h2, .h2 { font-size: ceil(@font-size-base * 2.25); } // ~32px h3, .h3 { font-size: ceil(@font-size-base * 1.70); } // ~24px h4, .h4 { font-size: ceil(@font-size-base * 1.25); } // ~18px h5, .h5 { font-size: @font-size-base; } h6, .h6 { font-size: ceil(@font-size-base * 0.85); } // ~12px h1 small, .h1 small { font-size: ceil(@font-size-base * 1.70); } // ~24px h2 small, .h2 small { font-size: ceil(@font-size-base * 1.25); } // ~18px h3 small, .h3 small, h4 small, .h4 small { font-size: @font-size-base; } // Page header // ------------------------- .page-header { padding-bottom: ((@line-height-computed / 2) - 1); margin: (@line-height-computed * 2) 0 @line-height-computed; border-bottom: 1px solid @gray-lighter; } // Lists // -------------------------------------------------- // Unordered and Ordered lists ul, ol { padding: 0; margin: 0 0 (@line-height-computed / 2) 25px; } ul ul, ul ol, ol ol, ol ul { margin-bottom: 0; } li { line-height: @line-height-base; } // List options // Unstyled keeps list items block level, just removes list-style .list-unstyled { margin-left: 0; list-style: none; } // Inline turns list items into inline-block .list-inline { .list-unstyled(); > li { display: inline-block; padding-left: 5px; padding-right: 5px; } } // Description Lists
141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
dl { margin-bottom: @line-height-computed; } dt, dd { line-height: @line-height-base; } dt { font-weight: bold; } dd { margin-left: (@line-height-computed / 2); } // Horizontal layout (like forms) .dl-horizontal { .clearfix(); // Ensure dl clears floats if empty dd elements present dt { float: left; width: (@component-offset-horizontal - 20); clear: left; text-align: right; .text-overflow(); } dd { margin-left: @component-offset-horizontal; } } // MISC // ---- // Horizontal rules hr { margin: @line-height-computed 0; border: 0; border-top: 1px solid @hr-border; border-bottom: 1px solid #fff; border-bottom: 1px solid rgba(255,255,255,.5); } // Abbreviations and acronyms abbr[title], // Added data-* attribute to help out our tooltip plugin, per https://github.com/twitter/bootstrap/issues/5257 abbr[data-original-title] { cursor: help; border-bottom: 1px dotted @gray-light; } abbr.initialism { font-size: 90%; text-transform: uppercase; } // Blockquotes blockquote { padding: (@line-height-computed / 2) @line-height-computed; margin: 0 0 @line-height-computed; border-left: 5px solid @gray-lighter; p { font-size: (@font-size-base * 1.25); font-weight: 300; line-height: 1.25; } p:last-child { margin-bottom: 0; } small { display: block; line-height: @line-height-base; color: @gray-light; &:before {
211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252
content: '\2014 \00A0'; } } // Float right with text-align: right &.pull-right { float: right; padding-right: 15px; padding-left: 0; border-right: 5px solid @gray-lighter; border-left: 0; p, small { text-align: right; } small { &:before { content: ''; } &:after { content: '\00A0 \2014'; } } } } // Quotes q:before, q:after, blockquote:before, blockquote:after { content: ""; } // Addresses address { display: block; margin-bottom: @line-height-computed; font-style: normal; line-height: @line-height-base; }