CSS Complete Notes
CSS Complete Notes
Basic word processing using any text editor. How to create directories and files. How to navigate through different directories. Basic understanding on internet browsing using a browser like Internet Explorer or Firefox etc. Basic understanding on developing simple Web Pages using HTML or XHTML.
If you are new to HTML and XHTML then I would suggest you to go through our HTML Tutorial or XHTML Tutorial. Anyone of HTML or XHTML is enough to proceed.
What is CSS?
Cascading Style Sheets, fondly referred to as CSS, is a simple design language intended to simplify the process of making web pages presentable. CSS handles the look and feel part of a web page. Using CSS, you can control the color of the text, the style of fonts, the spacing between paragraphs, how columns are sized and laid out, what background images or colors are used, as well as a variety of other effects. CSS is easy to learn and understand but it provides powerful control over the presentation of an HTML document. Most commonly, CSS is combined with the markup languages HTML or XHTML.
Advantages of CSS:
CSS saves time - You can write CSS once and then reuse same sheet in multiple HTML pages. You can define a style for each HTML element and apply it to as many Web pages as you want. Pages load faster - If you are using CSS, you do not need to write HTML tag attributes every time. Just write one CSS rule of a tag and apply to all the occurrences of that tag. So less code means faster download times. Easy maintenance - To make a global change, simply change the style, and all elements in all the web pages will be updated automatically. Superior styles to HTML - CSS has a much wider array of attributes than HTML so you can give far better look to your HTML page in comparison of HTML attributes.
Multiple Device Compatibility - Style sheets allow content to be optimized for more than one type of device. By using the same HTML document, different versions of a website can be presented for handheld devices such as PDAs and cell phones or for printing. Global web standards - Now HTML attributes are being deprecated and it is being recommended to use CSS. So its a good idea to start using CSS in all the HTML pages to make them compatible to future browsers.
CSS Versions:
Cascading Style Sheets, level 1 (CSS1) was came out of W3C as a recommendation in December 1996. This version describes the CSS language as well as a simple visual formatting model for all the HTML tags. CSS2 was became a W3C recommendation in May 1998 and builds on CSS1. This version adds support for media-specific style sheets e.g. printers and aural devices, downloadable fonts, element positioning and tables.
Selector: A selector is an HTML tag at which style will be applied. This could be any tag like <h1> or <table> etc. Property: A property is a type of attribute of HTML tag. Put simply, all the HTML attributes are converted into CSS properties. They could be color or border etc. Value: Values are assigned to properties. For example color property can have value either red or #F1F1F1 etc.
Here table is a selector and border is a property and given value 1px solid #C00 is the value of that property. You can define selectors in various simple ways based on your comfort. Let me put these selectors one by one.
This rule renders the content of every element in our document in black.
This rule renders the content in black for every element with class attribute set to black in our document. You can make it a bit more particular. For example:
h1.black { color: #000000; }
This rule renders the content in black for only <h1> elements with class attribute set to black. You can apply more than one class selectors to given element. Consider the following example :
<p class="center bold"> This para will be styled by the classes center and bold. </p>
The ID Selectors:
You can define style rules based on the id attribute of the elements. All the elements having that id will be formatted according to the defined rule.
#black { color: #000000; }
This rule renders the content in black for every element with id attribute set to black in our document. You can make it a bit more particular. For example:
This rule renders the content in black for only <h1> elements with id attribute set to black. The true power of id selectors is when they are used as the foundation for descendant selectors, For example:
#black h2 { color: #000000; }
In this example all level 2 headings will be displayed in black color only when those headings will lie with in tags having id attribute set to black.
This rule will render all the paragraphs in black if they are direct child of <body> element. Other paragraphs put inside other elements like <div> or <td> etc. would not have any effect of this rule.
The advantage to this method is that the <input type="submit" /> element is unaffected, and the color applied only to the desired text fields. There are following rules applied to attribute selector.
p[lang="fr"] - Selects all paragraph elements whose lang attribute has a value of exactly "fr". p[lang~="fr"] - Selects all paragraph elements whose lang attribute contains the word "fr". p[lang|="en"] - Selects all paragraph elements whose lang attribute contains values that are exactly "en", or begin with "en-".
Here all the property and value pairs are separated by a semi colon (;). You can keep them in a ingle line or multiple lines. For better readability we keep them into separate lines. For a while don't bother about the properties mentioned in the above block. These properties will be explained in coming chapters and you can find complete detail about properties in CSS References.
Grouping Selectors:
You can apply a style to many selectors if you like. Just separate the selectors with a comma as given in the following example:
h1, h2, h3 { color: #36C; font-weight: normal; letter-spacing: .4em; margin-bottom: 1em; text-transform: lowercase; }
This define style rule will be applicable to h1, h2 and h3 element as well. The order of the list is irrelevant. All the elements in the selector will have the corresponding declarations applied to them.
Attributes:
Attributes associated with <style> elements are:
Attribute Value Description Specifies the style sheet language as a content-type (MIME type). This is required attribute.
type
text/css
media
screen tty Specifies the device the document will be displayed on. Default value is all. This tv is optional attribute. projection handheld
Example:
Following is the example of embed CSS based on above syntax:
<head> <style type="text/css" media="all"> h1{ color: #36C; } </style> </head>
Attributes:
Attribute Value style rules Description The value of style attribute is a combination of style declarations separated by semicolon (;).
style
Example:
Following is the example of inline CSS based on above syntax:
<h1 style ="color:#36C;"> This is inline CSS </h1>
Attributes:
Attributes associated with <style> elements are:
Attribute Value Description Specifies the style sheet language as a content-type (MIME type). This attribute is required. Specifies the style sheet file having Style rules. This attribute is a required.
type
text/css
href
URL
media
screen tty tv projection Specifies the device the document will be displayed on. Default value is all. This handheld is optional attribute. print braille aural all
Example:
Consider a simple style sheet file with a name mystyle.css having the following rules:
h1, h2, h3 { color: #36C; font-weight: normal; letter-spacing: .4em; margin-bottom: 1em; text-transform: lowercase; }
Now you can include this file mystyle.css in any HTML document as follows:
<head> <link type="text/css" href="mystyle.css" media="all" /> </head>
Here URL is the URL of the style sheet file having style rules. You can use another syntax as well:
<head> <@import url("URL"); </head>
Example:
Following is the example showing you how to import a style sheet file into HTML document:
<head> @import "mystyle.css"; </head>
We have discussed four ways to include style sheet rules in a an HTML document. Here is the rule to override any Style Sheet Rule.
Any inline style sheet takes highest priority. So it will override any rule defined in <style>...</style> tags or rules defined in any external style sheet file. Any rule defined in <style>...</style> tags will override rules defined in any external style sheet file. Any rule defined in external style sheet file takes lowest priority and rules defined in this file will be applied only when above two rules are not applicable.
CSS Comments:
Many times you may need to put additional comments in your style sheet blocks. So it is very easy to comment any part in style sheet. You simple put your comments inside /*.....this is a comment in style sheet.....*/. You can use /* ....*/ to comment multi-line blocks in similar way you do in C and C++ programming languages.
Example:
/* This is an external style sheet file */ h1, h2, h3 { color: #36C; font-weight: normal; letter-spacing: .4em; margin-bottom: 1em; text-transform: lowercase; } /* end of style rules. */
cm em
ex
This value defines a measurement relative to a p {font-size: 24pt; line-height: 3ex;} font's x-height. The x-height is determined by the height of the font's lowercase letter x. Defines a measurement in inches. Defines a measurement in millimeters. Defines a measurement in picas. A pica is equivalent to 12 points; thus, there are 6 picas per inch. Defines a measurement in points. A point is defined as 1/72nd of an inch. Defines a measurement in screen pixels. p {word-spacing: .15in;} p {word-spacing: 15mm;} p {font-size: 20pc;}
in mm pc
pt px
CSS - Colors
CSS uses color values to specify a color. Typically, these are used to set a color either for the foreground of an element(i.e., its text) or else for the background of the element. They can also be used to affect the color of borders and other decorative effects. You can specify your color values in various formats. Following table tells you all possible formats:
Format Hex Code Short Hex Code RGB % RGB Absolute keyword Syntax #RRGGBB #RGB rgb(rrr%,ggg%,bbb%) rgb(rrr,ggg,bbb) aqua, black, etc. Example p{color:#FF0000;} p{color:#6A7;} p{color:rgb(50%,50%,50%);} p{color:rgb(0,0,255);} p{color:teal;}
00CC66 00CC99 00CCCC 00FF66 330066 333366 00FF99 330099 333399 00FFCC 3300CC 3333CC
336600 339900
336633 339933
336666 339966
336699 339999
3366CC 3399CC
3366FF 3399FF 33CCFF 33FFFF 6600FF 6633FF 6666FF 6699FF 66CCFF 66FFFF 9900FF 9933FF 9966FF 9999FF 99CCFF 99FFFF CC00FF
33CC00 33CC33 33FF00 660000 663300 666600 669900 33FF33 660033 663333 666633 669933
33CC66 33CC99 33CCCC 33FF66 660066 663366 666666 669966 33FF99 660099 663399 666699 669999 33FFCC 6600CC 6633CC 6666CC 6699CC
66CC00 66CC33 66FF00 990000 993300 996600 999900 66FF33 990033 993333 996633 999933
66CC66 66CC99 66CCCC 66FF66 990066 993366 996666 999966 66FF99 990099 993399 996699 999999 66FFCC 9900CC 9933CC 9966CC 9999CC
CC0000 CC0033
CCCC00 CCCC33 CCCC66 CCCC99 CCCCCC CCCCFF CCFF00 FF0000 FF3300 FF6600 FF9900 FFCC00 FFFF00 CCFF33 FF0033 FF3333 FF6633 FF9933 FFCC33 FFFF33 CCFF66 FF0066 FF3366 FF6666 FF9966 FFCC66 FFFF66 CCFF99 FF0099 FF3399 FF6699 FF9999 FFCC99 FFFF99 CCFFCC FF00CC FF33CC FF66CC FF99CC FFCCCC FFFFCC CCFFFF FF00FF FF33FF FF66FF FF99FF FFCCFF FFFFFF
The background-color property is used to set the background color of an element. The background-image property is used to set the background image of an element. The background-repeat property is used to control the repetition of an image in the background. The background-position property is used to control the position of an image in the background. The background-attachment property is used to control the scrolling of an image in the background. The background property is used as shorthand to specify a number of other background properties.
This will produce following result: This text has a yellow background color. To Become more comfortable - Do Online Practice
To Become more comfortable - Do Online Practice Following is the example which demonstrates how to repeat the background image vertically.
<table style="background-image:url(/images/pattern1.gif); background-repeat: repeat-y;"> <tr><td> This table has background image set which will repeat vertically. </td></tr> </table>
To Become more comfortable - Do Online Practice Following is the example which demonstrates how to repeat the background image horizontally.
<table style="background-image:url(/images/pattern1.gif); background-repeat: repeat-x;"> <tr><td> This table has background image set which will repeat horizontally. </td></tr> </table>
background-position:100px;"> <tr><td> Background image positioned 100 pixels away from the left. </td></tr> </table>
Following is the example which demonstrates how to set the background image position 100 pixels away from the left side and 200 pixels down from the top.
<table style="background-image:url(/images/pattern1.gif); background-position:100px 200px;"> <tr><td> This table has background image positioned 100 pixels away from the left and 200 pixels from the top. </td></tr> </table>
Following is the example which demonstrates how to set the scrolling background image.
<p style="background-image:url(/images/pattern1.gif); background-attachment:scroll;"> This parapgraph has scrolling background image. </p>
Shorthand property :
You can use the background property to set all the background properties at once. For example:
<p style="background:url(/images/pattern1.gif) repeat fixed;"> This parapgraph has fixed repeated background image. </p>
The font-family property is used to change the face of a font. The font-style property is used to make a font italic or oblique. The font-variant property is used to create a small-caps effect. The font-weight property is used to increase or decrease how bold or light a font appears. The font-size property is used to increase or decrease the size of a font. The font property is used as shorthand to specify a number of other font properties.
This will produce following result: This text is rendered in either georgia, garamond, or the default serif font depending on which font you have at your system. To Become more comfortable - Do Online Practice
This will produce following result: This text will be rendered in italic style To Become more comfortable - Do Online Practice
This will produce following result: THIS TEXT WILL BE RENEDERED AS SMALL CAPS To Become more comfortable - Do Online Practice
This font is bold. This font is bolder. This font is 900 weight. To Become more comfortable - Do Online Practice
This will produce following result: This text is using a font-size-adjust value. To Become more comfortable - Do Online Practice
This will produce following result: If this doesn't appear to work, it is likely that your computer doesn't have a condensed or expanded version of the font being used. To Become more comfortable - Do Online Practice
Shorthand property :
You can use the font property to set all the font properties at once. For example:
<p style="font:italic small-caps bold 15px georgia;"> Applying all the properties on the text at once. </p>
The color property is used to set the color of a text. The direction property is used to set the text direction. The letter-spacing property is used to add or subtract space between the letters that make up a word. The word-spacing property is used to add or subtract space between the words of a sentence. The text-indent property is used to indent the text of a paragraph. The text-align property is used to align the text of a document. The text-decoration property is used to underline, overline, and strikethrough text. The text-transform property is used to capitalize text or convert text to uppercase or lowercase letters. The white-space property is used to control the flow and formatting of text. The text-shadow property is used to set the text shadow around a text.
This will produce following result: This text will be written in red. To Become more comfortable - Do Online Practice
This will produce following result: This text will be renedered from right to left To Become more comfortable - Do Online Practice
This will produce following result: This text is having space between letters. To Become more comfortable - Do Online Practice
This will produce following result: This text is having space between words. To Become more comfortable - Do Online Practice
<p style="text-indent:1cm;"> This text will have first line indented by 1cm and this line will remain at its actual position this is done by CSS text-indent property. </p>
This will produce following result: This text will have first line indented by 1cm and this line will remain at its actual position this is done by CSS text-indent property. To Become more comfortable - Do Online Practice
This will produce following result: This will be right aligned. This will be center aligned. This will be left aligned. To Become more comfortable - Do Online Practice
<p style="text-decoration:underline;"> This will be underlined </p> <p style="text-decoration:line-through;"> This will be striked through. </p> <p style="text-decoration:overline;"> This will have a over line. </p> <p style="text-decoration:blink;"> This text will have blinking effect </p>
This will produce following result: This will be underlined This will be striked through. This will have a over line. This text will have blinking effect To Become more comfortable - Do Online Practice
This will produce following result: This will be capitalized THIS WILL BE IN UPPERCASE
This will produce following result: This text has a line break and the white-space pre setting tells the browser to honor it just like the HTML pre tag.
This will produce following result: If your browser supports the CSS text-shadow property, this text will have a blue shadow.
CSS - Images
Images are very important part of any Web Page. Though it is not recommended to include lot of images but it is still important to use good images wherever it is required. CSS plays a good role to control image display. You can set following image properties using CSS.
The border property is used to set the width of an image border. The height property is used to set the height of an image. The width property is used to set the width of an image. The -moz-opacity property is used to set the opacity of an image.
In Mozilla (-moz-opacity:x) x can be a value from 0.0 - 1.0. A lower value makes the element more transparent (The same things goes for the CSS3-valid syntax opacity:x). In IE (filter:alpha(opacity=x)) x can be a value from 0 - 100. A lower value makes the element more transparent. Here is the example: <img style="border:1px solid red;-moz-opacity:0.4;filter:alpha(opacity=40);" src="/images/css.gif" /> This will produce following result:
CSS - Links
This tutorial will teach you how to set different properties of a hyper link using CSS. You can set following properties of a hyper link: We will revisit same properties when we will discuss Pseudo-Classes of CSS.
The :link Signifies unvisited hyperlinks. The :visited Signifies visited hyperlinks. The :hover Signifies an element that currently has the user's mouse pointer hovering over it. The :active Signifies an element on which the user is currently clicking.
Usually these all properties are kept in the header part of HTML document. Remember a:hover MUST come after a:link and a:visited in the CSS definition in order to be effective. Also, a:active MUST come after a:hover in the CSS definition as follows.
<style type="text/css"> a:link {color: #000000} a:visited {color: #006600} a:hover {color: #FFCC00} a:active {color: #FF00CC} </style>
Now we will see how to use these properties to give different effects to hyperlinks.
This will produce following link. Once you will click this link, it will change its color to green. Click this link
Following is the example which demonstrates how to change the color of links when we bring a mouse pointer over that link. Possible value could be any color name in any valid format.
<style type="text/css"> a:hover {color: #FFCC00} </style> <a href="/html/index.htm">Bring Mouse Here</a>
This will produce following link. Now you bring your mouse over this link and you will see that it changes its color to yellow. Bring Mouse Here
This will produce following link. This will change it color to pink when user clicks it. Click This Link
CSS - Tables
This tutorial will teach you how to set different properties of an HTML table using CSS. You can set following properties of a table:
The border-collapse Specifies whether the browser should control the appearance of adjacent borders that touch each other or whether each cell should maintain its style. The border-spacing Specifies the width that should appear between table cells. The caption-side Captions are presented in the <caption> element. By default, these are rendered above the table in the document. You use the caption-side property to control the placement of the table caption. The empty-cells Specifies whether the border should be shown if a cell is empty.
The table-layout Allows browsers to speed up layout of a table by using the first width properties it comes across for the rest of a column rather than having to load the whole table before rendering it.
This will produce following result: Collapse Border Example Cell A Collapse Example Cell B Collapse Example Separate Border Example Cell A Separate Example
This will produce following result: Separate Border Example with border-spacing Cell A Collapse Example Cell B Collapse Example Separate Border Example with border-spacing Cell A Separate Example Cell B Separate Example To Become more comfortable - Do Online Practice
<tr><td > Cell B</td></tr> </table> <br /> <table style="width:400px; border:1px solid black;"> <caption class="left"> This caption will appear at the left </caption> <tr><td > Cell A</td></tr> <tr><td > Cell B</td></tr> </table> <br /> <table style="width:400px; border:1px solid black;"> <caption class="right"> This caption will appear at the right </caption> <tr><td > Cell A</td></tr> <tr><td > Cell B</td></tr> </table>
This will produce following result: This caption will appear at the top Cell A Cell B This caption will appear at the bottom Cell A Cell B This caption will appear at the left Cell A Cell B This caption will appear at the right Cell A Cell B To Become more comfortable - Do Online Practice
The empty-cells property indicates whether a cell without any content should have a border displayed. This property can have one of the three values show, hide or inherit. Here is the empty-cells property used to hide borders of empty cells in the <table> element.
<style type="text/css"> table.empty{ width:350px; border-collapse:separate; empty-cells:hide; } td.empty{ padding:5px; border-style:solid; border-width:1px; border-color:#999999; } </style> <table class="empty"> <tr> <th></th> <th>Title one</th> <th>Title two</th> </tr> <tr> <th>Row Title</th> <td class="empty">value</td> <td class="empty">value</td> </tr> <tr> <th>Row Title</th> <td class="empty">value</td> <td class="empty"></td> </tr> </table>
This will produce following result: Title one Title two value Row Title value Row Title value To Become more comfortable - Do Online Practice
The table-layout property is supposed to help you control how a browser should render or lay out a table. This property can have one of the three values fixed, auto or inherit. Here is the example to show the difference between these properties. NOTE:This property is not supported by many browsers so do not rely on this property.
<style type="text/css"> table.auto { table-layout: auto } table.fixed { table-layout: fixed } </style> <table class="auto" border="1" width="100%"> <tr> <td width="20%">1000000000000000000000000000</td> <td width="40%">10000000</td> <td width="40%">100</td> </tr> </table> <br /> <table class="fixed" border="1" width="100%"> <tr> <td width="20%">1000000000000000000000000000</td> <td width="40%">10000000</td> <td width="40%">100</td> </tr> </table>
This will produce following result: 1000000000000000000000000000 10000000 1000000000000000000000000000 10000000 100 100
CSS - Borders
The border properties allow you to specify how the border of the box representing an element should look. There are three properties of a border you can change
The border-color Specifies the color of a border. The border-style Specifies whether a border should be solid, dashed line, double line, or one of the other possible values. The border-width Specifies the width of a border.
border-bottom-color changes the color of bottom border. border-top-color changes the color of top border. border-left-color changes the color of left border. border-right-color changes the color of right border.
This example is showing all borders in different colors. This example is showing all borders in green color only. To Become more comfortable - Do Online Practice
none: No border. (Equivalent of border-width:0;) solid: Border is a single solid line. dotted: Border is a series of dots. dashed: Border is a series of short lines. double: Border is two solid lines. groove: Border looks as though it is carved into the page. ridge: Border looks the opposite of groove. inset: Border makes the box look like it is embedded in the page. outset: Border makes the box look like it is coming out of the canvas. hidden: Same as none, except in terms of border-conflict resolution for table elements.
You can individually change the style of the bottom, left, top, and right borders of an element using following properties:
border-bottom-style changes the style of bottom border. border-top-style changes the style of top border. border-left-style changes the style of left border. border-right-style changes the style of right border.
This is aridge border. </p> <p style="border-width:4px; border-style:inset;"> This is a inset border. </p> <p style="border-width:4px; border-style:outset;"> This is a outset border. </p> <p style="border-width:4px; border-style:hidden;"> This is a hidden border. </p> <p style="border-width:4px; border-top-style:solid; border-bottom-style:dashed; border-left-style:groove; border-right-style:double;"> This is a a border with four different styles. </p>
This will produce following result: This is a border with none width. This is a solid border. This is a dahsed border. This is a double border. This is a groove border. This is aridge border. This is a inset border. This is a outset border. This is a hidden border. This is a a border with four different styles. To Become more comfortable - Do Online Practice
The border-width property allows you to set the width of an element borders. The value of this property could be either a length in px, pt or cm or it should be set to thin, medium or thick. You can individually change the width of the bottom, top, left, and right borders of an element using the following properties:
border-bottom-width changes the width of bottom border. border-top-width changes the width of top border. border-left-width changes the width of left border. border-right-width changes the width of right border.
This will produce following result: This is a solid border whose width is 4px. This is a solid border whose width is 4pt. This is a solid border whose width is thin. This is a solid border whose width is medium;
This is a solid border whose width is thick. This is a a border with four different width. To Become more comfortable - Do Online Practice
This will produce following result: This example is showing shorthand property for border.
CSS - Margins
The margin property defines the space around an HTML element. It is possible to use negative values to overlap content. The values of the margin property are not inherited by child elements. Remember that the adjacent vertical margins (top and bottom margins) will collapse into each other so that the distance between the blocks is not the sum of the margins, but only the greater of the two margins or the same size as one margin if both are equal. There are following four properties to set an element margin.
The margin A shorthand property for setting the margin properties in one declaration. The margin-bottom Specifies the bottom margin of an element. The margin-top Specifies the top margin of an element. The margin-left Specifies the left margin of an element. The margin-right Specifies the right margin of an element.
<p style="margin: 15px; border:1px solid black;"> all four margins will be 15px </p> <p style="margin:10px 2%; border:1px solid black;"> top and bottom margin will be 10px, left and right margin will be 2% of the total width of the document. </p> <p style="margin: 10px 2% -10px; border:1px solid black;"> top margin will be 10px, left and right margin will be 2% of the total width of the document, bottom margin will be -10px </p> <p style="margin: 10px 2% -10px auto; border:1px solid black;"> top margin will be 10px, right margin will be 2% of the total width of the document, bottom margin will be -10px, left margin will be set by the browser </p> This will produce following result:
all four margins will be 10px top and bottom margin will be 10px, left and right margin will be 2% of the total width of the document. top margin will be 10px, left and right margin will be 2% of the total width of the document, bottom margin will be -10px top margin will be 10px, right margin will be 2% of the total width of the document, bottom margin will be -10px, left margin will be set by the browser To Become more comfortable - Do Online Practice
<p style="margin-bottom: 5%; border:1px solid black;"> This is another paragraph with a specified bottom margin in percent </p> This will produce following result: This is a paragraph with a specified bottom margin This is another paragraph with a specified bottom margin in percent To Become more comfortable - Do Online Practice
This is a paragraph with a specified top margin This is another paragraph with a specified top margin in percent To Become more comfortable - Do Online Practice
Here is the example: <p style="margin-left: 15px; border:1px solid black;"> This is a paragraph with a specified left margin </p> <p style="margin-left: 5%; border:1px solid black;"> This is another paragraph with a specified top margin in percent </p> This will produce following result: This is a paragraph with a specified left margin This is another paragraph with a specified top margin in percent To Become more comfortable - Do Online Practice
CSS - Lists
Lists are very helpful in conveying a set of either numbered or bulleted points. This tutorial teaches you how to control list type, position, style etc. using CSS There are following five CSS properties which can be used to control lists:
The list-style-type Allows you to control the shape or appearance of the marker. The list-style-position Specifies whether a long point that wraps to a second line should align with the first line or start underneath the start of the marker. The list-style-image Specifies an image for the marker rather than a bullet point or number. The list-style Serves as shorthand for the preceding properties. The marker-offset Specifies the distance between a marker and the text in the list.
disc (default) A filled-in circle circle square An empty circle A filled-in square
Here are the values which can be used for an ordered list: Value decimal decimal-leadingzero lower-alpha Number 0 before the number Lowercase alphanumeric characters Description 1,2,3,4,5 01, 02, 03, 04, 05 a, b, c, d, e Example
upper-alpha lower-roman upper-roman lower-greek lower-latin upper-latin hebrew armenian georgian cjk-ideographic hiragana katakana hiragana-iroha katakana-iroha
Uppercase alphanumeric characters Lowercase Roman numerals Uppercase Roman numerals The marker is lower-greek The marker is lower-latin The marker is upper-latin The marker is traditional Hebrew numbering The marker is traditional Armenian numbering The marker is traditional Georgian numbering The marker is plain ideographic numbers The marker is hiragana The marker is katakana The marker is hiragana-iroha The marker is katakana-iroha
a, i, u, e, o, ka, ki A, I, U, E, O, KA, KI i, ro, ha, ni, ho, he, to I, RO, HA, NI, HO, HE, TO
<ul style="list-style-type:circle;"> <li>Maths</li> <li>Social Science</li> <li>Physics</li> </ul> <ul style="list-style-type:square;"> <li>Maths</li> <li>Social Science</li> <li>Physics</li> </ul> <ol style="list-style-type:decimal;"> <li>Maths</li> <li>Social Science</li> <li>Physics</li> </ol>
<ol style="list-style-type:lower-alpha;"> <li>Maths</li> <li>Social Science</li> <li>Physics</li> </ol> <ol style="list-style-type:lower-roman;"> <li>Maths</li> <li>Social Science</li> <li>Physics</li> </ol>
1. Maths 2. Social Science 3. Physics a. Maths b. Social Science c. Physics i. ii. iii. Maths Social Science Physics
NA If the text goes onto a second line, the text will wrap underneath the marker. It will also appear indented to where the text would have started if the list had a value of outside. If the text goes onto a second line, the text will be aligned with the start of the first line (to the right of the bullet).
<ul style="list-style-type:circle; list-stlye-position:outside;"> <li>Maths</li> <li>Social Science</li> <li>Physics</li> </ul> <ul style="list-style-type:square;list-style-position:inside;"> <li>Maths</li> <li>Social Science</li> <li>Physics</li> </ul> <ol style="list-style-type:decimal;list-stlye-position:outside;"> <li>Maths</li> <li>Social Science</li> <li>Physics</li> </ol> <ol style="list-style-type:lower-alpha;list-style-position:inside;"> <li>Maths</li> <li>Social Science</li> <li>Physics</li> </ol>
<ul> <li style="list-style-image: url(/images/bullet.gif);">Maths</li> <li>Social Science</li> <li>Physics</li> </ul> <ol> <li style="list-style-image: url(/images/bullet.gif);">Maths</li> <li>Social Science</li> <li>Physics</li> </ol>
<ul style="list-style: inside square;"> <li>Maths</li> <li>Social Science</li> <li>Physics</li> </ul> <ol style="list-style: outside upper-alpha;"> <li>Maths</li> <li>Social Science</li> <li>Physics</li> </ol>
<li>Maths</li> <li>Social Science</li> <li>Physics</li> </ul> <ol style="list-style: outside upper-alpha; marker-offset:2cm;"> <li>Maths</li> <li>Social Science</li> <li>Physics</li> </ol>
CSS - Paddings
The padding property allows you to specify how much space should appear between the content of an element and its border: There are following five CSS properties which can be used to control lists: The value of this attribute should be either a length, a percentage, or the word inherit. If the value is inherit it will have the same padding as its parent element. If a percentage is used, the percentage is of the containing box. You can also set different values for the padding on each side of the box using the following properties:
The padding-bottom Specifies the bottom padding of an element. The padding-top Specifies the top padding of an element. The padding-left Specifies the left padding of an element. The padding-right Specifies the right padding of an element. The padding Serves as shorthand for the preceding properties.
<p style="padding-bottom: 15px; border:1px solid black;"> This is a paragraph with a specified bottom padding </p> <p style="padding-bottom: 5%; border:1px solid black;"> This is another paragraph with a specified bottom padding in percent </p>
This will produce following result: This is a paragraph with a specified bottom padding
<p style="padding-top: 15px; border:1px solid black;"> This is a paragraph with a specified top padding </p> <p style="padding-top: 5%; border:1px solid black;"> This is another paragraph with a specified top padding in percent </p>
This is a paragraph with a specified top padding This is another paragraph with a specified top padding in percent To Become more comfortable - Do Online Practice
<p style="padding-left: 15px; border:1px solid black;"> This is a paragraph with a specified left padding </p>
<p style="padding-left: 15%; border:1px solid black;"> This is another paragraph with a specified left padding in percent </p>
This will produce following result: This is a paragraph with a specified left padding This is another paragraph with a specified left padding in percent To Become more comfortable - Do Online Practice
<p style="padding-right: 15px; border:1px solid black;"> This is a paragraph with a specified right padding </p> <p style="padding-right: 5%; border:1px solid black;"> This is another paragraph with a specified right padding in percent </p>
This will produce following result: This is a paragraph with a specified right padding This is another paragraph with a specified right padding in percent To Become more comfortable - Do Online Practice
Here is the example: <p style="padding: 15px; border:1px solid black;"> all four padding will be 15px </p> <p style="padding:10px 2%; border:1px solid black;"> top and bottom padding will be 10px, left and right padding will be 2% of the total width of the document. </p> <p style="padding: 10px 2% 10px; border:1px solid black;"> top padding will be 10px, left and right padding will be 2% of the total width of the document, bottom padding will be 10px </p> <p style="padding: 10px 2% 10px 10px; border:1px solid black;"> top padding will be 10px, right padding will be 2% of the total width of the document, bottom padding and top padding will be 10px </p> This will produce following result:
top and bottom paddings will be 10px, left and right paddings will be 2% of the total width of the document. top padding will be 10px, left and right padding will be 2% of the total width of the document, bottom padding will be 10px
top padding will be 10px, right padding will be 2% of the total width of the document, bottom padding and top padding will be 10px
CSS - Cursors
The cursor property of CSS allows you to specify the type of cursor that should be displayed to the user. One good usage of this property is in using images for submit buttons on forms. By default, when a cursor hovers over a link, the cursor changed from a pointer to a hand. For a submit button on a form this does not happen. Therefore, using the cursor property to change the cursor to a hand whenever someone hovers over an image that is a submit button. This provides a visual clue that they can click it. The table that follows shows possible values for the cursor property: Value auto crosshair default pointer move e-resize ne-resize nwresize n-resize se-resize Description Shape of the cursor depends on the context area it is over. For example an I over text, a hand over a link, and so on... A crosshair or plus sign An arrow A pointing hand (in IE 4 this value is hand) The I bar The cursor indicates that an edge of a box is to be moved right (east) The cursor indicates that an edge of a box is to be moved up and right (north/east) The cursor indicates that an edge of a box is to be moved up and left (north/west) The cursor indicates that an edge of a box is to be moved up (north) The cursor indicates that an edge of a box is to be moved down and right (south/east)
sw-resize The cursor indicates that an edge of a box is to be moved down and left (south/west) s-resize w-resize text wait help The cursor indicates that an edge of a box is to be moved down (south) The cursor indicates that an edge of a box is to be moved left (west) The I bar An hour glass A question mark or balloon, ideal for use over help buttons
<url>
NOTE: You should try to use only these values to add helpful information for users, and in places they would expect to see that cursor. For example, using the crosshair when someone hovers over a link can confuse visitors. Here is the example:
<p>Move the mouse over the words to see the cursor change:</p> <div style="cursor:auto">Auto</div> <div style="cursor:crosshair">Crosshair</div> <div style="cursor:default">Default</div> <div style="cursor:pointer">Pointer</div> <div style="cursor:move">Move</div> <div style="cursor:e-resize">e-resize</div> <div style="cursor:ne-resize">ne-resize</div> <div style="cursor:nw-resize">nw-resize</div> <div style="cursor:n-resize">n-resize</div> <div style="cursor:se-resize">se-resize</div> <div style="cursor:sw-resize">sw-resize</div> <div style="cursor:s-resize">s-resize</div> <div style="cursor:w-resize">w-resize</div> <div style="cursor:text">text</div> <div style="cursor:wait">wait</div> <div style="cursor:help">help</div>
This will produce following result: Move the mouse over the words to see the cursor change: Auto Crosshair Default Pointer Move e-resize ne-resize nw-resize n-resize se-resize sw-resize s-resize w-resize text wait help
CSS - Outlines
Outlines are very similar to the borders but there are few major differences in borders and outlines:
An outline does not take up space. Outlines do not have to be rectangular. Outline is always the same on all sides; you cannot specify different values for different sides of the element.
NOTE: The outline properties are not supported by IE 6 or Netscape 7. You can set following outline properties using CSS.
The outline-width property is used to set the width of the outline. The outline-style property is used to set the line style for the outline. The outline-color property is used to set the color of the outline. The outline property is used to set all the above three properties in a single statement.
This will produce following result: This text is having thin outline.
none: No border. (Equivalent of outline-width:0;) solid: Outline is a single solid line. dotted: Outline is a series of dots. dashed: Outline is a series of short lines. double: Outline is two solid lines. groove: Outline looks as though it is carved into the page. ridge: Outline looks the opposite of groove. inset: Outline makes the box look like it is embedded in the page. outset: Outline makes the box look like it is coming out of the canvas. hidden: Same as none.
This will produce following result: This text is having thin solid outline.
This text is having 5x dotted outline. To Become more comfortable - Do Online Practice
This will produce following result: This text is having thin solid red outline.
This text is having 5x dotted blue outline. To Become more comfortable - Do Online Practice
This will produce following result: This text is having thin solid red outline.
CSS - Dimension
You have seen the border that surrounds every box ie. element, the padding that can appear inside each box and the margin that can go around them. In this tutorial we will how we can change the dimensions of boxes. There are following properties that allow you to control the dimensions of a box.
The height property is used to set the height of a box. The width property is used to set the width of a box. The line-height property is used to set the height of a line of text. The max-height property is used to set a maximum height that a box can be. The min-height property is used to set the minimum height that a box can be. The max-width property is used to set the maximum width that a box can be. The min-width property is used to set the minimum width that a box can be.
<p style="width:400px; height:100px;border:1px solid red; padding:5px; margin:10px;line-height:30px;"> This paragraph is 400pixels wide and 100 pixels high and here line height is 30pixels.This paragraph is 400 pixels wide and 100 pixels high and here line height is 30pixels. </p>
This paragraph is 400pixels wide and 100 pixels high and here line height is 30pixels.This paragraph is 400 pixels wide and 100 pixels high and here line height is 30pixels.
This paragraph is 400px wide and max height is 10px This paragraph is 400px wide and max height is 10px This paragraph is 400px wide and max height is 10px This paragraph is 400px wide and max height is 10px
This paragraph is 400px wide and min height is 200px This paragraph is 400px wide and min height is 200px This paragraph is 400px wide and min height is 200px This paragraph is 400px wide and min height is 200px
NOTE: This property does not work in either Netscape 7 or IE 6. Here is the example:
<p style="max-width:100px; height:200px;border:1px solid red; padding:5px; margin:10px;"> This paragraph is 200px high and max width is 100px This paragraph is 200px high and max width is 100px This paragraph is 200px high and max width is 100px This paragraph is 200px high and max width is 100px This paragraph is 200px high and max width is 100px </p> <img alt="logo" src="/images/css.gif" width="95" height="84" />
This paragraph is 200px high and max width is 100px This paragraph is 200px high and max width is 100px This paragraph is 200px high and max width is 100px This paragraph is 200px high and max width is 100px This paragraph is 200px high and max width is 100px
This paragraph is 100px high and min width is 400px This paragraph is 100px high and min width is 400px This paragraph is 100px high and min width is 400px This paragraph is 100px high and min width is 400px This paragraph is 100px high and min width is 400px
CSS - Scrollbars
There may be a case when an element's content might be larger than the amount of space allocated to it. For example given width and height properties did not allow enough room to accommodate the content of the element. CSS provides a property called overflow which tells the browser what to do if the box's contents is larger than the box itself. This property can take one of the following values: Value Description
visible Allows the content to overflow the borders of its containing element. hidden scroll auto The content of the nested element is simply cut off at the border of the containing element and no scrollbars is visible. The size of the containing element does not change, but the scrollbars are added to allow the user to scroll to see the content. The purpose is the same as scroll, but the scrollbar will be shown only if the content does overflow.
as vertical scrollbars. </div> <br /> <p>Example of auto value:</p> <div class="auto"> I am going to keep lot of content here just to show you how scrollbars works if there is an overflow in an element box. This provides your horizontal as well as vertical scrollbars. </div>
This will produce following result: (Try It on PC For Actual Output)S Example of scroll value: I am going to keep lot of content here just to show you how scrollbars works if there is an overflow in an element box. This provides your horizontal as well as vertical scrollbars.
Example of auto value: I am going to keep lot of content here just to show you how scrollbars works if there is an overflow in an element box. This provides your horizontal as well as vertical scrollbars.
*********************
Thank You
************************
CSS Advanced
CSS - Visibility
A property called visibility allows you to hide an element from view. You can use this property alongwith Javascript to create very complex menu and very complex webpage layouts. You may choose to use the visibility property to hide error messages that are only displayed if the user needs to see them, or to hide answers to a quiz until the user selects an option. NOTE: Remember that the source code will still contain whatever is in the invisible paragraph, so you should not use this to hide sensitive information such as credit card details or passwords. The visibility property can take the values listed in the table that follows: Value visible hidden Description The box and its contents are shown to the user. The box and its content are made invisible, although they still affect the layout of the page.
collapse This is for use only with dynamic table columns and row effects. Here is the example:
<p> This paragraph should be visible in normal way. </p> <p style="visibility:hidden;"> This paragraph should not be visible. </p>
This will produce following result: This paragraph should be visible in normal way.
CSS - Positioning
CSS helps you to position your HTML element. You can put any HTML element at whatever location you like. You can specify whether you want the element positioned relative to its natural position in the page or absolute based on its parent element. Now we will see all the CSS positioning related properties with examples:
Relative Positioning:
Relative positioning changes the position of the HTML element relative to where it normally appears. So "left:20" adds 20 pixels to the element's LEFT position. You can use two values top and left alongwith position property to move an HTML element anywhere in HTML document. Here's a quick reference when moving HTML elements in CSS.
Move Left - Use a negative value for left. Move Right - Use a positive value for left. Move Up - Use a negative value for top. Move Down - Use a positive value for top.
NOTE: You can use bottom or right values as well in the same way as top and left. Here is the example:
<div style="position:relative;left:80px;top:2px; background-color:yellow;"> This div has relative positioning. </div>
This will produce following result: This div has relative positioning. To Become more comfortable - Do Online Practice
Absolute Positioning:
An element with position: absolute is positioned at the specified coordinates relative to your screen top left corner.
You can use two values top and left alongwith position property to move an HTML element anywhere in HTML document. Here's a quick reference when moving HTML elements in CSS.
Move Left - Use a negative value for left. Move Right - Use a positive value for left. Move Up - Use a negative value for top. Move Down - Use a positive value for top.
NOTE: You can use bottom or right values as well in the same way as top and left. Here is the example:
<div style="position:absolute;left:80px;top:20px; background-color:yellow;"> This div has absolute positioning. </div>
Fixed Positioning:
Fixed positioning allows you to fix the position of an element to a particular spot on the page regardless of scrolling. Specified coordinates will be relative to the browser window. You can use two values top and left alongwith position property to move an HTML element anywhere in HTML document. Here's a quick reference when moving HTML elements in CSS.
Move Left - Use a negative value for left. Move Right - Use a positive value for left. Move Up - Use a negative value for top. Move Down - Use a positive value for top.
NOTE: You can use bottom or right values as well in the same way as top and left. Here is the example:
<div style="position:fixed;left:80px;top:20px; background-color:yellow;"> This div has fixed positioning. </div>
CSS - Layers
CSS gives you opportunity to create layers of various divisions. The CSS layers refer to applying the z-index property to elements that overlap with each other. The z-index property is used alongwith position property to create an effect of layers. You can specify which element should come on top and which element should come at bottom. A z-index property can help you to create more complex webpage layouts. Following is the example which shows how to create layers in CSS.
<div style="background-color:red; width:300px; height:100px; position:relative; top:10px; left:80px; z-index:2"> </div> <div style="background-color:yellow; width:300px; height:100px; position:relative; top:-60px; left:35px; z-index:1;"> </div> <div style="background-color:green; width:300px; height:100px; position:relative; top:-220px; left:120px; z-index:3;"> </div>
:first-child Use this class to add special style to an element that is the first child of some other element. :lang Use this class to specify a language to use in a specified element.
While defining pseudo-classes in a <style>...</style> block, following points should be taken care:
a:hover MUST come after a:link and a:visited in the CSS definition in order to be effective. a:active MUST come after a:hover in the CSS definition in order to be effective. Pseudo-class names are not case-sensitive. Pseudo-class are different from CSS classes but they can be combined.
This will produce following link. Once you will click this link, it will change its color to green.
Click this link
This will produce following link. Now you bring your mouse over this link and you will see that it changes its color to yellow.
Bring Mouse Here
This will produce following link. This will change its color to pink when user clicks it.
Click This Link
This will produce following link. This will change it color to orange when this link gets focused, then you focus on any other link to see that this color will change when it will lose focus.
This will produce following result: First paragraph in div. This paragraph will be indented Second paragraph in div. This paragraph will not be indented But it will not match the paragraph in this HTML:
Heading
The first paragraph inside the div. This paragraph will not be effected. To Become more comfortable - Do Online Practice
The :lang selectors will apply to all elements in the document. However, not all elements make use of the quotes property, so the effect will be transparent for most elements. ...A quote in a paragraph...
:first-letter Use this element to add special style to the first letter of the text in a selector. :before :after Use this element to insert some content before an element. Use this element to insert some content after an element.
This will produce following black link: This line would not have any underline because this belongs to nline class. The first line of this paragraph will be underlined as defined in the CSS rule above. Rest of the lines in this paragraph will remain normal. This example shows how to use :first-line pseduo element to give effect to the first lines of any HTML element. To Become more comfortable - Do Online Practice
This will produce following black link: First character of this paragraph will be normal and will have font size 10 px; The first character of this paragraph will be 3em big and in red color as defined in the CSS rule above. Rest of the characters in this paragraph will remain normal. This example shows how to use :first-letter pseduo element to give effect to the first characters of any HTML element. To Become more comfortable - Do Online Practice
<style type="text/css"> p:before { content: url(/images/bullet.gif) } </style> <p> This line will be preceded by a bullet.</p> <p> This line will be preceded by a bullet.</p> <p> This line will be preceded by a bullet.</p>
This will produce following black link: This line will be preceded by a bullet. This line will be preceded by a bullet. This line will be preceded by a bullet. To Become more comfortable - Do Online Practice
This will produce following black link: (Sometime its hard to show appropriate output on pdf file) This line will be succeeded by a bullet. This line will be succeeded by a bullet. This line will be succeeded by a bullet.
CSS - @ Rules
This tutorial will cover following important @ rules
The @import: rule imports another style sheet into the current style sheet. The @charset rule indicates the character set the style sheet uses. The @font-face rule is used to exhaustively describe a font face for use in a document. The !important rule indicates that a user-defined rule should take precedence over the author's style sheets.
NOTE: There are other @ rules which I will cover in subsequent chapters.
The significance of the @import rule is that it allows you to develop your style sheets with a modular approach. You can create various style sheets and then include them wherever you need them.
<style tyle="text/css"> <!-@charset "iso-8859-1" .......other CSS rules ..... --> </style>
So if you wanted to make sure that a property always applied, you would add the !important property to the tag. So, to make the paragraph text always red, you should write it as follows:
<style tyle="text/css"> <!-p { color: #ff0000 !important; } p { color: #000000; } --> </style>
Here you have made p { color: #ff0000 !important; } mandatory, now this rule will always apply even you have defined another rule p { color: #000000; }
Alpha Channel
This filter alters the opacity of the object, which makes it blend into the background. Following are the parameters which can be used in this filter:
Parameter opacity Description Level of the opacity. 0 is fully transparent, 100 is fully opaque.
finishopacity Level of the opacity at the other end of the object. The shape of the opacity gradient. 0 = uniform 1 = linear 2 = radial 3 = rectangular X coordinate for opacity gradient to begin. Y coordinate for opacity gradient to begin. X coordinate for opacity gradient to end. Y coordinate for opacity gradient to end.
style
Example:
<p>Image Example:</p>
<img src="/images/css.gif" alt="CSS Logo" style="Filter: Alpha(Opacity=100, FinishOpacity=0, Style=2, StartX=20, StartY=40, FinishX=0, FinishY=0)"> <p>Text Example:</p> <div style="width: 357; height: 50; font-size: 30pt; font-family: Arial Black; color: blue; Filter: Alpha(Opacity=100, FinishOpacity=0, Style=1, StartX=0, StartY=0, FinishX=580, FinishY=0)">CSS Tutorials</div>
Text Example:
CSS Tutorials
To Become more comfortable - Do Online Practice
Motion Blur
This will be used to create blurred pictures or text with the direction and strength. Following are the parameters which can be used in this filter:
Parameter Description True or false. If true the image is added to the blurred image and if false the image is not added to the blurred image.
add
The direction of the blur, going clockwise, rounded to 45-degree increments. The default value is 270 (left). 0 = Top 45 = Top right 90 = Right 135 = Bottom right 180 = Bottom 225 = Bottom left 270 = Left 315 = Top left The number of pixels the blur will extend. The default is 5 pixels.
direction
strength
Example:
<p>Image Example:</p> <img src="/images/css.gif" alt="CSS Logo" style="Filter: Blur(Add = 0, Direction = 225, Strength = 10)"> <p>Text Example:</p> <div style="width: 357; height: 50; font-size: 30pt; font-family: Arial Black; color: blue; Filter: Blur(Add = 1, Direction = 225, Strength = 10)">CSS Tutorials</div>
Text Example:
CSS Tutorials
To Become more comfortable - Do Online Practice
Chroma Filter
This will be used to make any particular color transparent and usually it is used with images. You can use it with scrollbars also.Following are the parameters which can be used in this filter:
Parameter color Description The color that you'd like to be transparent.
Example:
<p>Image Example:</p> <img src="/images/css.gif" alt="CSS Logo" style="Filter: Chroma(Color = #FFFFFF)"> <p>Text Example:</p> <div style="width: 580; height: 50; font-size: 30pt; font-family: Arial Black; color: #3300FF; Filter: Chroma(Color = #3300FF)">CSS Tutorials</div>
Text Example:
CSS Tutorials
To Become more comfortable - Do Online Practice
offX
offY
positive
Example:
<p>Image Example:</p> <img src="/images/css.gif" alt="CSS Logo" style="Filter: Chroma(Color = #000000) DropShadow(Color=#FF0000, OffX=2, OffY=2, Positive=1)"> <p>Text Example:</p> <div style="width: 357; height: 50; font-size: 30pt; font-family: Arial Black; color: red; Filter: DropShadow(Color=#000000, OffX=2, OffY=2, Positive=1)">CSS Tutorials</div>
Image Example:
Text Example:
CSS Tutorials
To Become more comfortable - Do Online Practice
Flip Effect
This will be used to create a mirror image of the object. Following are the parameters which can be used in this filter:
Parameter FlipH FlipV Description Creates a horizontal mirror image Creates a vertical mirror image
Example:
<p>Image Example:</p> <img src="/images/css.gif" alt="CSS Logo" style="Filter: FlipH"> <img src="/images/css.gif" alt="CSS Logo" style="Filter: FlipV"> <p>Text Example:</p> <div style="width: 300; height: 50; font-size: 30pt; font-family: Arial Black; color: red; Filter: FlipV">CSS
Tutorials</div>
Text Example:
CSS Tutorials
To Become more comfortable - Do Online Practice
Glow Effect
This will be used to create a glow around the object. If it is a transparent image then glow is created around the opaque pixels of it. Following are the parameters which can be used in this filter:
Parameter Description
color strength
The color you want the glow to be. The intensity of the glow (from 1 to 255).
Example:
<p>Image Example:</p> <img src="/images/css.gif" alt="CSS Logo" style="Filter: Chroma(Color = #000000) Glow(Color=#00FF00, Strength=20)"> <p>Text Example:</p> <div style="width: 357; height: 50; font-size: 30pt; font-family: Arial Black; color: red; Filter: Glow(Color=#00FF00, Strength=20)">CSS Tutorials</div>
Text Example:
CSS Tutorials
To Become more comfortable - Do Online Practice
Grayscale Effect
This will be used to convert the colors of the object to 256 shades of gray. Following are the parameters which can be used in this filter:
Parameter gray
Example:
<p>Image Example:</p> <img src="/images/css.gif" alt="CSS Logo" style="Filter: Gray"> <p>Text Example:</p> <div style="width: 357; height: 50; font-size: 30pt; font-family: Arial Black; color: red; Filter: Gray">CSS Tutorials</div>
Text Example:
CSS Tutorials
To Become more comfortable - Do Online Practice
Invert Effect
This will be used to map the colors of the object to their opposite value in the color spectrum ie. to create a negative image. Following are the parameters which can be used in this filter:
Parameter Invert
Description Maps the colors of the object to their opposite value in the color spectrum.
Example:
<p>Image Example:</p> <img src="/images/css.gif" alt="CSS Logo" style="Filter: invert"> <p>Text Example:</p> <div style="width: 357; height: 50; font-size: 30pt; font-family: Arial Black; color: red; Filter: invert">CSS Tutorials</div>
Text Example:
CSS Tutorials
To Become more comfortable - Do Online Practice
Mask Effect
This will be used to turn transparent pixels to a specified color and makes opaque pixels transparent. Following are the parameters which can be used in this filter:
Parameter color
Example:
<p>Image Example:</p> <img src="/images/css.gif" alt="CSS Logo" style="FILTER: Chroma(Color = #000000) Mask(Color=#00FF00)"> <p>Text Example:</p> <div style="width: 357; height: 50; font-size: 30pt; font-family: Arial Black; color: red; Filter: Mask(Color=#00FF00)">CSS Tutorials</div>
Text Example:
CSS Tutorials
To Become more comfortable - Do Online Practice
Shadow Filter
This will be used to create an attenuated shadow in the direction and color specified. This is a filter lies in between Dropshadow and a Glow. Following are the parameters which can be used in this filter:
Parameter color Description The color that you want the shadow to be. The direction of the blur, going clockwise, rounded to 45-degree increments. The default value is 270 (left). 0 = Top 45 = Top right 90 = Right 135 = Bottom right 180 = Bottom 225 = Bottom left 270 = Left 315 = Top left
direction
Example:
<p>Image Example:</p> <img src="/images/css.gif" alt="CSS Logo" style="FILTER: Chroma(Color = #000000) Shadow(Color=#00FF00, Direction=225)"> <p>Text Example:</p> <div style="width: 357; height: 50; font-size: 30pt; font-family: Arial Black; color: red; Filter: Shadow(Color=#0000FF, Direction=225)">CSS Tutorials</div>
Text Example:
CSS Tutorials
To Become more comfortable - Do Online Practice
Wave Effect
This will be used to gives the object a sine wave distortion to make it look wavey. Following are the parameters which can be used in this filter:
Parameter add freq light phase strength Description A value of 1 adds the original image to the waved image, 0 does not. The number of waves. The strength of the light on the wave (from 0 to 100). At what degree the sine wave should start (from 0 to 100). The intensity of the wave effect.
Example:
<p>Image Example:</p> <img src="/images/css.gif" alt="CSS Logo" style="FILTER: Chroma(Color = #000000) Wave(Add=0,
Freq=1, LightStrength=10, Phase=220, Strength=10)"> <p>Text Example:</p> <div style="width: 357; height: 50; font-size: 30pt; font-family: Arial Black; color: red; Filter: Wave(Add=0, Freq=1, LightStrength=10, Phase=20, Strength=20)">CSS Tutorials</div>
Text Example:
CSS Tutorials
To Become more comfortable - Do Online Practice
X-Ray Effect
This will be used to grayscales and flattens the color depth. Following are the parameters which can be used in this filter:
Parameter xray Description Grayscales and flattens the color depth.
Example:
<p>Image Example:</p>
<img src="/images/css.gif" alt="CSS Logo" style="Filter: Xray""> <p>Text Example:</p> <div style="width: 357; height: 50; font-size: 30pt; font-family: Arial Black; color: red; style="Filter: Xray">CSS Tutorials</div>
Text Example:
CSS Tutorials
Specify the target medium from a style sheet with the @media or @import at-rules. Specify the target medium within the document language.
embossed Intended for paged braille printers. handheld print projection screen tty tv Intended for handheld devices (typically small screen, monochrome, limited bandwidth). Intended for paged, opaque material and for documents viewed on screen in print preview mode. Please consult the section on paged media. Intended for projected presentations, for example projectors or print to transparencies. Please consult the section on paged media. Intended primarily for color computer screens. Intended for media using a fixed-pitch character grid, such as teletypes, terminals, or portable devices with limited display capabilities. Intended for television-type devices.
CSS2 features that define a particular page layout. CSS2 features that control the pagination of a document.
The page area: The page area includes the boxes laid out on that page. The edges of the page area act as the initial containing block for layout that occurs between page breaks. The margin area: which surrounds the page area.
You can specify the dimensions, orientation, margins, etc. of a page box within an @page rule. The dimensions of the page box are set with the 'size' property. The dimensions of the page area are the dimensions of the page box minus the margin area. For example, the following @page rule sets the page box size to 8.5 x 11 inches and creates '2cm' margin on all sides between the page box edge and the page area:
<style tyle="text/css"> <!-@page { size:8.5in 11in; margin: 2cm } --> </style>
You can use the margin, margin-top, margin-bottom, margin-left, and margin-right properties within the @page rule to set margins for your page. Finally, the marks property is used within the @page rule to create crop and registration marks outside the page box on the target sheet. By default, no marks are printed. You may use one or both of the crop and cross keywords to create crop marks and registration marks, respectively, on the target print page.
auto: The page box will be set to the size and orientation of the target sheet. landscape: Overrides the target's orientation. The page box is the same size as the target, and the longer sides are horizontal. portrait: Overrides the target's orientation. The page box is the same size as the target, and the shorter sides are horizontal. length: Length values for the 'size' property create an absolute page box. If only one length value is specified, it sets both the width and height of the page box. Percentage values are not allowed for the 'size' property.
In the following example, the outer edges of the page box will align with the target. The percentage value on the 'margin' property is relative to the target size so if the target sheet dimensions are 21.0cm x 29.7cm (i.e., A4), the margins are 2.10cm and 2.97cm.
<style tyle="text/css"> <!-@page { size: auto; /* auto is the initial value */ margin: 10%; } --> </style>
Below example sets the width of the page box to be 8.5in and the height to be 11in. The page box in this example requires a target sheet size of 8.5"x11" or larger.
<style tyle="text/css"> <!-@page { size: 8.5in 11in; /* width height */ } --> </style>
Once you create a named page layout, you can use it in your document by adding the page property to a style that is later applied to an element in your document. For example, this style renders all the tables in your document on landscape pages:
<style tyle="text/css"> <!-@page { size : portrait } @page rotated { size : landscape } table { page : rotated } -->
</style>
Due to the above rule, while printing, if the browser encounters a <table> element in your document and the current page layout is the default portrait layout, it starts a new page and prints the table on a landscape page.
You can specify the style for the first page of a document with the :first pseudo-class:
<style tyle="text/css"> <!-@page { margin: 2cm } /* All margins set to 2cm */ @page :first { margin-top: 10cm } --> </style> /* Top margin on first page 10cm */
Controlling pagination:
Unless you specify otherwise, page breaks occur only when the page format changes or when the content overflows the current page box. To otherwise force or suppress page breaks, use the page-break-before, pagebreak-after, and page-break-inside properties. Both the page-break-before and page-break-after properties accept the auto, always, avoid, left, and right keywords.
The keyword auto is the default, it lets the browser generate page breaks as needed. The keyword always forces a page break before or after the element, while avoid suppresses a page break immediately before or after the element. The left and right keywords force one or two page breaks, so that the element is rendered on a left-hand or right-hand page. Using pagination properties is straightforward. Suppose your document has level-1 headers start new chapters, with sections denoted by level-2 headers. You'd like each chapter to start on a new, right-hand page, but you don't want section headers to be split across a page break from the subsequent content. You can achieve this using following rule:
<style tyle="text/css"> <!-h1 { page-break-before : right } h2 { page-break-after : avoid } --> </style>
Use only the auto and avoid values with the page-break-inside property. If you prefer that your tables not be broken across pages if possible, you would write the rule:
<style tyle="text/css"> <!-table { page-break-inside : avoid } --> </style>
The orphans property specifies the minimum number of lines of a paragraph that must be left at the bottom of a page. The widows property specifies the minimum number of lines of a paragraph that must be left at the top of a page.
Here is the example to create 4 lines at the bottom and 3 lines at the top of each page:
<style tyle="text/css"> <!-@page{orphans:4; widows:2;} --> </style>
Learning to read Training Web access in vehicles Home entertainment Industrial documentation Medical documentation
When using aural properties, the canvas consists of a three-dimensional physical space (sound surrounds) and a temporal space (one may specify sounds before, during, and after other sounds). The CSS properties also allow you to vary the quality of synthesized speech (voice type, frequency, inflection, etc.) Here is one example:
<style tyle="text/css"> <!-h1, h2, h3, h4, h5, h6 { voice-family: paul; stress: 20; richness: 90; cue-before: url("ping.au") } p.heidi { azimuth: center-left } p.peter { azimuth: right } --> </style>
This will direct the speech synthesizer to speak headers in a voice (a kind of audio font) called "paul", on a flat tone, but in a very rich voice. Before speaking the headers, a sound sample will be played from the given URL. Paragraphs with class heidi will appear to come from front left (if the sound system is capable of spatial audio), and paragraphs of class peter from the right.
The azimuth property sets where the sound should come from horizontally. The elevation property sets where the sound should come from vertically. The cue-after specifies a sound to be played after speaking an element's content to delimit it from other. The cue-before specifies a sound to be played before speaking an element's content to delimit it from other. The cue is a shorthand for setting cue-before and cue-after The pause-after specifies a pause to be observed after speaking an element's content. The pause-before specifies a pause to be observed before speaking an element's content. The pause is a shorthand for setting pause-before and pause-after. The pitch specifies the average pitch (a frequency) of the speaking voice. The pitch-range specifies variation in average pitch. The play-during specifies a sound to be played as a background while an element's content is spoken. The richness specifies the richness, or brightness, of the speaking voice. The speak specifies whether text will be rendered aurally and if so, in what manner. The speak-numeral controls how numerals are spoken. The speak-punctuation specifies how punctuation is spoken. The speech-rate specifies the speaking rate. The stress specifies the height of "local peaks" in the intonation contour of a voice. The voice-family specifies prioritized list of voice family names. The volume refers to the median volume of the voice.
angle: Position is described in terms of an angle within the range -360deg to 360deg. The value 0deg means directly ahead in the center of the sound stage. 90deg is to the right, 180deg behind, and 270deg (or, equivalently and more conveniently, -90deg) to the left. left-side: Same as '270deg'. With 'behind', '270deg'. far-left: Same as '300deg'. With 'behind', '240deg'. left: Same as '320deg'. With 'behind', '220deg'. center-left: Same as '340deg'. With 'behind', '200deg'. center: Same as '0deg'. With 'behind', '180deg'. center-right: Same as '20deg'. With 'behind', '160deg'. right: Same as '40deg'. With 'behind', '140deg'. far-right: Same as '60deg'. With 'behind', '120deg'. right-side: Same as '90deg'. With 'behind', '90deg'. leftwards: Moves the sound to the left and relative to the current angle. More precisely, subtracts 20 degrees. rightwards: Moves the sound to the right, relative to the current angle. More precisely,
angle: Specifies the elevation as an angle, between -90deg and 90deg. 0deg means on the forward horizon, which loosely means level with the listener. 90deg means directly overhead and -90deg means directly below. below: Same as '-90deg'. level: Same as '0deg'. above: Same as '90deg'. higher: Adds 10 degrees to the current elevation. lower: Subtracts 10 degrees from the current elevation.
} } } }
url: The URL of a sound file to be played. none: Nothing has to be played
url: The URL of a sound file to be played. none: Nothing has to be played
This property specifies a pause to be observed after speaking an element's content. The possible values are:
time: Expresses the pause in absolute time units (seconds and milliseconds). percentage: Refers to the inverse of the value of the speech-rate property. For example, if the speech-rate is 120 words per minute (i.e. a word takes half a second, or 500ms) then a pause-after of 100% means a pause of 500 ms and a pause-after of 20% means 100ms.
time: Expresses the pause in absolute time units (seconds and milliseconds). percentage: Refers to the inverse of the value of the speech-rate property. For example, if the speech-rate is 120 words per minute (i.e. a word takes half a second, or 500ms) then a pause-before of 100% means a pause of 500 ms and a pause-before of 20% means 100ms.
frequency: Specifies the average pitch of the speaking voice in hertz (Hz).
x-low, low, medium, high, x-high : These values do not map to absolute frequencies since these values depend on the voice family.
number: A value between '0' and '100'. A pitch range of '0' produces a flat, monotonic voice. A pitch range of 50 produces normal inflection. Pitch ranges greater than 50 produce animated voices.
URI: The sound designated by this <uri> is played as a background while the element's content is spoken. mix: When present, this keyword means that the sound inherited from the parent element's play-during property continues to play and the sound designated by the uri is mixed with it. If mix is not specified, the element's background sound replaces the parent's. repeat: When present, this keyword means that the sound will repeat if it is too short to fill the entire duration of the element. Otherwise, the sound plays once and then stops. auto: The sound of the parent element continues to play. none: This keyword means that there is silence.
number: A value between '0' and '100'. The higher the value, the more the voice will
none: Suppresses aural rendering so that the element requires no time to render. normal: Uses language-dependent pronunciation rules for rendering an element and its children. spell-out: Spells the text one letter at a time .
Note the difference between an element whose 'volume' property has a value of 'silent' and an element whose 'speak' property has the value 'none'. The former takes up the same time as if it had been spoken, including any pause before and after the element, but no sound is generated. The latter requires no time and is not rendered
digits: Speak the numeral as individual digits. Thus, "237" is spoken "Two Three Seven". continuous: Speak the numeral as a full number. Thus, "237" is spoken "Two hundred thirty seven". Word representations are language-dependent.
code: Punctuation such as semicolons, braces, and so on are to be spoken literally. none: Punctuation is not to be spoken, but instead rendered naturally as various pauses.
number: Specifies the speaking rate in words per minute. x-slow: Same as 80 words per minute.. slow: Same as 120 words per minute . medium: Same as 180 - 200 words per minute. fast: Same as 300 words per minute.
x-fast: Same as 500 words per minute. faster: Adds 40 words per minute to the current speech rate. slower: Subtracts 40 words per minutes from the current speech rate.
number: A value, between '0' and '100'. The meaning of values depends on the language being spoken. For example, a level of '50' for a standard, English-speaking male voice (average pitch = 122Hz), speaking with normal intonation and emphasis would have a different meaning than '50' for an Italian voice.
generic-voice : Values are voice families. Possible values are 'male', 'female', and 'child'. specific-voice: Values are specific instances (e.g., comedian, trinoids, carlos, lani).
numbers: Any number between '0' and '100'. '0' represents the minimum audible volume level and 100 corresponds to the maximum comfortable level. percentage: These values are calculated relative to the inherited value, and are then clipped to the range '0' to '100'. silent: No sound at all. The value '0' does not mean the same as 'silent'. x-soft: Same as '0'.
soft: Same as '25'. medium: Same as '50'. loud: Same as '75'. x-loud: Same as '100'.
If you are defining your style sheet in a separate file then you can also use the media attribute when linking to an external style sheet:
<link rel="stylesheet" type="text/css" media="print" href="mystyle.css">
CSS Layouts
Hope you are very comfortable with HTML tables and you are efficient in designing page layouts using HTML Tables. But you know CSS also provides plenty of controls for positioning elements in a document. Since CSS is the wave of the future, why not learn and use CSS instead of tables for page layout purposes? I'm listing down few pros and cons of both the technologies:
Most browsers support tables, while CSS support is being slowly adopted. Tables are more forgiving when the browser window size changes - morphing their content and wrapping to accommodate the changes accordingly. CSS positioning tends to be exact and fairly inflexible. Tables are much easier to learn and manipulate than CSS rules.
CSS is pivotal to the future of Web documents and will be supported by most browsers Using it now helps guarantee future compliance. CSS is more exact than tables, allowing your document to be viewed as you intended, regardless of the browser window. Keeping track of nested tables can be a real pain.CSS rules tend to be well organized, easily read, and easily changed.
Finally, I would suggest you to use whichever technology makes sense to you - use what you know or what presents your documents in the best way. CSS also provides table-layout property to make your tables load much faster.Following is the example:
<table style="table-layout:fixed;width:600px;"> <tr height="30"> <td width="150">CSS table layout cell 1</td> <td width="200">CSS table layout cell 2</td> <td width="250">CSS table layout cell 3</td> </tr> </table>
You will notice the benefits more on large tables. The reason this makes tables load faster is because with traditional HTML, the browser had to calculate every cell before finally rendering the table. When you set the table-layout algorithm to fixed however, it only needs to look at the first row before rendering the whole table. This means that your table will need to have fixed column widths and row heights.
Now we will define a column with yellow color and later we will attach this rule to a <div>:
<style tyle="text/css"> <!-#level0 { background:#FC0; } --> </style>
Upto this point we will have a document with yellow body, so lets now define another division inside level0:
<style tyle="text/css"> <!-#level1 { margin-left:143px; padding-left:9px; background:#FFF; } --> </style>
Now we will nest one more division inside level1 and we will change just background color:
<style tyle="text/css"> <!-#level2 { background:#FFF3AC; } -->
</style>
Finally we use the same technique, nest a level3 division inside level2 to get the visual layout for the right column:
<style tyle="text/css"> <!-#level3 { margin-right:143px; padding-right:9px; background:#FFF; } #main { background:#CCC; } --> </style>
Similar way you can add top navigation bar or ad bar at the top of the page.
CSS Validations
Validation is checking something against a rule. When you are beginners, this is very common that you will do many mistakes in writing your CSS rules. How you will make sure whatever you have written is 100% accurate and upto the W3 quality standards. If you use CSS your code needs to be correct. Improper code may cause unexpected results in how your page looks or functions. But if you want to validate your CSS style sheet embedded in an (X)HTML document, you should first check that the (X)HTML you use is valid. Tool to check the validity of (X)HTML document: Validate (X)HTML document. There are following good tools to check the validity of your CSS. W3C CSS Validator (World Wide Web Consortium) This validator checks your css by either file upload, direct input, or using URI - one page at a time. This validator helps you to locate all the errors in your CSS. The WDG CSS check validator lets you validate your css by direct input, file upload, and using URI. Errors will be listed by line and column numbers if you have any. errors usually come with links to explain the reason of error. A CSS validator checks your Cascading Style Sheets to make sure that they comply with the CSS standards set by the W3 Consortium. There are a few validators which will also tell you which CSS features are supported by which browsers (since not all browsers are equal in their CSS implementation).
Increase Search Engine Visibility because you have good quality website. Professionalism: As a web developer your code should not raise errors while seen by the visitors.