Introduction

TDCMCSS is a lightweight, responsive, and modern CSS framework. It is designed to be easy to use and customize, with a focus on typography, usability, and overall aesthetics.

Link to google documentation: TDCMCSS.io Guide Doc

browser Support

IE Edge Firefox Chrome Safari Opera
10+ 12+ 20+ 20+ 6.1+ 12.1+

Colors

"Primary" #4dc0ea
"Secondary" #7ad3ff
"Tertiary" #ff57bc
"Info" #48b4d5
"Success" #82b446
"Danger" #ff5a57
"Warning" #f59d19
"Inverted" #2e363d

Grids

Basic 12 Grid

1/12
2/12
3/12
3/12
3/12
3/12
4/12
5/12
5/12
7/12
  1. <div class="grid__row">
  2. <div class="col-1">1/12</div>
  3. <div class="col-2">2/12</div>
  4. ...
  5. </div>

Basic 10 Grid

1/10
2/10
3/10
4/10
2/10
8/10
  1. <div class="grid__row cols-10">
  2. <div class="col-1">1/10</div>
  3. <div class="col-2">2/10</div>
  4. ...
  5. </div>

Offset

6/12
5/10
  1. <div class="grid__row">
  2. <div class="col-6 col-offset-3">6/12</div>
  3. </div>

No Gutters

4/12
4/12
4/12
2/10
3/10
5/10
  1. <div class="grid__row g-0">
  2. <div class="col-4">4/12</div>
  3. <div class="col-4">4/12</div>
  4. ...
  5. </div>

You can use class .g-(0, 4, 8, 12, 16, 20, 24, 28, 32) to change grid__row spacing.

Equal

1/5
1/5
1/5
1/5
1/5
1/7
1/7
1/7
1/7
1/7
1/7
1/7
  1. <div class="grid__row">
  2. <div class="col">1/7</div>
  3. <div class="col">1/7</div>
  4. ...
  5. </div>

Nested

1/2*9/12
1/2*9/12
3/12
  1. <div class="grid__row">
  2. <div class="col-9">
  3. <div class="grid__row">
  4. <div class="col-6">1/2*9/12</div>
  5. <div class="col-6">1/2*9/12</div>
  6. </div>
  7. </div>
  8. <div class="col-3">3/12</div>
  9. </div>

Media ( Bootstrap )

The media component is very important, but there is no room for improvement, we can use the media of Bootstrap. In addition, We added a media__avatar class, we can use it as needed.

Media heading LEFT

Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.

  1. <div class="media">
  2. <div class="media__left">
  3. <a href="#" class="media__avatar">
  4. <img class="media__object" alt="" src="...">
  5. </a>
  6. </div>
  7. <div class="media__body">
  8. <h4 class="media__heading">Media heading</h4>
  9. <p>...</p>
  10. </div>
  11. </div>

Media heading RIGHT

Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.

Media heading NESTED

Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.

Media heading CHILD

Cras sit amet nibh libero, in gravida nulla. Nulla vel metus scelerisque ante sollicitudin commodo. Cras purus odio, vestibulum in vulputate at, tempus viverra turpis. Fusce condimentum nunc ac nisi vulputate fringilla. Donec lacinia congue felis in faucibus.

Typography

Headings

h1 Example Heading subtitle

h2 Example Heading subtitle

h3 Example Heading subtitle

h4 Example Heading subtitle

h5 Example Heading subtitle
h6 Example Heading subtitle
  1. <h1>h1 Example Heading <small>subtitle</small></h1>
  2. <h2>h2 Example Heading <small>subtitle</small></h2>
  3. <h3>h3 Example Heading <small>subtitle</small></h3>
  4. <h4>h4 Example Heading <small>subtitle</small></h4>
  5. <h5>h5 Example Heading <small>subtitle</small></h5>
  6. <h6>h6 Example Heading <small>subtitle</small></h6>

Buttons

Colors Options

  1. <button class="btn default">default</button>
  2. <button class="btn primary">primary</button>
  3. ...
  4. <button class="btn btn_link">link</button>

Colors Outline Options

  1. <button class="btn btn_outline default">default</button>
  2. <button class="btn btn_outline primary">primary</button>
  3. ...

