Friday, March 9, 2007

Cross Browser Compatibility

There are literally hundreds of web browsers in use around the world. All of them implement the W3C document standards a little differently. Web designers must wrestle with these differences to make a web site work. This article discusses the effect those different implementations has on design.

What is Cross Browser Compatibility?

If a web page is completely cross-browser compatible, it will look more or less the same in all of the existing web browsers. The most commonly used browsers are Internet Explorer, Netscape Navigator, Firefox and Opera.

Each one of these browser implements HTML, JavaScript and Cascading Style Sheets (CSS) a little differently. Some difference only create cosmetic difference others can break the webpage. The situation gets worse because each browser is free to implement "enhancements" to the W3C standard version of each of these formats.

Then to compound matters even more the underlying operating systems also creates difference in how the computer displays graphical elements and text differently. When you add the fact that people are also using multiple versions of each of the browsers, no wonder web designers get headaches.

So what is a web designer to do?

Obviously, 100% compatibility with all potential browsers is impossible. But it is possible to design your web page so it will work in the most popularly used browsers.

To accomplish that, a web designer must write squeaky-clean code that conforms to the W3C standards to get consistent results across all browser platforms. The whole idea behind the standards is that if each browser adheres to the same set of rules, you will get more or less consistent results in all of the existing browsers.

Conforming can be a real challenge. It will limit some of the neater effects available in specific browsers. There are online code validators available. You can validate HTML code at http://validator.w3.org , the validator can also validate your CSS and links. The service is free.

The validator checks your code based on the DOCTYPE you specify on the webpage. The DOCTYPE tells the browser which version of HTML or CSS the web page is using.

HTML Editors

There are some compatibility issues associated with anything other than hand coding for HTML (and for that matter, even with hand coding.)

Best Choice - The best choice for compatibility is Dreamweaver but you cannot use layers. Layers must be converted to tables to be used.

Worst Choice - The worst choice is FrontPage. FrontPage is loaded with problems because it uses Microsoft and therefore internet explored specific code. Items that will not work in other browsers include:

* Marquees - you can use a JavaScript scroller to create a similar effect that will work in the most common browsers. * bgsound tag - this is IE specific. * Page Transitions - this is IE specific. * Front Page generated Style sheets - this is IE specific and can have unexpected results or crash other browsers. * Front Page generated DHTML - it is better to use JavaScript to create the effects you want since it is more likely to be cross browser compatible. * Hover Buttons - this is IE specific and has been know to crash browsers including older versions of IE. You can use JavaScript, flash or CSS to get similar effects.

Other HTML Editors - the rest of the HTML editors will fall somewhere between Dreamweaver and FrontPage in cross browser compatibility. You just have to test the code your HTML editor generates.

CSS Style Sheets

Not all of your style sheets will work correctly in all of the browsers. However, style sheets rarely crash a web browser, but sometimes the pages will be downright ugly if not completely unreadable. One of the major CSS problems is absolute positioning since most browsers do not support it and it will cause different block to overlap others and create a jumbled mess.

Flash

Flash is great for adding style to a webpage and Macromedia provides flash plug-ins for all of the major web browsers. But don't build the entire site with flash. Browser for the blind, most handheld devices do not support flash.

A small but significant number of users don't like it and don't install the plug-in so they won't be able to access a flash site. Also, search engines spyders can't follow the links on a flash site and won't index it.

Graphic Links

While these are attractive, they have the same problems as flash with browsers for the blind and hand-held devices. Always use the alt tag with graphics.

Bottom Line - even code that is validated may not work correctly in all the major browsers. The best way a web designer can create cross browser compatibility is to test all of their web pages in the most popular browsers to see what happens. Personally, I find that a combination of style sheets and tables works best to ensure my pages look good in all of the browsers.


Thanks to Warren Baker, is an Internet business consultant for WebDesigners123. WebDesigners123 connects the Freelance Web Designer with Webmasters who need their services.

DiggIt! Del.icio.us Yahoo Furl Technorati Spurl Reddit Google

Tuesday, February 20, 2007

5 Reasons To Use CSS

1. The content is separated from the design

Because you are able to create a separate Stylesheet and link it to all your webdocuments, you have great control over how your website looks. So if you want to change a certain aspect of your page, you only need to alter one file: your Stylesheet!

This Of course, generates some great flexibility. This flexibility is not available when your website is using tables for layout, inline font tags or inline defined colors.

A single CSS file can contain positioning, layout, font, colors and style information for an entire web site.

2. You site uses less bandwidth and loads faster

Because stylesheets are so lightweight, your website will load much faster. The main reason is because you do not need table layouts anymore for the positioning of elements. Since text loads really really fast your website will be visible in a flash.

This means that visitors will be happier when surfing your website. They only have to download the Stylesheet once, and it's automatically reused for every page. So the only thing that needs to be loaded is the actual content.

On average a website will load five to ten times faster if it makes use of cascading style sheets.

3. Your website will automatically gain better search engine results

With CSS, you can position any element, anywhere you want. So if your menu is at the bottom of your HTML document, you can bring it up using absolute positioning. The reason this is useful is to make sure the search engine spiders pick up the main content first.

Another advantage you automatically gain is that your HTML code is much cleaner. So the search engine spider will not have to separate the junk code from the real content.

So make sure you put your logo text and your menu at the bottom of your HTML document at put it at the top using CSS!

4. CSS is compatible with newer browsers

Because more and more browsers are used other than Internet Explorer on a Windows machine, you need to be sure that your website is accessible by all major and newer browsers.

By using webstandards, defined by the w3c, you are making sure your content is viewable in the future.

Because there are so many browsers these days, it is impossible to test your website in all these browsers on different configurations. Coding to standards is then the only practical solution.

