10 Best Resources for CSS
victorialever writes "Since one could have noticed an increasing number of websites that are employing CSS and an increasing number of resources talking about how great CSS is, it seems to become impossible not to jump on the CSS bandwagon as well. The 10 Best Resources for CSS provides an impressive list of the CSS resources which have recently become essential for web-developers. Among them - CSSZenGarden, The Web Developer's Handbook, Stylegala, PositionIsEverything etc."
That article is quite good and points out a few resources that I (even though I'm a CSS/XHTML/standards geek) hadn't heard of. Keeping it bookmarked for future reference. Hopefully some of these can be used to extend the area of sanity around proper markup...a bit.
Anyone taking even a cursory look at the sitepronews.com article source code can see that the layout is done with the usual mess of tables.
The remains of the hull of the USS Merrimack.
Athletic Scholarships to universities make as much sense as academic scholarships to sports teams.
How on earth can they not list THE resource?
:-)
http://www.w3.org/TR/REC-CSS2/
I'm talking about the official specification, of course.
That's what I'm always using to look up attributes, values, etc. It's easy to use, light-weight, and I never have to doubt wether the author made a mistake or not.
With great numbers come great responsibility!
Anyone? The sitepronews site is already /.ed
Please don't let me be the only one who saw the title and immediately though Counterstrike: Source...
The indiscriminate use of vulgar language is the linguistic crutch of the inarticulate motherfucker
May I also recommend Dave Child's CSS Cheat Sheet ?
Print it out & stick it on the wall/partition - it covers almost all the CSS you'll use day-to-day, and (IMHO) it's much quicker than digging through the online documentation or the O'Reilly book.
Similar things for Javascript, PHP, etc. are linked from here if you're interested.
-- Open Source: It's mad, but you don't have to work here to help.
I love reading articles that indicate the top 10 of anything because you never have to worry about the list being subjective. You always know that the author went out of his way and used a numerous amount of resources, reviews, and statistics to compile such a list. Either that or he just inappropriately used the "top 10" catch phrase to garner more readers, but I'll give him the benefit of the doubt since this article is on, as Bush would phrase it, "the internets."
The edit css plugin for firefox lets you edit the css data for any page and instantly see the changes.
I find the CSS Sidebar immensely useful. It lets me quickly look up a style and see what values it takes. It's also a good reminder of some of the little-used styles.
Your fantasies contain the seeds of important concepts.
Now if we could just get all browser software providers to go and read that spec and adhere to it, we would have a happy-shiny web for all
Unfortunately, some browser writers feel the need to 'extend' standards to their own specification. Of course, it never seems to trouble them that this precludes their browser being standards compliant.
Ripping an new rectum in the fabric of spacetime.
from the slashdot-is-moving-to-css-in-just-a-few-weeks dept. ...
... the apocalypse might be at hand after all! Yippee!
Is that for real? Not been having much problems which Slashdot recently, but if they're chucking away their mess of tables
slashcache
also here's a few interesting links bookmarks layouts more layouts
...having the impression that the list is not very impressive? Not very comprehensive and no mention of W3schools, for example. Is SitePro News a good site itself? -- I prefer to remain silent.
A List Apart and StopDesign are sites that have great resources and tutorials, well worth a look.
Are you local? There's nothing for you here!
http://dean.edwards.name/IE7/
(not affilliated, just a happy user)
"God fights on the side with the best artillery." - Napoleon, Marshal of France - speaking truth to power
A lot of other CSS sources are already being quoted now, better start bookmarking this /. article then.
My wife's sketchblog Blob[p]: Gastrono-me
Structural markup is the essential differentiating factor, not just that you have found out how to replace tables with divs ...
</rant> over.
Rich.
libguestfs - tools for accessing and modifying virtual machine disk images
I've not been paying as much attention to the browser wars as I once did. Does anyone know how WebCore (Safari) and Gecko (Firefox) compare in rendering CSS? I know that Safari supports the (completely awesome) text-shadow property whereas Firefox does not, but what are some other differences?
I find it interesting that none of the CSS ZenGarden style sheets I tried resized at all with the browser window, and most of them coped poorly or not at all with large text (many became unusable).
For every expert, there is an equal and opposite expert. - Arthur C. Clarke
is this news? not to belittle the importance of CSS but I'm sure everyone here is already quite aware of what it is, how to use it and where the web resources are; I first visited Zen-garden a long time ago for instance. If you're not then you probably are not a web developer. This is not news.
Promote Charity on Myspace, Show Your Colours!
I'm not the best one to comment on this by any means, but when I saw in the summary the part about "how great CSS is," I really do have to agree. I threw together a site just as a way to help some of my students back when I was teaching and really didn't know anything about creating a website. I hacked together a site with tables for layout and some very limited PHP and enjoyed doing it. From there, I went to a site that showed a table layout and the exact page done in CSS and used that as a starting point to learn CSS. I have to say, I was impressed with how much easier it was to use and modify later. Like I said, I'm still a horrible web designer by all accounts, but I can attest to how much easier it is for a person new to the concepts to use CSS instead of tables.
Finance tutorials and more! Understandfinance
During the US Civil War, the sunken USS Merrimack was raised and converted to an ironclad by the Confederates, who renamed it the CSS Virginia (which later fought in the famous battle of the ironclads). So the parent was just trying to make a, albeit lame, joke about the acronym "CSS." It wasn't truly offtopic, and it definitely wasn't a troll.
I have discovered a truly remarkable proof of this theorem that this sig is too small to contain.
I'm a programmer who has been thrust into the world of CSS and been on many occasions quite frustrated with it. It seems arbitrary, arcane, and particularly difficult to debug. On top of that, it seems to have a set of zealots who defend it (and demand it) with bitter viciousness.
I had concluded that CSS was "programmer-friendly" in the same way that a rusty jigsaw was "penis-friendly".
I recently picked up a book entitled _Designing with Web Standards_ by Jeffrey Zeldman. It's a good an honest resource, and he even claims to avoid zealotry. But, in the book, he examines a particular website, one with a plain-jane two-column appearance, which he said took "three CSS experts" to re-code from tables to CSS layout. Not three CSS advocates, three CSS *experts*. On top of that, their "solution" turned out to be a hack.
Honestly, what success am I supposed to expect in using CSS when recoding common layouts in CSS is a struggle for even CSS experts? I am forced to conclude that it is folly trying to adhere to any kind of CSS standards with any kind of rigor until CSS itself becomes more mature.
Now this is where I get flamed. I'm sorry, but I have to call it like I see it.
I don't make the rules. I just make fun of them.
Here's a shameless plug for you. Here's my code for converting Java Swing or AWT to HTML and CSS. It's primitive, but it may be useful to someone. It should be easy to modify this to convert any running Swing/AWT application from Java to HTML/CSS. Oh and of course its GPL.
r ter.html
http://www.progsoc.uts.edu.au/~sammy/javaGUIConve
These posts express my own personal views, not those of my employer
CSS = Cascading Style Sheets, not Counter Strike, you egg-head!
Oooh, oh, unless you're trying to be funny.. yea that's kinda funny.
Mod points are a dangerous tool. Abuse them wisely.
The force that blew the Big Bang continues to accelerate.
I fail to understand *why* people are fixing things which are not broken. I use the web as an information resource. That means I want "Just the facts Mam". Those could have been presented to me in HTML 3.2 (which many readers may be too young to remember)...
Some sites have intelligent managers (Amazon and Google come to mind). They don't go overboard on overengineering their pages. They work with legacy browsers, etc.
How about an open-source app which plugs into standard proxy filters (e.g. squid) which removes all of the over-engineered crap web sites distribute? (I.e. No more Flash that I didn't request, no more Microsoft HTML'isms I didn't request, no more CSS, no more marketing crap I didn't request, etc.)
I.e. I get back to a world where I view what is important to *me* and not someone trying to sell me something I have no interest in. If that means a few information providers have to revise their business models -- hey thats life.
But I tend to come from the old school -- show me what I want to see -- when I want to see it. All of this overengineering of web pages defeats that.
... to know the whole css spec by heart and *understand* it. (like i do ;)
Any sufficiently advanced intelligence is indistinguishable from stupidity.
css rocks... boom headshot
Ironically, I am taking the week to sit down and really figure out CSS because I'm sick of seeing the term everywhere and having ZERO clue of how to use it effectively. Let me get this straight to begin with - I'm a designer, not a web expert. I use *gasp* Dreamweaver, although I know HTML just fine. It's a visual thing and I work better seeing the flow of the graphics, etc. directly on the page. So my biggest beef is wanting to design non-framed pages where menu links will change without having to manually change them in each page. I want you CSS people to respond to this: Tell me three reasons why CSS is the way to go (cleaner codes isn't a good reason for me, either).
Peace out, homies.
Jump on the bandwagon? There is no bandwagon, web pages are built with HTML and CSS for many reasons - the least of which is because the Jones' are doing it.
Welcome to the intarnetz, we use CSS here.
For not I'm sticking with CSS1 until there is better browser support for CSS2. It's great to be standards-compliant, but it's kind of pointless if the majority of browsers can't read it properly. Just my $0.02.
"Ask not what your country can do for you." --John F. Kennedy
I'm reading that book too, but I have a different take on why it took three CSS "experts" to re-code that page.
It's not CSS' fault; it's the noncompliant browsers. Zeldman's book is basically about using CSS to build a standards-compliant web site that renders properly on a variety of non-compliant browsers.
Given the differing level of support among the browsers out there, it's no wonder that one has to jump through some hoops to get a consistent display.
"Ask not what your country can do for you." --John F. Kennedy
but one of the biggest problems that I have with webpages are the font sizes. I've tried to configure the browsers that my mother & father use, their old eyes can't read many of the fonts people use in their webpages (supersmall & thin).. even with a 19 or 20" monitors, either I'm forced to lower the resolution to something ridiculous like 800x600 or run the regular res (1280x1024 or better) but have "minimum font size" set at 18 or 20 in firefox... That's a problem because fonts that large with a fixed minimum size cause the text in many webpages to overlap one another :( (espn.com, prisonplanet.com, etc even some of those zengarden pages suffer from this..)
Gecko has som specific CSS stylings that are fairly usefull but only render in gecko like:
Can't say I know if they are on the official spec for CSS2 or CSS3 but I would like to see gecko implementing stuff in a more nonbrowserspecific way. I don't think these stylings will ever become standart with that syntax.
The other day I found http://nemesis1.f2o.org/aarchive?id=6 - it's a fantastic read, showcasing the power of CSS2/3. Well recommended (I learnt heaps - e.g. extracting data from to put into the document, using only CSS!)
Some more CSS showcase sites I like to check out every now and then:
CSS Beauty
The Weekly Standards
Also this site has some nice templates
Sample this!
Google's Directory on Web Design -> FAQs, Help, and Tutorials :P)
Eric Meyer's CSS Reference page (warning: requires frames, but it's tasteful use
More on Eric Meyer, who is web-design guru in general, but well-known for his css/edge presentation, and, well, check out his site, definitely worth a read.
Well, that's it, other's that I know of have already been posted.
1: the us copyright office
2: slashcode
One more, a good resource not only for CSS but many different web technologies, mostly for beginners:
W3 schools (Warning: Has a popup, but it's worth it)
Developers need to keep in mind that (X)HTML should be used to establish structure, and CSS for display.
When you've used HTML for display your whole career (at the expense of structure), it's hard to think of a good page as two necessarily separate parts.
It doesn't help that browsers support bad code either.
"Ask not what your country can do for you." --John F. Kennedy
Ironically, the main version of The Web Developer's Handbook wasn't mentioned in the list. However, I actually feel great being slashdotted again. ;)
vitaly.friedman -> creative.web.design.saarbruecken.germany
Has anyone mentioned http://www.quirksmode.org/?
Right, and you had to read /. first..... whose the nerd now buddy.... :D
this is a great reference, and it shows which features are IE only vs which are standard.
Amazing magic tricks
Probably because there is nothing resourceful about trying to understand what the hell is spelled out there.
That's a developers site and not for people who draw for a living.
__
Thou hast besquirted me, O leotarded one.
One of the sites is described as another site dedicated to learning layouts and the little quirks that each browser brings into your CSS design. As a software developer, this is one of the most frustrating parts of CSS. Not one browser is compliant, forcing the developer to use wierd hacks to get a uniform look. This really detracts from purpose of CSS, and leads to hard-to-understand CSS and HTML.
From the slashdot-is-moving-to-css-in-just-a-few-weeks dept.
oh I do hope commander taco isn't just putting me on...
Almost all of the -moz sttributes correspond directly to attributes proposed for CSS3, and they're mostly implemented as per the current proposal. However, CSS3 has not been finalized, and there is a small but nonzero chance that these attributes will somehow change. If that were to happen, then (for example) opacity: might work one way on earlier versions of Mozilla and differently on later ones. This is a Bad Thing, because it prevents pages from degrading gracefully.
Using the -moz prefix avoids this problem. If the standard is finalized without any changes, then opacity: and -moz-opacity: can use the same code, and that will be that. If the standard changes, however, then opacity: can be implemented according to the new standard, -moz-opacity: can continue according to the old implementation (since it was never standardized anyway), and neither old nor new pages will break.
Incidentally, the CSS specs suggest exactly this solution, and I believe they actually use the -moz prefix as an example. KHTML and WebCore have a similar scheme, though they use a -khtml prefix. It would be nice if IE started using an -ie prefix in the future for its own stuff, though it seems unlikely that this will happen.
just use a single background image for your "columns" and carry on as per.
This resource gets used by our team at least every day:
http://centricle.com/ref/css/filters/
"YOU FAIL IT BIG TIME"...
w .mentallyretired.com%2F&charset=(detect+automatica lly)&doctype=Inline
http://validator.w3.org/check?uri=http%3A%2F%2Fww
Now what was that you were saying about semantic XHTML?
[p.s. whatch how he immediately goes in a panic to fix up his crappy markup and then reply with 'I don't know what you're talking about l00zer']
multiply said structure by 1000.
Client: We'd like to have a three column layout now please.
Result: P.I.T.A.
Here's a better way:
HTML:
CSS:
#wrap {background url(2_col_background.png) top left no-repeat;}
#col_1 {width: 200px; float: left;}
#col_1 {float: right;}
#footer {clear: both;}
The trick is in the backgound image, which would have one colour for 200px, then switch to your other colour for the rest...
I've noticed that for a lot of web designer folks; It is aways acceptable to be the second slowest Zebra in the heard. What is even more entertaining to watch, is that their client IS the slowest Zebra in the heard.
Of course it goes without saying that unless your the lead zebra, the landscape NEVER changes.
Client: We'd like to have a three column layout now please.
Result: P.I.T.A.
I suppose I should thank god such a thing has never happened to me. It seems to me that in the eyes of CSS adherents, 100% of web pages are wildly fluid things that change with the winds, and wildly. Maybe that can be said for some development projects, but, in my experience, it's just not that bad. My problem is not that my clients are as fickle as you make them out to be, but rather that CSS is near impossible to do correctly for some simple tasks. Solve the real problem, not the hypothetical one!
#wrap {background url(2_col_background.png) top left no-repeat;}
#col_1 {width: 200px; float: left;}
#col_1 {float: right;}
#footer {clear: both;}
The trick is in the backgound image,
I described CSS as "arbitrary" and "arcane", and your code example is illustrative of my point. I suppose the "clear: both;" should have been obvious to me? Furthermore, why should such a simple layout require a "trick" (as in your background image)? I conclude that it is too early to try to adhere to CSS standards with any rigor.
I don't make the rules. I just make fun of them.
I agree. From my experience with designing using CSS divs alone, it has been a very frustrating experience. Getting DIVs to hold their position has been very difficult and I have had some real problems with it. I would have saved myself loads of work by just using table markup instead.
As for semantic HTML, you could achieve quite the same level of semantic information using tables and spans. And so, yes, I agree with you completely.
I haven't read the book, but since you haven't provided any quotes, I can only assume you are misrepresenting what the book says, because two column websites are ten a penny and dead simple to create with CSS. You certainly don't need a team of experts.
We all know what assuming does. I searched the book for about 20 minutes by hand until I finally found the section, and I quote it here:
"When A List Apart magazine converting from HTML tables to CSS layout in February 2001, it took three designers, including this author, to figure out how to do it. The two others were experts Fahrner (who contributed to the CSS specifications) and Celik (who contributed to the CSS specifications and built the Tasman rendering engine in IE5/Mac). The original, table-based design was essentially a two-column layout with a liquid content area and a right-hand sidebar whose width was cast in stone. Between the three of us, we managed to achieve roughly the same effect in CSS using the nonintuitive method sketched in the preceding paragraph. The overall width is kludged with values that never add up to exactly 100%. It should not be that hard to create a two-column layout combining liquid and fixed elements." Jeffrey Zeldman, _Designing with Web Standards_, p. 281
Read a few of the choice quotes:
- "The other two were experts..."
- "...using the nonintuitive method..."
- "The over width is kluged..."
- "It should not be that hard [to create what is otherwise a simple design using the inferior, table-based method]"
Honestly, Zeldman wrote a book that was intended to "convert" me to the CSS mindset, but, reading what he writes here, it seems that I'm destined to find at least some degree of failure or imperfection. It leads me to believe that "no, it's not just me" when CSS seems kludged and nonintuitive (if I may borrow a few of Zeldman's adjectives to describe CSS).
I don't make the rules. I just make fun of them.
Website designers like this are also clueless about the needs of they people who pay for website design. There is really no point in jumping through tons of hoops with cluttered codes just to get three columns that still don't quite work right in all conditions when you can just use an HTML table to do the same thing in 1/10th the complexity.
They generally still end up doing a miserable job at separating presentation from content.
The only good way to make websites that have to be maintained is to generate the websites. That way, you can use tables, CSS, whatever-you-like, and know that you can change your mind site-wide just by changing the generating code.
I'm amazed, really. That's a dead simple layout, and I have no explanation for why it's described as such a gargantuan effort. I was under the impression that this was a good book, but after reading that, I can only suggest that you throw it away and read something else instead. I'm sorry for doubting your description of the book. Really, try another book. CSS just isn't as hard as it is made out to be.
Bogtha Bogtha Bogtha
Thank your for sharing your wisdom.
I too have 'several' years of experience of CSS - probably as much as anyone as I use it almost everyday. This doesn't make me blind to CSS's shortcomings however.
If you have been dealing with CSS for 'several' years and you 'have no problem at all visualizing the layout' then all I can say is:
a) you can't have desiged very many layouts, or
b) all your layouts must have been piss simple
Major commercial sites require complex, flexible, modular layouts that change on a day-by-day basis and need to accomodate whatever piece-of-crap, third-party content item that comes along.
I'm not talking blogs here.
If you look at the following web site with property for sale in Nice, you will see it uses extensive CSS. The original web site was done using tables, which I then converted to CSS. There isn't a single image in the whole of the HTML of the web site apart from a few photos which are content and not design.
Advantages CSS over tables:
* the nested tables were fixed width, too complicated to convert to proportional, and if you resized the windows to anything larger than 1024x768 then you had to pan around using the scroll bars. The CSS degrades wonderfully. Even if the display breaks and doesn't look as pretty, it's still usable at any window size
* pages are a fraction of their original size, and the actual content is clearly visible and editable
Advantages tables over CSS:
* cross-browser compatibility. Everything always works in Firefox but IE is a nightmare. Grey bars appearing randomly for no apparent reason, margins having unpredictable behaviour, and things breaking for no reason when pixels are exactly aligned (as proved by basic arithmetic)
From painful experience I can recommend that you get the designer to mock up in photoshop, and then you design the site directly in CSS and ask for the images to be chopped into the way you need as you go along. Don't get the designer to provide you the HTML in table form which you then convert afterwards.
Hope this helps,
Phillip.
Property for sale in Nice, France
Ahem. I rebuilt our university's library website 3 years ago. The layout is roughly comparable to Slashdot's home page: 2 fixed-width, side-flush columns surrounding a central content section which expands to the browser window's width.
When I rebuilt our site, I did two things simultaneously. One, the layouts became CSS instead of tables (modularity of design). Two, the reused content became server-side includes (modularity of content).
Both serve the same goal: modularity = faster, better maintenance. Either by itself is inadequate. CMSes which burp out tables are actually more trouble to maintain in the long run.
Trust me on this.
"Made up/misattributed quote that makes me look smart. I am on
Everyone knows about the old background image trick but that's just a CHEAT.
There is no easy way of doing this with DIVs whereas it is 'piss simple' using TDs.
Best you can hope for is messing about with the DIV heights in the DOM using js after the page is loaded/resized - yuck!
The wiki for the CSS-Discuss mailing list is extremely helpful as well.
http://css-discuss.incutio.com/
Believe me, I still use CSS even despite all the harsh things I've said about it! I think my gripe comes in two forms:
1. For some layouts, CSS just can't cut it the same way that tables can. Not all layouts, just some layouts.
2. CSS syntax, behavior, and debugging are arcane and unintutive.
Well, let's add a third gripe:
3. CSS advocates are often times really snotty, mean, and religious about CSS. They treat me like I'm some kind of retarded hick because I dare name a class "OrangeBox" or use a table to lay out a site.
And this is why I think we need to re-evaluate our use of CSS. It is not *yet* the cure-all that we want it to be. Let's not put too much effort into rigorous adherence to standards as such efforts will ultimately be futile in one way or another. I mean, if three CSS experts can't lay out a two-column site without nonintuitive kludges, then what hope does a neophyte like myself have at achieving "CSS purity"?
I don't make the rules. I just make fun of them.
Just write a plain HTML page, something that would look ok and be readable without CSS. Then add div:s and CSS.
The result is a page that separates content from layout and works well both with and without CSS. It will also be easy to replace the CSS when you need to. This is also useful when you have different style sheets for different media. Have a "print" style sheet that excludes the sidebar and uses different colours.
I don't know if any has posted this yet, but http://www.bungie.net/ usese some really impressive CSS. The page overlay is something that simply cannot be done with traditional table-based layout.
It's still easier to do certain things with table-based layouts than it is with CSS alone.
Tables are "easier" because you are used to them. Their use as a layout tool came about because HTML was never intended for layout and was invented before graphical browsing existed. Unfortunately standards committees never move as fast enough to address a need so such hacks were allowed to catch on before the W3C got its act together.
Control of vertical positioning/height being the obvious one. That and fluid layouts.
I gree with you that tables are an important part of (X)HTML. Sometimes you MUST use tables--like, say....when you are presenting TABLULAR information. Are you showing a little calendar on you page? Perhaps a table depicting a summary of product reviews? Snapshot of a spreadsheet? Yes, PLEASE use a table. "Vertical positioning" and "fluid layouts" are NOT reasons to use tables. The latter reason you mention in particular is baffling to me because in my experience tables REDUCE the fluidity of a page--I mean, I've NEVER seen a browser break up a row if it is too wide for a window, whereas CSS objects will wrap around. I'm curious to know when tables are more "fluid" because it seems by definition they are meant to CONSTRAIN layout. As for vertical alignment with CSS I've not had too much difficulty yet, although it isn't completely elegant.
I know it's probably heresy to say this, but IMO tables work in an intuitive way that you can easily visualize whereas a mass of floated DIVs often do not!
I'd have to disagree with you there. If you are looking at your own work that maight be true, but I find that when I look at the source of someone else's work and it is all TR TD TD TR...I get lost more easily. Add in COLSPANs and ROWSPANs and it becomes an absolute nightmare to manage layout changes without messing up the table. To keep it all straight you'd have to add comments or id or class attributes to the td tags--and if you're gonna do that you might as well use CSS and span and div tags.
As for being easy to visualise--if you are a bad coder it is difficult regardless of the techniques you use. However, I find borderless tables quite difficult to visualise (I cringe when I see "JPEG Jigsaws" especially--large images broken up into pieces and reassenbled using tables. C'mon what is this, 1996? How is TABLE-TR-TD.... showing up as a single, solid image intuitive?). OTOH, div id="SideMenu" or span class="MenuItem" makes much more sense to outside observers: You look at the page and see a menu on the side--then you view source and see id="SideMenu". Gee, maybe it's a bit of a stretch but I'm willing to hazard a guess that that div's contents represent the uhhhh menu at the side of the screen?
The other advantage of CSS is that it removes layout from content--and HTML was invented to handle CONTENT and has always stunk at layout. You can create a "printer friendly" CSS for the exact same file and bam--there's a printer friendly document--no alternative HTML file or "printer friendly" link needed. Also, the layout doesn't dictate the order in which the content must appear in the HTML. That is extremely useful for doing layouts to suit portable devices or printed format (hiding sidelinks etc). Also, it is the easiest way to make accessible documents--you can put the menu at the end of your HTML and display it at the top of the screen and aural browser users don't have to bother with skipping over the links to hear the content.
I think that people who find CSS "too hard" probably haven't spent enough time with it. I use it all the time and much prever it over using tables for layout. Not to say that I don't still use tables in HTML--they are vital in some applications--when you need TABULAR REPRESENTATION. Even then, I use CSS to apply borders, alignment, font and colouring.
In any case, I suggest giving CSS a chance. It might take you a fair bit longer to to your first properly constructed page, but after that you'll be much more productive and maintaining those pages will be far easier.
I just visited the Web developer handbook. Is it good design to use an unbelievably small font size? Are they designing this to be viewed at 2048x1536? Im running a 19 inch TFT at 1280x1024 and can barely make out the letters...
Id rather turn elsewhere for advice as they seem to be lacking common sense!
REDUNDANT?...Is the second squirt of milk redundant for my starving mode springs? NO!
#footer {clear: both;}
Man, that site demonstrates some of the crap that made me anti-CSS for the longest time! Hover over a link (dotted, not solid underline, naturally) and the damn thing animates! Who the hell thinks that this is a good thing? It's bad enough when I see sites whose links are not underlined (therefore going against years of web tradition) or whose links do retarded shit link over and underline, or change to bold and italic (thereby actually moving text around in their paragraphs), etc.
Gah, it's bad enough when people don't use a different colour for VLINKS, one of my main pet peeves. Gosh, I might want to know where I've already been on your site? Imagine!
It doesn't mean much now, it's built for the future.
using tables for page layout is one big cheat, in case you've yet to notice.
Sorry I couldn't flame you more but I felt it was more important to point out the positive side of CSS than tell you how ignorant you may or may not be on the subject.
:)
Oh please don't apologize! I thought your post was rather positive and informative. In fact, I agree with your principal argument: CSS *is* the future of the web.
My gripe lies elsewhere. The CSS that we have today is NOT the future, nor it is even usable in some instances. The gyrations that a programmer has to go through in order to change an Evil table-based layout into a Holy CSS-based layout are sometimes downright masochistic, as some posts in this thread will reveal. All one has to do is find an experienced HTML coder to say, "Yeah well what about *this* example?" (shows off a particular table-based design) in order to reduce a CSS advocate to blubbering, "Well, I guess, it might be, easier to use, a, table, in that instance." Either that, or the CSS advocate ends up admitting that the CSS solution is just as big of a hack as using tables is.
And somehow the uglier, non-table-based hack is supposed to be better than the easier, table-based hack. Do we see what pointless, arrogant zealotry brings us? It certainly doesn't help me write a better web page.
All that said, what CSS *can* do is really nice, and I use it all the time! In time, it will get to the point where it will fix the horrible mess that "web development" has become. Either that, or Microsoft will continue to ignore standards and it will fix nothing.
Good post, though! We need more folks like you who can share facts rather than trying to snottily point out the ignorance of people they look down upon. If you can point me to a good primer on using XML + XSLT + CSS, then I'd love to see it.
I don't make the rules. I just make fun of them.
Which works until you need to background image to stop at your header or footer. Better to use javascript to find the tallest column and make the other column the same height.
As I was saying: CSS is, at times, arcane and unintuitive. Is using JavaScript to *program* the layout somehow supposed to be superior to a table-based layout? I mean, I had troubles with CSS layout before (after 30 minutes I resorted to using tables and said troubles vanished), but I am actually quite surprised by your solution. It sounds ridiculous!
I don't make the rules. I just make fun of them.
The best tool for editing CSS (and the HTML/XHTML that goes with it) is TopStyle Pro, from Nick Bradbury, the original creator of the HomeSite editor. Unfortunately, TopStyle is for Windows only. (Nick codes in Delphi.)
tables work in an intuitive way that you can easily visualize whereas a mass of floated DIVs often do not!
If you can visualize. The last I heard aural browsers for the visually impaired trip over tables, especially when someone uses one and access keys and so aren't included. Of course divs may present the same problems.
FalconShould there be a Law?
here's nothing "less" semantic about using tables instead, and there's some serious advantages - like the fact that all major and most minor browsers will render them identically
Last I saw this wasn't true cross platform, browsers for different OSes render tables differently. I've seen tables rendered ok on Windows that fall apart on *nices or Macs and visa versa.
FalconShould there be a Law?
You're still generating HTML - and that HTML still has to be laid out by some means. XSLT doesn't save you from that.
Actually it does, because it is generating HTML tailored to the exact content being displayed. CSS by it's very nature is designed to handle some abstract content, but a XSLT transformation can look at what is really going to be presented and take a lot of shortcuts in the final HTML generated. It doesn't matter so much if THAT output looks odd because no-one should ever need to edit it (though it should not be too odd because someone WILL be debugging it someday!).
It's the differnce in producing HTML that needs to be maintainable vs. readable.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
This is a great extension which enables you to see and edit (in real time) CSS for sites, as well as overlay ID and class info on the actual page! BRILLIANT! (and a lot more stuff too) WEB DEVELOPER
and as *I* said, it makes the code that gets laid out much less important in the grand scheme of things - an ugly table structure is just as easy to generate than nice CSS, in fact probably eveen easier. And more likley to work on more browsers without testing.
If I am writing a page by hand I prefer to use CSS because it makes everything so much cleaner. If I am generating HTML the choice I make are different because the computer doesn't care how annoying it is to work with tables but I do care that I can just eliminate a lot of extra testing.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
I scanned the article quickly, and did not find a CSS validator on the list. This is a useful tool for CSS novices such as myself.
Either that, or the CSS advocate ends up admitting that the CSS solution is just as big of a hack as using tables is.
It's not about how much of a hack it is to lay something out in tables vs. CSS. It's about separating content from presentation.
This has obvious advantages: you can present in a browser, on a PDA, to a screenreader or braille device, to a cell phone, etc. etc. without changing a line of markup.
For many of those devices, the holy grail is very real: often the device itself can provide its own stylesheet which will render semantic markup properly without any intervention by the site developer.
But, there are less obvious advantages also: a page marked up semantically can be parsed programmatically much more easily than a tag-soup page filled with nonsense presentation markup.
The uglier, non-table-based hack is better if it preserves this separation of content and presentation. CSS hacks that work around browser bugs, for instance, usually do not clutter the markup.
Early CSS techniques did sometimes hoop-jumping in the markup, but that's not really true anymore. Pages styled with CSS usually are on the whole much more semantically correct than their table-based counterparts. Modern XHTML pages with CSS are very simple. Modern CSS techniques are therefore superior, even if uglier, for this reason alone.
I'm just waiting for the day.
And this is different from any other development language how?
You could have written this, "How is this different from any other development language?" but you seem to be going for the "snide and snotty" approach.
Let's actually expand your statement to include not only development languages, but also operating systems, applications, and licencing schemes. That said, how is it different?
It's a difference in degree, not kind.
OpenBSD advocates are, by far, the worst. They are the most elitist, most rude, most abusive, most cruel, and most in-your-face about it. They deserve to be marginalized and ignored. Too bad OpenBSD can be replaced by many other operating systems.
I think the second worst would be LISP advocates. They think they are smart and everyone else is stupid and backward, and they feel like they have the need to educate everyone in the true, pure way. Too bad LISP can be replaced by many other programming languages.
I would have to label CSS advocates as "third worst". Too bad CSS has failings and the insisitence of its advocates mostly amount to, "If you don't accept our way, we'll just whine louder!"
Certainly there's room for disagreement about my rankings. They are, after all, my opinion, and I don't really have a "hard" way of ranking them objectively. I will, however, defend my rankings. I think you can agree with me that Delphi advocates are not as loud, ugly, or elitist as LISP advocates, particularly considering that Delphi users grossly outnumber the handful of people who actively code in LISP for a living.
In the grand scheme of things, none of it matters one iota. I think all technological advocacy, particularly the elitist sort, is an easily-ignored waste of energy.
I don't make the rules. I just make fun of them.
but it solves the problem once you give the cleared element it's own background.
I use the visibone style guides. All the CSS tags on one page including browser compatability notes, equivalent HTML tag attributes, and some examples.
What did I start here.
Sorry guy. Just give it a break huh?