Pill Button

  1. <button class="btn btn_pill default">default</button>
  2. <button class="btn btn_pill btn_outline primary">primary</button>
  3. ...

Button Group

  1. <div class="btns">
  2. <button class="btn default">default</button>
  3. <button class="btn default">default</button>
  4. <button class="btn default">default</button>
  5. </div>
  6. ...

Button Group Vertical

  1. <div class="btns btns_vertical">
  2. <button class="btn default">default</button>
  3. <button class="btn default">default</button>
  4. <button class="btn default">default</button>
  5. </div>
  6. ...

Button Group Outline

  1. <div class="btns">
  2. <button class="btn btn_outline default">default</button>
  3. <button class="btn btn_outline default">default</button>
  4. <button class="btn btn_outline default">default</button>
  5. </div>
  6. ...

Button Group Outline Vertical

  1. <div class="btns btns_vertical">
  2. <button class="btn btn_outline default">default</button>
  3. <button class="btn btn_outline default">default</button>
  4. <button class="btn btn_outline default">default</button>
  5. </div>
  6. ...

Forms

Basic Elements

A block of help text that breaks onto a new line and may extend beyond one line.
  1. <div class="form__horizontal">
  2. <div class="form__group">
  3. <label for="" class="form__label col-2">Normal Input</label>
  4. <div class="col-10">
  5. <input class="form__control" type="text" />
  6. </div>
  7. </div>
  8. ...
  9. </div>

Checkbox & Radio

The structures of checkbox/radio in TDCMCSS allow you customize its styles.

  1. <div class="checkbox">
  2. <input type="checkbox" id="checkbox1" value="">
  3. <label for="checkbox1">Option one ...</label>
  4. </div>
  5. <div class="radio">
  6. <input type="radio" name="optionsRadios" id="optionsRadios1" checked="">
  7. <label for="optionsRadios1">Option one ...</label>
  8. </div>
  1. <div class="checkbox__inline">
  2. <input type="checkbox" id="checkbox1" value="">
  3. <label for="checkbox1">Option one ...</label>
  4. </div>
  5. <div class="radio__inline">
  6. <input type="radio" name="optionsRadios" id="optionsRadios1" checked="">
  7. <label for="optionsRadios1">Option one ...</label>
  8. </div>

Form Inline

Tables

Basic

Name Registration Date E-mail address Premium Plan
Nicky Almera September 14, 2013 nicky@hotmail.com No
Edmund Wong January 11, 2014 edmund@yahoo.com Yes
Harvinder Singh May 11, 2014 harvinder@gmail.com Yes
  1. <table class="table table_hover">
  2. ...
  3. </table>

Bordered

Name Registration Date E-mail address Premium Plan
Nicky Almera September 14, 2013 nicky@hotmail.com No
Edmund Wong January 11, 2014 edmund@yahoo.com Yes
Harvinder Singh May 11, 2014 harvinder@gmail.com Yes
  1. <table class="table table_bordered">
  2. ...
  3. </table>

Rounded

Name Registration Date E-mail address Premium Plan
Nicky Almera September 14, 2013 nicky@hotmail.com No
Edmund Wong January 11, 2014 edmund@yahoo.com Yes
Harvinder Singh May 11, 2014 harvinder@gmail.com Yes
  1. <table class="table table_bordered table_rounded">
  2. ...
  3. </table>

Striped

Name Registration Date E-mail address Premium Plan
Nicky Almera September 14, 2013 nicky@hotmail.com No
Edmund Wong January 11, 2014 edmund@yahoo.com Yes
Harvinder Singh May 11, 2014 harvinder@gmail.com Yes
Terry Khoo June 6, 2013 terry@gmail.com No
Jamie Harington January 15, 2014 jharingonton@yahoo.com Yes
Jill Lewis May 1, 2014 jilsewris22@yahoo.com Yes
  1. <table class="table table_bordered table_rounded table_striped table_hover">
  2. ...
  3. </table>

Boxes

Single box

box
  1. <div class="box">box</div>

Box Group

Basic boxes

box
box
box
  1. <div class="boxes">
  2. <div class="box">box</div>
  3. <div class="box">box</div>
  4. <div class="box">box</div>
  5. </div>

Basic boxes with transparent background

box
box
box

Boxes with inverted color