5. CSS can be used to display the same content on different media.

Because you are able to define different stylesheets for different media you have great flexibility in presenting your content.

The printer for example, is a medium on itself. If someone prints out your website, you will be able to modify the look of it. Add an extra black and white logo, remove the advertisements and change the colors to black and white values. It's all done easily by using cascading stylesheets. And the best thing is, visitors do not even have to know you created a new Stylesheet especially for the printer.

Stylesheets can also be created specifically for PDA's and such. As you will understand, this adds some great flexibility to the presentation of your web document.

Conclusion

Cascading Style Sheets are created to make things easier. It gives you great control of your website and makes your visitors happy when they are surfing your website.

You are prepared for the future and will gain better search engine results automatically. Start using CSS to its full potential today! It will suit you well.


Thanks to Hilco van der Meer, is known as the author of the Cascading Style Sheets Course How To Master CSS. He's a professional Web Designer for over 5 years now. His course aims at easy to follow and step-by-step examples. More info can be found at http://www.HowToMasterCss.com

DiggIt! Del.icio.us Yahoo Furl Technorati Spurl Reddit Google

Monday, February 5, 2007

How To Style Your Text With CSS

Styling text with CSS is really simple. We can define colors, underline it, make it bold, define the font etc etc.

We will start with some basics.

First we define the html where we will be working with.

This is the text

1. Colorize your text

We can select the P tag and add some styles to it. p { color:red; }

Now our text will turn red. You can define any color code your want or choose one of the 16 standard color names. The color names are: aqua, black, blue, fuchsia, gray, green, lime, maroon, navy, olive, purple, red, silver, teal, white and yellow.

2. Define the size of your text

p { font-size:12px; }

You can define any font-size you want, 145 pixels is not a problem. That is, technically speaking.

3. Make the text bold or Italic You can use the font-style property to create these effects.

Bold: p { font-weight:bold; }

Italic p { font-style:italic; }

4. Overline, Underline, strike-through and none

The text-decoration property is useful to create the underline and the other effects we need. p { text-decoration:underline; text-decoration:line-through; text-decoration:overline; text-decoration:none; }

On default, the text doesn't have any lines at all. Except for the link. You can remove the underline by using the text-decoration:none; setting.

You see, it's quite easy to style your text using CSS. And you can do it all in a separate stylesheet!

DiggIt! Del.icio.us Yahoo Furl Technorati Spurl Reddit Google

Thursday, January 25, 2007

CSS - Weight loss for your code

One of the main drawbacks of traditional HTML web design is the tendency to produce almost insupportably large file sizes with anything but the simplest of page designs since formatting requires a substantial amount of code per component unless a rather plain 'default look' is to be retained.

Although there are a number of contributing factors, the burden of responsibility can largely be placed on the shoulders of font and other style tags which have to be added to every text element if an aesthetically pleasing result is to be achieved.

With web sites becoming more complex in their structure and appearance, this led to ever increasing document sizes as the years went on until the sheer amount of code required for presentation far outweighed the text contained within the page leading to slow loading times, a serious headache for search engine spiders and the coining of the phrase 'code to content ratio'.

Help became available to designers in the shape of CSS (Cascading Style Sheets).
Originally conceived in 1994 to provide an effective means for designers to control the appearance of their web pages, CSS became a W3C recommendation in 1998 and has been gradually gaining popularity within the web design community since about 2003.

By removing bulky text formatting code from HTML documents and placing it in a central data file which controls the appearance of the entire web site, CSS not only provides a means of achieving a more uniform overall appearance, it also serves to substantially reduce the size of each individual HTML document.

For example; to display text in a certain font, colour and in bold would require the following HTML code:
Note that < > brackets have been replaced with [ ] brackets to display the code correctly:

[font color="#0000FF" face="Arial, Helvetica, sans-serif"][strong]Example Text[/strong][/font]

Lots of code for very little content, as you can see.
With CSS controlled design however, the text can be displayed in the same manner with the use of a span tag controlled by the Style Sheet:

[span class="C1"]Example Text[/span]

Same end result, half the code.
If you repeat this process fifty or sixty times within a single page your code will be much more lightweight and easily indexed by search engines (if it is also W3C compliant).

Those of you not yet making use of Cascading Style Sheets to reduce the flab in your HTML would be well advised to read up on the technique.

Further information about CSS can be found at the W3Schools CSS Tutorial.


With many years of experience in the industry, Sasch Mayer is an accomplished SEO copywriter. He is currently working in Cyprus under contract to IceGiant Web Design. Visit the IceGiant site for quality web and graphic design, information and more, non-syndicated articles.

DiggIt! Del.icio.us Yahoo Furl Technorati Spurl Reddit Google

Friday, January 12, 2007

What is CSS?

1. CSS stands for Cascading Style Sheets.
2. CSS is the technology used to make the layout for WebPages.
3. CSS allows you to make changes to all of the web pages that link to the CSS file at once by changing a style in the style sheet. Instead of having to manually change every style in every HTML file.
4. They would save you a lot of time to say the least, especially if you have a large or multiple web sites.

Syntax

The CSS syntax is made up of three parts: a selector, a property and a value:

Selector {property: value}

The selector is normally the HTML element/tag you wish to define, the property is the attribute you wish to change, and each property can take a value. The property and value are separated by a colon, and surrounded by curly braces:

body {color: black}

Cascading Stylesheets Advantages:

1. The content is separated from the design.
2. You site uses less bandwidth and loads faster.
3. Your website will automatically gain better search engine results.
4. CSS is compatible with newer browsers.
5. CSS can be used to display the same content on different media.

So it gives you great control of your website and makes your visitors happy when they are surfing your website.

DiggIt! Del.icio.us Yahoo Furl Technorati Spurl Reddit Google