// Typography.less // Headings, body text, lists, code, and more for a versatile and durable typography system // ---------------------------------------------------------------------------------------- // BODY TEXT // --------- p { margin: 0 0 @baseLineHeight / 2; font-family: @baseFontFamily; font-size: @baseFontSize; line-height: @baseLineHeight; small { font-size: @baseFontSize - 2; color: @grayLight; } } .lead { margin-bottom: @baseLineHeight; font-size: 20px; font-weight: 200; line-height: @baseLineHeight * 1.5; } // HEADINGS // -------- h1, h2, h3, h4, h5, h6 { margin: 0; font-weight: bold; color: @grayDark; text-rendering: optimizelegibility; // Fix the character spacing for headings small { font-weight: normal; color: @grayLight; } } h1 { font-size: 30px; line-height: @baseLineHeight * 2; small { font-size: 18px; } } h2 { font-size: 24px; line-height: @baseLineHeight * 2; small { font-size: 18px; } } h3 { line-height: @baseLineHeight * 1.5; font-size: 18px; small { font-size: 14px; } } h4, h5, h6 { line-height: @baseLineHeight; } h4 { font-size: 14px; small { font-size: 12px; } } h5 { font-size: 12px; } h6 { font-size: 11px; color: @grayLight; text-transform: uppercase; } // Page header .page-header { padding-bottom: @baseLineHeight - 1; margin: @baseLineHeight 0; border-bottom: 1px solid @grayLighter; } .page-header h1 { line-height: 1; } // LISTS // ----- // Unordered and Ordered lists ul, ol { padding: 0; margin: 0 0 @baseLineHeight / 2 25px; } ul ul, ul ol, ol ol, ol ul { margin-bottom: 0; } ul { list-style: disc; } ol { list-style: decimal; } li { line-height: @baseLineHeight; } ul.unstyled, ol.unstyled { margin-left: 0; list-style: none; } // Description Lists dl { margin-bottom: @baseLineHeight; } dt, dd { line-height: @baseLineHeight; } dt { font-weight: bold; } dd { margin-left: @baseLineHeight / 2; } // Horizontal layout (like forms) dl.horizontal { dt { float: left; clear: left; width: 120px; text-align: right; } dd { margin-left: 130px; } &.horizontal-mini { dt { width: 50px; } dd { margin-left: 60px; } } &.horizontal-small { dt { width: 90px; } dd { margin-left: 100px; } } &.horizontal-normal { // no additional styles needed } &.horizontal-large { dt { width: 140px; } dd { margin-left: 150px; } } &.horizontal-xlarge { dt { width: 170px; } dd { margin-left: 180px; } } &.horizontal-xxlarge { dt { width: 190px; } dd { margin-left: 200px; } } } // MISC // ---- // Horizontal rules hr { margin: @baseLineHeight 0; border: 0; border-top: 1px solid @hrBorder; border-bottom: 1px solid @white; } // Emphasis strong { font-weight: bold; } em { font-style: italic; } .muted { color: @grayLight; } // Abbreviations and acronyms abbr[title] { border-bottom: 1px dotted #ddd; cursor: help; } abbr.initialism { font-size: 90%; text-transform: uppercase; } // Blockquotes blockquote { padding: 0 0 0 15px; margin: 0 0 @baseLineHeight; border-left: 5px solid @grayLighter; p { margin-bottom: 0; #font > .shorthand(16px,300,@baseLineHeight * 1.25); } small { display: block; line-height: @baseLineHeight; color: @grayLight; &:before { content: '\2014 \00A0'; } } // Float right with text-align: right &.pull-right { float: right; padding-left: 0; padding-right: 15px; border-left: 0; border-right: 5px solid @grayLighter; p, small { text-align: right; } } } // Quotes q:before, q:after, blockquote:before, blockquote:after { content: ""; } // Addresses address { display: block; margin-bottom: @baseLineHeight; line-height: @baseLineHeight; font-style: normal; } // Misc small { font-size: 100%; } cite { font-style: normal; }