box
box
box
  1. <div class="boxes transparent">
  2. <div class="box">box</div>
  3. <div class="box">box</div>
  4. <div class="box">box</div>
  5. </div>
  6. <div class="boxes inverted">
  7. <div class="box">box</div>
  8. <div class="box">box</div>
  9. <div class="box">box</div>
  10. </div>

Colorful

box
box
box
box
box
box
box
box
box
box
box
box
box
box
box
box
box
box
  1. <div class="boxes border-primary">
  2. <div class="box border-primary">box</div>
  3. <div class="box border-primary">box</div>
  4. <div class="box border-primary">box</div>
  5. </div>
  6. ...
box
box
box
  1. <div class="boxes bg-primary text-white">
  2. <div class="box bg-primary">box</div>
  3. <div class="box bg-primary">box</div>
  4. <div class="box bg-primary">box</div>
  5. </div>

Styles

box box_header
box box_body
box box_header
box box_body
  1. <div class="boxes default">
  2. <div class="box box_header">box</div>
  3. <div class="box box_body">box</div>
  4. <div class="box box_footer">box</div>
  5. </div>
  6. <div class="boxes secondary">
  7. <div class="box box_header">box</div>
  8. <div class="box box_body">box</div>
  9. <div class="box box_footer">box</div>
  10. </div>

Nested boxes

box nested
box
box
  1. <div class="boxes default">
  2. <div class="box">
  3. <div class="boxes default">
  4. <div class="box">box nested</div>
  5. </div>
  6. </div>
  7. <div class="box">box</div>
  8. <div class="box">box</div>
  9. </div>

Warning box

You can use class "warning-box" with modificator "warning-box_text-red-darker" to create warning box. Or you can use code HTML element to signify something withing warning-box

  1. <p class="warning-box warning-box_text-red-darker">
  2. <span>
  3. <code></code>
  4. </span>
  5. </p>

Utilities

Property Class Prefix Values
background-color .bg- default primary info success danger warning inverted white transparent
border-color .border- default primary info success danger warning inverted transparent
color .text- default primary info success danger warning inverted white muted

Colors

These colors are available to use with properties mentioned in previous section

transparent
white
black
Color Gray
gray-lightest
gray-lighter
gray-light
gray
gray-dark
gray-darker
gray-darkest
Color brown
brown-lightest
brown-lighter
brown-light
brown
brown-dark
brown-darker
brown-darkest
Color Red
red-lightest
red-lighter
red-light
red
red-dark
red-darker
red-darkest
Color Orange
orange-lightest
orange-lighter
orange-light
orange
orange-dark
orange-darker
orange-darkest
Color Yellow
yellow-lightest
yellow-lighter
yellow-light
yellow
yellow-dark
yellow-darker
yellow-darkest
Color Green
green-lightest
green-lighter
green-light
green
green-dark
green-darker
green-darkest
Color Teal
teal-lightest
teal-lighter
teal-light
teal
teal-dark
teal-darker
teal-darkest
Color Blue
blue-lightest
blue-lighter
blue-light
blue
blue-dark
blue-darker
blue-darkest
Color Indigo
indigo-lightest
indigo-lighter
indigo-light
indigo
indigo-dark
indigo-darker
indigo-darkest
Color Purple
purple-lightest
purple-lighter
purple-light
purple
purple-dark
purple-darker
purple-darkest
Color Pink
pink-lightest
pink-lighter
pink-light
pink
pink-dark
pink-darker
pink-darkest

Spacing

Padding

padding
.p-0
.p-4
.p-8
.p-12
.p-16
.p-24
.p-32
.p-48
.p-64
.p-auto
padding-top
.p-t-0
.p-t-4
.p-t-8
.p-t-12
.p-t-16
.p-t-24
.p-t-32
.p-t-48
.p-t-64
.p-t-auto
padding-bottom
.p-b-0
.p-b-4
.p-b-8
.p-b-12
.p-b-16
.p-b-24
.p-b-32
.p-b-48
.p-b-64
.p-b-auto
padding-left
.p-l-0
.p-l-4
.p-l-8
.p-l-12
.p-l-16
.p-l-24
.p-l-32
.p-l-48
.p-l-64
.p-l-auto
padding-right
.p-r-0
.p-r-4
.p-r-8
.p-r-12
.p-r-16
.p-r-24
.p-r-32
.p-r-48
.p-r-64
.p-r-auto

