Hello. I'm Aleksandar Vacić, professional web developer and wine maker in the making.
Learn more about me or see what I can do for you.

My work & services

CSS-based Microsoft.com

I believe that every last one of you reading this page have read Doug Bowman’s Throwing Tables Out the Window and wondered what exactly he did to make microsoft.com CSS-based. I know I did.

Doug did not want to release the makeover code without speaking to Microsoft first. I don’t quite dig that, since there were numerous make-overs done in the past, with open-hearted approach. I doubt that someone will spend a weekend re-doing anyone’s web site simply to rub-it-up-their-nose. That’s stupid thing to do.

I wanted to test my knowledge and skills and see how quickly I can do this. It might prove useful when price-quoting similar job in the future.

Without further a do, here is the final result.

I don’t intend to explain every part of this, I just want to emphasize some of the most interesting issues.

First things first: I simply did the recoding and barely touched the IA. Don’t look for changes in that area.

Code clean-up and organization

I did the save complete page in both Firefox and IE6, so I could have an offline version for reference. I saved the home page on Aug 16th and build on that; IE6 version was 55kB in HTML, while Firefox version was 40.5kB.

It took me good few hours to clean up everything and add proper markup, which lead me down to 13kB. I have left out a great deal of IDs, which would probably need to be put back. They are either used for tracking purpose or inserted by .NET for server-side processing thus being integral part of the technology used. They could probably add additional kB or two. A hefty 60% saving.

When it comes to code organization, I’ve done the usual thing for me. I’ve left the top area where it is, followed by middle column, right column and the navigation and legalities at the end.

I also added several headings so page makes sense when viewed non-styled. The chosen heading text for each section tells the reason why I ordered the elements in the way I did. Highlights, then Be productive with, then today’s news (which are essentially not news), then rest of the right column.

I was wandering how to logically separate actual page content from navigation. I could add Navigate our site as h2, but that did not seem right. Then it hit me, the element I did not use for a very long time. The good choice here is hr – it divides things well enough.

Three columns

It looks like simple one, but I found it is not; this is a very tricky layout to do, if you want to do it properly. I built on the code above and added quite a bit of divs as design hooks. I started from this layout, which was close enough but was more suited for liquid layouts.

The process of making it right took me more time then I expected, mainly because all the columns had to have precise widths, and to touch each other. I could not make any assumption as to how long each column is, so I needed a safe approach. I modified the starting CSS quite a bit, and eventually managed to make it work everywhere but IE5/Mac. Here I had to resort to absolutely positioning the left column.

I did this over the course of several days (as free time allowed), but I estimate that it took me at least 6-8h to replicate the design.

For the flyout menus, I used csshover.htc from Peter Nederlof and moved the IE/Win-only code to conditional comments.

I welcome any code improvements (both markup and CSS). It is not perfect. In Safari, footer won’t go below the columns. In Opera 7.5, first list in the footer is strangely shrinked. But I don’t have time to try different things. If I used pos:absolute for the left column, each browser of importance will have identical design. But then it would depend on left column not being longest. I deliberatelly chose the hard way and almost got through.

Unlike all other works on this site, I’m releasing this code as public domain – use at your will. I would be happy to see people perfect it.

tags: CSS
Comments: 4

Posted 6 years agopermanent link

trackback URL: http://aplus.rs/css/css-based-microsoftcom/trackback/

Voices from the crowd, 4 so far

Niiiiiice! Hey, if enough of us do this exercise maybe Microsoft folks will redo their site. :)

by Milan Negovan
1936 years, 8 months after the post

Again, good job!

by marko
1936 years, 8 months after the post

Milan, you did very nice work on the same subject and a very detailed explanation. I was not aware of it until now, really good tutorial.

Marko, not sure what you mean. If you want to make a listing of various make-overs, feel free to include this one. If you mean that I participate in the make-over work on some chosen web site (e.g. make-over of the week/month), I’m afraid that I could hardly find time for that.

I did this because my home phone is broken; I’m without a phone for 4th day straight (and having ugly conversations with phone company since). I have problems doing regular home work, so I do pro-bono things like this. :)

by Aleksandar
1936 years, 8 months after the post

Heh, talk about obsoletes…

Microsoft redesigned its web site. Visually, I like it very much. Code is improved as well, still not standard-compliant but that’s not too important.

I work in a company of less than 100 people, and even there is hard to change things that were running for a while. I can only start to imagine what it looks like in such a huge company.

by Aleksandar
1936 years, 8 months after the post

Post your opinion


? You need to enter your email, but rest assured it will not be published.

? Enter the link and it will be published.
? This blog strives to behave properly, as per XHTML 1.0 Strict spec. You can use the following tags, but please use them wisely:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
? I have enabled comment moderation so if your comment does not shows up after you submit it, don't worry. I will review it and if it's nice and to the point, I'll approve it. This measure is up mostly to fight spam and trolls.

Tags or categories or topics...

Lots of ramblings on this blog...might be easier for you to find your juice through these tags:

Post a job. Find one. authenticjobs.com