I see a lot of CSS code written inefficiently and sloppily, even on official and professional sites. It’s not that the code is wrong, it just could be much better. There is really no reason to have to write four lines of code to set a div tag’s margins or style a tag’s background. You can simply use CSS shorthand to get it all into one compact line.
The reason many people don’t use shorthand is because they’ve never taken the time to learn it. Instead, they lean on verbose style rules that spell everything out. Below you will find a few common examples of CSS shorthand code that might help you when writing your CSS code. This is in no way a definitive guide. It is simply some of the more common properties you will encounter. You can also download a brief CSS shorthand cheat-sheet.
Margin and Padding:
There are four ways to define the four margins and padding of a CSS box.
-
margin: [top] [right] [bottom] [left];
Using four values defines each side individually. For example, margin: 1px 2px 3px 4px; would give an element such as a <div> box a top margin of 1px, a right margin of 2px, a bottom margin of 3px and a left margin of 4px.
-
padding: [top] [right/left] [bottom];
This notation relies on the same concept as above but now we only need three values to define our padding. padding: 3% 2% 3%; would give our html element a top and bottom padding of 3% and a right and left padding of 2%.
-
margin: [top/bottom] [right/left];
Here we only need two values to define our margins. margin 0 auto; gives a zero margin to the top and bottom and centers the <div> within its containing element.
-
padding: [top/bottom/left/right];
A single value defines all sides of an element equally. padding: 1em; applies a 1em pad to the entire html element.
Background:
The background property can be defined by this notation –
background: [color] [url(image url)] [repeat] [attachment] [position];
The color property can be defined using hexadecimal(hex) notation, rgb or color names. The image property is written with the prefix “url” followed by parentheses containing the url to the image you want to use for your background. Repeat is used to tile the background image. If you use attachment you can control whether the background image scrolls with the page or not. Position tells the background image what position to start at on the page. The following is an example of a background:
background: #ffffff url(‘greatpic.gif’) repeat-x fixed center;
Font:
The font property can be demonstrated by-
font: [size] [weight] [style] [family];
Font size can be defined with a number and a unit such as px, % or em or with size value words like small, medium, large, etc. Weight is simply the thickness of the font characters. Style refers to the values italic, oblique, normal or inherit. The family refers to the font family like Serif, Georgia or Helvetica. Here is an example:
font: 1em normal italic Helvetica;
Border:
Border properties are relatively simple-
border: [width] [style] [color];
The border of an html element is easy to style. You just need to designate the width, color and style. Width can be written using pixels or the pre-determined width designations thin, medium and thick. Style refers to values like solid, dotted and dashed. Color is written the same as in the background property and can be a hex number, rgb numbers or a written color.
border: 2px solid blue;
There are a lot more shorthand properties for CSS. Even some of the ones I posted above have further properties that could be included. For a more complete look at CSS shorthand methods check out this page from Mozilla.