Margin

margin
.m-0
.m-4
.m-8
.m-12
.m-16
.m-24
.m-32
.m-48
.m-64
.m-auto
margin-top
.m-t-0
.m-t-4
.m-t-8
.m-t-12
.m-t-16
.m-t-24
.m-t-32
.m-t-48
.m-t-64
.m-t-auto
margin-bottom
.m-b-0
.m-b-4
.m-b-8
.m-b-12
.m-b-16
.m-b-24
.m-b-32
.m-b-48
.m-b-64
.m-b-auto
margin-left
.m-l-0
.m-l-4
.m-l-8
.m-l-12
.m-l-16
.m-l-24
.m-l-32
.m-l-48
.m-l-64
.m-l-auto
margin-right
.m-r-0
.m-r-4
.m-r-8
.m-r-12
.m-r-16
.m-r-24 .m-r--24
.m-r-32
.m-r-48
.m-r-64
.m-r-auto

Sizing

height (%)
.h-0
.h-20
.h-25
.h-33
.h-40
.h-50
.h-60
.h-75
.h-80
.h-90
.h-full
.h-auto
width (%)
.w-0
.w-20
.w-25
.w-33
.w-40
.w-50
.w-60
.w-75
.w-80
.w-90
.w-full
.w-auto

Border

border
.b-0
.b-1
.b-2
.b-4
.b-8
border-top
.b-t-0
.b-t-1
.b-t-2
.b-t-4
.b-t-8
border-bottom
.b-b-0
.b-b-1
.b-b-2
.b-b-4
.b-b-8
border-left
.b-l-0
.b-l-1
.b-l-2
.b-l-4
.b-l-8
border-right
.b-r-0
.b-r-1
.b-r-2
.b-r-4
.b-r-8

Rounded

border-radius
.r-0
.r-4
.r-8
.r-12
.r-16
.r-full
border-top-left-radius
.r-t-l-0
.r-t-l-4
.r-t-l-8
.r-t-l-12
.r-t-l-16
.r-t-l-full
border-top-right-radius
.r-t-r-0
.r-t-r-4
.r-t-r-8
.r-t-r-12
.r-t-r-16
.r-t-r-full
border-bottom-right-radius
.r-b-r-0
.r-b-r-4
.r-b-r-8
.r-b-r-12
.r-b-r-16
.r-b-r-full
border-bottom-left-radius
.r-b-l-0
.r-b-l-4
.r-b-l-8
.r-b-l-12
.r-b-l-16
.r-b-l-full

Shadow

box-shadow
.shadow-none
.shadow-1
.shadow-2
.shadow-3
.shadow-4
.shadow-5

Text

font-size
.f-s-0
.f-s-10
.f-s-12
.f-s-14
.f-s-16
.f-s-18
.f-s-20
.f-s-24
.f-s-32
.f-s-40
.f-s-48
.f-s-64
.f-s-72
.f-s-96
font-weight
.f-w-100
.f-w-200
.f-w-300
.f-w-400
.f-w-500
.f-w-600
.f-w-700
.f-w-800
.f-w-900
text-align
.text-left
.text-center
.text-right

Alignment

vertical-align
.align-top
.align-middle
.align-bottom

Display

display
.d-block
.d-inline-block
.d-inline
.d-flex
.d-inline-flex
.d-grid
.d-inline-grid
.d-none

Position

position
.static
.fixed
.absolute
.relative
.sticky

Flexbox

flex-direction
.flex-row
.flex-row-reverse
.flex-col
.flex-col-reverse
flex-wrap
.flex-nowrap
.flex-wrap
.flex-wrap-reverse
justify-content
.justify-content-start
.justify-content-end
.justify-content-center
.justify-content-between
.justify-content-around
align-items
.align-items-start
.align-items-end
.align-items-center
.align-items-baseline
.align-items-stretch
align-self
.align-self-start
.align-self-end
.align-self-center
.align-self-baseline
.align-self-stretch
align-content
.align-content-start
.align-content-end
.align-content-center
.align-content-between
.align-content-around
.align-content-stretch