Chapter 5 - CSS - PSRT 2 - HAMID
Chapter 5 - CSS - PSRT 2 - HAMID
Chapter 5
1 Styling Links
2 Styling Lists
3 Styling Tables
4 CSS Box Model
CONTENT
Styling Links
Styling Lists
Styling Tables
CSS Box Model
3
Styling Links
• Links can be styled with any CSS property (e.g. color, font-family, background,
etc.).
4
Styling Links
Text Decoration
The text-decoration property is mostly used to remove underlines from links:
Example:
a:link {text-decoration:none;}
a:visited {text-decoration:none;}
a:hover {text-decoration:underline;}
a:active {text-decoration:underline;}
Background Color
The background-color property specifies the background color for links:
Example:
a:link {background-color:#B2FF99;}
a:visited {background-color:#FFFF85;}
a:hover {background-color:#FF704D;}
a:active {background-color:#FF704D;}
5
Styling Links
Example 1 – Adding different styles to hyperlinks:
<html>
<head>
<style type="text/css">
a.one:link {color:#ff0000;}
a.one:visited {color:#0000ff;}
a.one:hover {color:#ffcc00;}
a.two:link {color:#ff0000;}
a.two:visited {color:#0000ff;}
a.two:hover {font-size:150%;}
a.three:link {color:#ff0000;}
a.three:visited {color:#0000ff;}
a.three:hover {background:#66ff66;}
a.four:link {color:#ff0000;}
a.four:visited {color:#0000ff;}
a.four:hover {font-family:monospace;}
a.five:link {color:#ff0000;text-decoration:none;}
a.five:visited {color:#0000ff;text-decoration:none;}
a.five:hover {text-decoration:underline;}
</style>
</head>
6
Styling Links
Example 1 – Adding different styles to hyperlinks:
<body>
</body>
</html>
7
Styling Links
Example 1 - Result:
8
Styling Lists
The CSS list properties allow you to:
– Set different list item markers for ordered lists
– Set different list item markers for unordered lists
– Set an image as the list item marker
The type of list item marker is specified with the list-style-type property:
Example:
ul.a {list-style-type: circle;}
ul.b {list-style-type: square;}
ol.c {list-style-type: upper-roman;}
ol.d {list-style-type: lower-alpha;}
9
Styling Lists
An Image as The List Item Marker
10
Styling Lists
Crossbrowser Solution
• The following example displays the image-marker equally in all browsers:
• For ul:
Example: Set the list-style-type to none to remove
ul the list item marker
{ Set both padding and margin to 0px (for
list-style-type: none;
cross-browser compatibility)
padding: 0px;
margin: 0px;
} • For li:
Set the URL of the image, and show it only
li
once (no-repeat)
{
background-image: Position the image where you want it (left
url(sqpurple.gif); 0px and down 5px)
background-repeat: no-repeat; Position the text in the list with padding-
background-position: 0px 5px; left
padding-left: 14px;
}
11
Styling Lists
List - Shorthand property
It is also possible to specify all the list properties in one, single property. This is
called a shorthand property.
The shorthand property used for lists, is the list-style property:
Example:
ul
{
list-style: square url("sqpurple.gif");
}
When using the shorthand property, the order of the values are:
– list-style-type
– list-style-position (for a description, see the CSS properties table below)
– list-style-image
12
Styling Lists
13
Styling Tables
Table Borders
To specify table borders in CSS, use the border property.
The example below specifies a black border for table, th, and td elements:
Example
table, th, td
{
border: 1px solid black;
}
Notice that the table in the example above has double borders. This is
because both the table and the th/td elements have separate borders.
To display a single border for the table, use the border-collapse property.
14
Styling Tables
Collapse Borders
The border-collapse property sets whether the table borders
are collapsed into a single border or separated:
Example:
table
{
border-collapse:collapse;
}
table,th, td
{
border: 1px solid black;
}
15
Styling Tables
Table Width and Height
Width and height of a table is defined by the width and height
properties.
The example below sets the width of the table to 100%, and the height
of the th elements to 50px:
Example:
table
{
width:100%;
}
th
{
height:50px;
}
16
Styling Tables
Table Text Alignment
The text in a table is aligned with the text-align and vertical-align properties.
The text-align property sets the horizontal alignment, like left, right, or center:
Example
td
{
text-align:right; }
The vertical-align property sets the vertical alignment, like top, bottom, or middle:
Example
td
{
height:50px;
vertical-align:bottom; }
17
Styling Tables
Table Padding
To control the space between the border and content in a table, use
the padding property on td and th elements:
Example:
td { padding:15px;}
Table Color
The example below specifies the color of the borders, and the text and
background color of th elements:
Example:
table, td, th { border:1px solid green;}
th { background-color:green;color:white;}
18
CSS Box Model
The CSS Box Model
In CSS, the term "box model" is used when talking about design and layout.
The CSS box model is essentially a box that wraps around HTML elements, and it
consists of:
– margins,
– borders,
– padding,
– and the actual content.
The box model allows us to place a border around elements and space elements in
relation to other elements.
19
CSS Box Model
The image below illustrates the box model:
Margin - Clears an area around the
border. The margin does not have a
background color, it is completely
transparent.
20
CSS Box Model
CSS Box Model
Width and Height of an Element
When you set the width and height properties of an element with CSS, you just set
the width and height of the content area.
To calculate the full size of an element, you must also add the padding, borders
and margins.
23
Width and Height of an Element
Assume that you had only 250px of space. Let's make an element with a total
width of 250px:
Example
width:220px;
padding:10px;
border:5px solid gray;
margin:0px;
The total width of an element should be calculated like this:
– Total element width = width + left padding + right padding + left border + right
border + left margin + right margin
24
CSS Border Properties
The CSS border properties allow you to specify the style and color
of an element's border.
25
CSS Box Model
CSS Border - Style
The border-style property specifies what kind of border to display.
None of the border properties will have ANY effect unless the border-style property
is set!
border-style values:
26
CSS Box Model
CSS Border - Width
The border-width property is used to set the width of the border.
The width is set in pixels, or by using one of the three pre-defined values: thin,
medium, or thick.
Note: The "border-width" property does not work if it is used alone. Use the "border-
style" property to set the borders first.
Example:
p.one
{
border-style:solid;
border-width:5px;
}
p.two
{
border-style:solid;
border-width:medium;
}
27
CSS Box Model
CSS Border - Color
The border-color property is used to set the color of the border.
The color can be set by:
– name - specify a color name, like "red"
– RGB - specify a RGB value, like "rgb(255,0,0)"
– Hex - specify a hex value, like "#ff0000"
You can also set the border color to "transparent".
Note: The "border-color" property does not work if it is used alone. Use the "border-
style" property to set the borders first.
Example:
p.one { border-style:solid;
border-color:red;}
p.two { border-style:solid;
border-color:#98bf21;}
28
CSS Box Model
CSS Border - Individual sides
In CSS it is possible to specify different borders for different sides:
Example:
p
{
border-top-style:dotted;
border-right-style:solid;
border-bottom-style:dotted;
border-left-style:solid;
}
Example
border-style:dotted solid;
29
CSS Box Model
The border-style property can have from one to four values.
border-style:dotted solid double dashed;
– top border is dotted
– right border is solid
– bottom border is double
– left border is dashed
border-style:dotted solid double;
– top border is dotted
– right and left borders are solid
– bottom border is double
border-style:dotted solid;
– top and bottom borders are dotted
– right and left borders are solid
border-style:dotted;
– all four borders are dotted
32
CSS Box Model
CSS – Outlines
An outline is a line that is drawn around elements, outside the border edge, to
make the element "stand out".
The outline properties specifies the style, color, and width of an outline.
Outline property is different from the border property.
The outline is not a part of the element's dimensions, therefore the element's
width and height properties do not contain the width of the outline.
33
CSS Box Model
34
CSS Box Model
CSS Margin:
The CSS margin properties define the space around elements.
The margin clears an area around an element (outside the border).
The margin does not have a background color, and is completely transparent.
The top, right, bottom, and left margin can be changed independently using
separate properties.
A shorthand margin property can also be used, to change all margins at
once.
It is possible to use negative values, to overlap content.
Possible Values
Value Description
auto The browser sets the margin.
The result of this is dependant of the browser
length Defines a fixed margin (in pixels, pt, em, etc.)
35
CSS Box Model
Margin - Individual sides
In CSS, it is possible to specify different margins for different sides:
Example
margin-top:100px;
margin-bottom:100px;
margin-right:50px;
margin-left:50px;
36
CSS Box Model
The margin property can have from one to four values;
margin:25px 50px 75px 100px;
– top margin is 25px
– right margin is 50px
– bottom margin is 75px
– left margin is 100px
margin:25px 50px 75px;
– top margin is 25px
– right and left margins are 50px
– bottom margin is 75px
margin:25px 50px;
– top and bottom margins are 25px
– right and left margins are 50px
margin:25px;
– all four margins are 25px
37
CSS Box Model
38
CSS Box Model
CSS Padding
The CSS padding properties define the space between the element border and the
element content.
The padding clears an area around the content (inside the border) of an element.
The padding is affected by the background color of the element.
The top, right, bottom, and left padding can be changed independently using
separate properties.
A shorthand padding property can also be used, to change all paddings at once.
Value Description
length Defines a fixed padding (in pixels, pt, em, etc.)
% Defines a padding in % of the containing element
39
8.4 CSS Box Model
CSS Padding - Individual sides
In CSS, it is possible to specify different padding for different sides:
Example
padding-top:25px;
padding-bottom:25px;
padding-right:50px;
padding-left:50px;
40
CSS Box Model
The padding property can have from one to four values.
padding:25px 50px 75px 100px;
– top padding is 25px
– right padding is 50px
– bottom padding is 75px
– left padding is 100px
padding:25px 50px 75px;
– top padding is 25px
– right and left paddings are 50px
– bottom padding is 75px
padding:25px 50px;
– top and bottom paddings are 25px
– right and left paddings are 50px
padding:25px;
– all four paddings are 25px
41
CSS Box Model
42
What you’ve learned
1 Styling Links
2 Styling Lists
3 Styling Tables
4 CSS Box Model