Slashdot Mirror


Core CSS (2nd ed.)

Simon P. Chappell writes "It used to be that a website could be standards compliant or it could be attractive and impressive to prospective customers, but it could almost never be both. Now with the rise of CSS compliant browsers, a new generation of web designers are finding that the old wisdom is ready to be retired. CSS technology allows a website to have both excellent, semantically indicated content and attractive layouts. Core CSS (2ed.) positions itself as a complete guide to all of this standards based goodness." Read on for the rest of Chappell's review. Core CSS (2nd ed.) author Keith Schengli-Roberts pages 818 (10 page index) publisher Prentice Hall rating 6 reviewer Simon P. Chappell ISBN 0130092789 summary A flawed diamond

What is CSS? Cascading Style Sheets (the CSS part of the book's title) are a way to separate the content and presentation of a web page. The CSS file holds the presentation instructions, leaving the HTML to hold only the content. While CSS is a formal World Wide Web Consortium (W3C) standard, the adoption has been somewhat slow, with browsers only reaching full compliance with the base level of the standard within the past year or so. So why is CSS useful? CSS shines when it is used to define the style of a whole site. Want all of your headings to be the right shade of your corporate blue? No problem. Want every page to have the corporate logo on it's background? No problem. Whoops, got bought by GlobalMegaUberCorporation Inc. and need to change the colours and background logos in a hurry? No problem, just change the CSS definitions and your new corporate identity will shine out for all your customers to see. What do I know about CSS? I am a relative newcomer to CSS, having been laying out websites using tables since 1995. I had decided that it was time to learn how to bring my personal website up to speed with the latest standards, when I was offered the chance to review this book, so I took Prentice Hall PTR up on the opportunity. This review then, is from the perspective of one who knows HTML well enough to develop a couple of sites using only vi and who has decided to learn CSS. Overview The back cover blurb claims that Core CSS 2nd Edition is a comprehensive guide that shows both beginning and expert web developers all they need to know to achieve great results with the latest style sheet properties. It also claims to be ... the most complete and up-to-date CSS reference available. This review will explore those two claims. What's To Like The first thing to like about this book is that it does cover almost everything that it's possible to write about Cascading Style Sheets. I have included the table of contents below so that you can get a feel for the breadth that this book aims at covering. The writing style is clear and explanatory with an underlying conversational tone, quite suited to this manner of book. It is also obvious from the text that Mr. Schengli-Roberts does understand his subject matter very well indeed.

The biggest thing to like about this book, for me, is appendix B, an alphabetical listing of the defined CSS properties and values. This list covers 92 pages and is a key part of the whole book. Importantly, it doesn't feel like filler and gives an impression that care has been taken in devising this very useful resource. Each entry in the appendix gives an example of correct usage of each property, which as a CSS neophyte I appreciated greatly.

What's To Consider This book carries a 2004 copyright, yet it feels old when you view the list of browser compatibilities for each property. While it does give compatibility information for Microsoft Internet Explorer 6, it only covers Mozilla 1.0, it mentions Konqueror without any version details and completely omits Apple's Safari browser. This spotty coverage seems at odds with the rest of the book and really felt like a glaring omission to me. Summary This is a good book -- and if you're in the process of learning to use Cascading Style Sheets, you should certainly consider it for your collection. It is flawed by a poor selection of browsers for it's compatibility lists; while this may not be an issue for you, I found it quite irksome. This explains my review score and my description of this book as a flawed diamond.

Far more information than most people could ever want to know about Simon P. Chappell is available at his personal website. You can purchase Core CSS (2nd ed.) from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, carefully read the book review guidelines, then visit the submission page.

314 comments

  1. CSS sucks by Anonymous Coward · · Score: 5, Funny

    Run DeCSS and be free of it forever!

    1. Re:CSS sucks by imidazole2 · · Score: 0, Offtopic

      How about DEAnonCoward? CSS r0x0rs your s0x0rs

      --

      -Imidazole2
  2. CSS Zen Garden by cmstremi · · Score: 5, Informative

    csszengarden.com is a great example of CSS can be rich, powerful and compliant.

    1. Re:CSS Zen Garden by chrisgeleven · · Score: 4, Informative

      For those who say CSS doesn't work right in IE or Mozilla, the CSS Zen Garden will prove them wrong. Almost every design on this site works with IE5+ and Mozilla. To see such beautiful, fast, standards-compliant, and workable designs not break for 95% of web browsers on the web today is quite amazing.

    2. Re:CSS Zen Garden by TwinkieStix · · Score: 4, Interesting

      Almost every design on this site works with IE5+ and Mozilla. To see such beautiful, fast, standards-compliant, and workable designs not break for 95% of web browsers on the web today is quite amazing.

      But not totally usable. I'm using Mozilla 1.6, and as soon as I try to increase the font size on most of the themes in zengarden, I get overlapping text. It's useless when running at high resolution.

    3. Re:CSS Zen Garden by mattkime · · Score: 2, Interesting

      ...unless you have a mostly mac audience, in which case Mac IE 5 barfs on many of the designs.

      Yes, yes, Apple now makes Safari, but its going to take a long time for the more clueless users to switch. (I know, I've tried...)

      --
      Know what I like about atheists? I've yet to meet one that believes God is on their side.
    4. Re:CSS Zen Garden by Neon+Spiral+Injector · · Score: 5, Insightful

      I do with people would stop pointing to this site as a paramount of CSS design. While their work may be "rich, powerful and compliant", it is not, as you have noticed, "flexable".

      What is so hard about using "em" as the base measurement for the layout? Also, the main content text size should always be 1em, i.e. not specified, allowing the browser's default size to be used.

      I run at 2048x1536 on a 19" monitor. GNOME with a SVG based theme just looks really crisp. But then I go to some website that thinks that 10px is a good font size. And has their entire layout based around a fixed 600px center column. So if I do Ctrl-+ to bump up the font size to something I can see, I end up with like 5 words on each line.

      Okay, I'm done...

    5. Re:CSS Zen Garden by simcop2387 · · Score: 0

      i'm not seeing a problem with fire(fox|bird) 0.8 works fine, no overlapping text, you might want to try the 1.7 branch of mozilla instead of 1.6

    6. Re:CSS Zen Garden by Anonymous Coward · · Score: 0

      Yes 'em' would be nice.

      But you're falling in that extreme minority. 2048x1536!?!? My god. I have yet to see a coded page be able to flex and still fit what the designer had in mind.

    7. Re:CSS Zen Garden by 33degrees · · Score: 1

      Well, the designs do work and most browsers, but many of them rely on various hacks and workarounds to display correctly on all browsers, and even the most standards compliant browsers on the market have bugs. This means that developing cross-platform CSS is a lot more work than it should be.

      But the CSS Zen Garden is definitely an amazing ressource, and discovering it was what helped me kick the tables-for-layout habit.

    8. Re:CSS Zen Garden by Anonymous Coward · · Score: 2, Informative

      From the CSS2 specification:
      "Pixel units are relative to the resolution of the viewing device, i.e., most often a computer display. If the pixel density of the output device is very different from that of a typical computer display, the user agent should rescale pixel values."

    9. Re:CSS Zen Garden by Dracos · · Score: 1

      The reason why most things on the Garden work in IE is because the design authors have no problems using IE-specific css hacks, most of which break css validation, and contribute to the life-support of IE.

      Sadly, more than a few designers never actually learned css, they just started using Dreamweaver. Hence, they have no idea what css is capable of, and don't know how to fix css by hand.

    10. Re:CSS Zen Garden by Anonymous Coward · · Score: 0

      "For those who say CSS doesn't work right in IE or Mozilla"

      Has anyone actually said that?

    11. Re:CSS Zen Garden by Azghoul · · Score: 1

      This is actually pretty amazing when I think about it. I've been on the 'em' bandwagon for a while, but this knocks me off it hard.

      For instance, images are usually given px sizes in CSS... but they don't need to if a user agent could handle on-the-fly resizing... which, aha, Mozilla and IE already do!

      So you could easily say your image is 100px wide, and your text is 10px tall... and when the user agent of a 2000x1200 user comes along, it could auto-scale each to, say, 200px and 20px... why not?

    12. Re:CSS Zen Garden by rastachops · · Score: 1

      Well hopefully one day it will be possible to enjoy higher resolutions on displays, when SVG and such make it into mainstream desktop operating systems. I'm not certain but I have a feeling that Longhorn (due sometime never) has some support for this.

      How advanced is the SVG support in GNOME?

    13. Re:CSS Zen Garden by Anonymous Coward · · Score: 0

      I was on the em bandwagon, as well, until I read the spec myself ;).
      There are loads of other details about how the user agent should scale px values as well. Best of all, it's all quite readable, like all w3 specifications. Should be required reading for anyone working on web browsers.

    14. Re:CSS Zen Garden by Anonymous Coward · · Score: 0

      Hear, hear! If I could pick two nits to fix right now in all browsers, they would be 1. box model and 2. em support. em units are unfortunately spotty in many browsers... but usable enough to be used, by people that care and know what they're doing.

    15. Re:CSS Zen Garden by Anonymous Coward · · Score: 0

      http://www.csszengarden.com/?cssfile=063%2F063%2Ec ss

    16. Re:CSS Zen Garden by Short+Circuit · · Score: 1

      So pester Macromedia to fix Dreamweaver. You can't expect a majority of the websites out there to be run be people who actually know the language. There's too many useful tools like Dreamweaver and (ack) FrontPage out there.

      Thinking of which...is HotDog still around? I haven't heard anything about them for years..

    17. Re:CSS Zen Garden by jdowland · · Score: 1

      I think the zen garden is a good example of what can be *achieved*, but not good aesthetics at all. The designs are very noisy and over-the-top and many of them would not prove to be workable, every-day designs.

      In addition, the markup of the zen garden is tailored towards providing as many hooks as possible. In a perfect world, we'd have the markup concerned soley with content and not presentation (yes, providing hooks is an explicit consideration of presentation).

      However I don't think that CSS is powerful enough to do away with hook-concious markup.

    18. Re:CSS Zen Garden by Anonymous Coward · · Score: 0

      and has their entire layout based around a fixed 600px center column

      maybe it's because they are using raster graphics that, if scaled up to your 2048x1536 screen size, would look like shit...duh.

    19. Re:CSS Zen Garden by Anonymous Coward · · Score: 0

      I run at 2048x1536 on a 19" monitor.

      Yeah! I run at 12096 x 9042 on a stock ticker. Why can't designers keep me in mind when they make websites???

    20. Re:CSS Zen Garden by TwinkieStix · · Score: 1

      Try resizing the text in this one. It's the most perfect example of why it will sometimes never work - even with tables.
      The main one, this, and this work fine.
      But, why don't this, this, this, this, this, or this work? They look like they should, and I'm positive they could if tables were used instead.

    21. Re:CSS Zen Garden by Laebshade · · Score: 2, Informative

      It's not that they're using a fixed width that is the problem, and the main reason they're using it is so users won't see it smaller than it really should be. Instead of using width (like I assume they're using) they should be using min-width. As the name implies, this would set a minimum width (as I use on my website's CSS.

      HTML is for structuring the document, CSS is for styling it.

    22. Re:CSS Zen Garden by Anonymous Coward · · Score: 0

      Standards are bad. All standards is all bad. I mean, look what standards do to /. dweezleboos.

    23. Re:CSS Zen Garden by cyfer2000 · · Score: 1

      But if you would like to know more about compatibility, quirksmode.org could be useful.

      Becareful, some test may crash your IE6.

      --
      There is a spark in every single flame bait point.
    24. Re:CSS Zen Garden by Kozar_The_Malignant · · Score: 2, Insightful

      >What is so hard about using "em" as the base measurement for the layout? Also, the main content text size should always be 1em, i.e. not specified, allowing the browser's default size to be used.

      Sheesh yes. This site also cranks my other pet peeve: contrast. Light grey text on white is hard to read, especially at smaller sizes. Here are some guidelines from Penn State:
      • Use a browser safe color palette (216 colors).
      • Use contrast. Dark text on pale background is better on a computer than light text on dark.
      • Avoid vibrating contrasts, especially red and green next to each other (color blindness) .
      • Use bright or different colors for emphasis.
      • Use the 3-Color Rule.
      • Never use colors from the opposite ends of the color spectrum together.
      Nothing like dark red, eight point type on a black background to help my eyes.
      --
      Some mornings it's hardly worth chewing through the restraints to get out of bed.
    25. Re:CSS Zen Garden by Anonymous Coward · · Score: 0

      It's got nothing to do with CSS vs tables. It's just clueless graphic designers thinking that they can design for the web when what they want is to design for a fixed medium, like print.

    26. Re:CSS Zen Garden by Anonymous Coward · · Score: 0

      The reason why most things on the Garden work in IE is because the design authors have no problems using IE-specific css hacks, most of which break css validation, and contribute to the life-support of IE.

      Untrue for two reasons. One: nothing you can put in a stylesheet can break validation. It can cause the stylesheet to become invalid, but "validation" is the act of running it through a validator, not the state of being valid.

      The second reason is simply that most CSS hacks to cater for IE still result in valid, meaningful CSS.

    27. Re:CSS Zen Garden by skahshah · · Score: 1

      Yes, it is (HotDog): http://www.sausage.com
      Now at version 7.03. With HomeSite, the best tool I ever used

    28. Re:CSS Zen Garden by sunbane · · Score: 1

      Using "em" is not perfect - if people have a small standard font size, when you go to make small text in your web design it can fast become unreadable. And then there is the case of old browsers... not a big deal these days for most but depending on your audience you might have to take that into consideration. If IE would add (to windows, exists in Mac) the TextZoom feature pixels would work quite well, but alas they don't play well with others.

    29. Re:CSS Zen Garden by Laebshade · · Score: 1

      On an unrelated note, I was worried by posting my website address here I would get slashdotted, but I just read that my web host provider increased my bandwidth gb/month to 5x the original.

    30. Re:CSS Zen Garden by Anonymous Coward · · Score: 0

      I've seen this in mozilla too. It's the only time I have to use konqueror and it seems to do it right every time.

    31. Re:CSS Zen Garden by Anonymous Coward · · Score: 0

      Speaking of modern webdesign, "Browser Safe Colors" went out of style like 8 years ago along with VGA and probably was an incorrect recommendation to begin with.

    32. Re:CSS Zen Garden by Trejkaz · · Score: 1

      Even if all the graphics were positioned based on the font size, you would still be in trouble wherever there are images which can't scale.

      --
      Karma: It's all a bunch of tree-huggin' hippy crap!
    33. Re:CSS Zen Garden by geezusfreeek · · Score: 1

      Interestingly, Mac IE 5 is still better in many ways than IE 6 for Windows. Superior PNG support and CSS and HTML is at least as good as Win IE 6.

    34. Re:CSS Zen Garden by packman · · Score: 1

      And then you find a site like this...

      It will be a surprise to a lot of you guys, but Opera is actually the better CSS renderer...

    35. Re:CSS Zen Garden by Anonymous Coward · · Score: 0

      Using "em" is not perfect - if people have a small standard font size, when you go to make small text in your web design it can fast become unreadable.

      The same applies when using fixed font sizes, only moreso as the size is completely unrelated to what the user has chosen. The idea is to avoid sizes less than 1em for normal text, and only go below that for non-essential "fine print".

      If IE would add (to windows, exists in Mac) the TextZoom feature pixels would work quite well,

      Oh yes, because I love adjusting my settings every time I go to a new site that has a different idea of what is a good text size. 1em/100% is the ideal text size. Use it.

    36. Re:CSS Zen Garden by Anonymous Coward · · Score: 0

      Speaking of modern webdesign, "Browser Safe Colors" went out of style like 8 years ago along with VGA

      Yes, because modern devices (handhelds, mobile phones, etc) have so many colours to work with. Get a clue.

      and probably was an incorrect recommendation to begin with.

      Care to elaborate?

    37. Re:CSS Zen Garden by WuphonsReach · · Score: 1

      2048x1536!?!? My god. I have yet to see a coded page be able to flex and still fit what the designer had in mind.

      But in reality, people who run higher resolutions (1280x768 and up) don't run the browser as a maximized windows. Instead, they start to size the browser window like a sheet of paper, a bit tall and thin. On my 15" 1400x1050 display, Firefox only covers about 2/3 of the screen width (or about 1000pix wide). Same with looking at stuff on my 19" 1600x1200 display, the browser width ends up around 1000pix wide.

      The reason for that is the same reason that newspaper text doesn't stretch across the entire width of the sheet. It's too difficult to read long blocks of text that are wider then 40-60 (75?) characters. Beyond a certain width, your eyes start losing their place as they jump back to the start of the next line. Hence, a newspaper (and news magazines) divide the page into multiple columns to make it easier to read.

      (Personally, I'm still looking for a 15" desktop LCD monitor with a dpi over 120, at 19" monitor at 2048x1536 has a dpi of 146.)

      --
      Wolde you bothe eate your cake, and have your cake?
    38. Re:CSS Zen Garden by Anonymous Coward · · Score: 0

      maybe it's because they are using raster graphics that, if scaled up to your 2048x1536 screen size, would look like shit...duh.

      Which is why you should never use raster graphics as a positioning element. Or if you do, do so in a way that allows for "stretch" (blank space between elements that can stretch to fill the gap).

      Resize the Slashdot windows sometime... observe how the Slashdot logo stays against the left edge and the recent story icons stay against the right edge. It breaks when the window width gets below 750pix or so but looks fine at window widths up to 1400 (or more... except that individual lines get too long to read).

    39. Re:CSS Zen Garden by doom · · Score: 1
      Use contrast. Dark text on pale background is better on a computer than light text on dark
      I was just wondering "why?". I'm a white background hater myself (bring back the greenscreen!). High contrast certainly makes sense, but I've never understood why it's important for the computer to give you the third degree.

      So I checked the site referenced:

      The contrast of a light-colored background with a dark colored foreground (text and images) is most widely used and allows for accessibility.
      It's "most widely used", yes that I agree with. I've certainly noticed. Post-macintosh, everyone went beserk on the idea that computers should look like dead-trees (except that the dead-trees medium works by *reflected* light, computer CRTs are light emitting... hm, could it be that this implys that perhaps the standard should be reversed?).

      But anyway, "most accessible"? Huh, who says? At least there's a reference: "Griffin, R. (1998). Visual Design. Chapter 7. Pages 7-1 through 7-22.". I'll have to look it up some day. I'm sure it'll be very convincing.

  3. What a great way... by Anonymous Coward · · Score: 0
    and completely omits Apple's Safari browser.
    ...to get creamed on /. Don't include a favorite of the mods.

  4. Content and Layout - Uh Oh by RetroGeek · · Score: 5, Informative

    both excellent, semantically indicated content and attractive layouts.

    Well I don't like the layout, but that is subjective.

    But click on Full CSS Browser Compatibility Chart and you get Warning: mysql_connect(): Access denied for user: 'corecss_corecss1@localhost' (Using password: YES) in /home/corecss/public_html/properties/full-chart.ph p on line 38

    Oops...

    --

    - - - - - - - - - - -
    I am a programmer. I am paid to produce syntax not grammar. Deal with it.
    1. Re:Content and Layout - Uh Oh by RetroGeek · · Score: 1

      And further, they have overridden the mouse pointer when you hover over a link. It is set as a text cursor.

      Thank about confusing, especially to the novice user.

      --

      - - - - - - - - - - -
      I am a programmer. I am paid to produce syntax not grammar. Deal with it.
  5. heh... by ambienceman · · Score: 5, Funny

    For a minute there I thought Dave Chappelle wrote a book on CSS.

    I'm codin', bitch!
    1. Re:heh... by Anonymous Coward · · Score: 0

      *dons his Li'L John dreads*

      WHAT?! Dave Chapelle? YEAH!!

      *ducks*

  6. Now all they need... by Bronz · · Score: 5, Funny


    Now all they need is a good database primer.

    "Warning: mysql_connect(): Access denied for user: 'corecss_corecss1@localhost' (Using password: YES) in /home/corecss/public_html/properties/full-chart.ph p on line 38"

    1. Re:Now all they need... by JohnFluxx · · Score: 1

      W00T! We know their password - let's hack them.

  7. A Roadmap to Standards by huphtur · · Score: 4, Informative

    Comprehensive, informal, and somewhat long-winded roadmap for anyone who has heard about web standards, thinks they might want web standards, but doesn't know where to start.

  8. CSS, oh how I love thee... by Just+Some+Guy · · Score: 5, Interesting
    I was hired at my new job in part to completely re-write the website that our customers use to access information in our database. Since I was starting over with a blank slate, I got to pick every detail of the platform, so we jumped in with FreeBSD, Zope, Python, and XHTML/CSS.

    I truly don't understand why anyone is still using <font> tags. Instead of making the site design more difficult, strictly seperating appearance from content has made maintenance far easier. I'm still slightly amazed that I can completely re-do the appearance of my employer's website by editing a single file, and when my boss decided that he hated the way links looked, he was thrilled that it took me about 30 seconds to globally change them.

    Seriously, this is the way web design was meant to be.

    --
    Dewey, what part of this looks like authorities should be involved?
    1. Re:CSS, oh how I love thee... by Neil+Blender · · Score: 1

      ......I truly don't understand why anyone is still using tags........

      Because sometimes <font color=red>xxxx</font> is easier than defining and importing a style sheet.

    2. Re:CSS, oh how I love thee... by cexshun · · Score: 2, Insightful

      Not when css can be defined inline with

      <div style="color:red;"> </div>

      And if I see a <center> tag one more time, I'm going to explode!

    3. Re:CSS, oh how I love thee... by womby · · Score: 1

      no it isn't

      xxxx

      means that at a later date you don't have to search through every html doc because somebody decided that a red background would look better.

      --
      **** lying is wrong even for sleeping dogs
    4. Re:CSS, oh how I love thee... by brownpau · · Score: 5, Insightful

      Ah, but is far more semantic, and with a declaration of span.error{color: red;} , you can change any of the error spans to any color, font, or style you wish with just a line of text, instead of hunting through KBs and KBs of code to search/replace any tags you might have missed.

    5. Re:CSS, oh how I love thee... by Just+Some+Guy · · Score: 2, Informative
      I completely disagree. It's never easier to hardcode constants right into the middle of a block of code than to pull them into their own section, and that holds true for HTML, too.

      At some point, you will want to change that to <font color="blue"> (also note that quotes are mandatory in all recent versions of HTML); when you do, your definition of "easier" will change to be more like mine.

      --
      Dewey, what part of this looks like authorities should be involved?
    6. Re:CSS, oh how I love thee... by Neon+Spiral+Injector · · Score: 2, Informative

      Well "div" is a block level elment, you'd want a "span" in this case. Also the trailing ';' is not needed and actually invalid for the style attribute to a tag.

    7. Re:CSS, oh how I love thee... by Neil+Blender · · Score: 4, Insightful

      It's never easier to hardcode constants right into the middle

      No offense, but never say never. Coding in part is about adapting and simplifying and sometimes, sometimes, it is easier and better to hard code something than to make it elegant.

    8. Re:CSS, oh how I love thee... by nazh · · Score: 1

      if its inline i would rather use a span-tag than a div-tag. you could also use a strong or em tag, which would give a semantical meaning aswell, rather than just a visible look.

    9. Re:CSS, oh how I love thee... by RevDobbs · · Score: 1
      Because sometimes xxxx is easier than defining and importing a style sheet.

      If you don't want to go to the trouble of creating a style sheet, or specifing your styles in the <head>ing, then <span style="color:red;">this works just as well</span> and will leave you feeling all warm & fuzzy.

    10. Re:CSS, oh how I love thee... by ejaw5 · · Score: 3, Informative

      For anyone who maintains websites with a text editor (myself included) the value of CSS is greatly appreciated. As you've mentioned, all you have to do is edit one css file and you can change the appearence of a whole website, or at least all the pages that use that particular CSS file. The problem is with those using WYSIWYG editors like FrontPage and Dreamweaver who have no idea of CSS, or in some cases basic HTML for that matter. I've seen how Dreamweaver (4) handles page "themes". Make one change like change link colors, and then the software traverses through each and every file and makes the changes in them. Not very efficient.

      --

      $cat /dev/random > Sig
    11. Re:CSS, oh how I love thee... by cexshun · · Score: 1

      div was just an example, and you are correct. My post should not be taken in any way as an example on changing the color of a single word in the middle of a sentence.

    12. Re:CSS, oh how I love thee... by Just+Some+Guy · · Score: 2, Insightful
      No, that's not very efficient at all, especially since it discards all semantic information. In other words, if you've chosen the same particular attribute for two unrelated entities, and you later want to change that property on one of the entities to something else, then you're going to have a heck of a time distinguishing between them.

      For example, suppose that you use red text to highlight error conditions in one part of the site, and red text to indicate mandatory form items on another part of the site. Later, you decide to change required fields to blue. With CSS, you edit the style for "td.mandatory", and every occurence of <td class="mandatory"> is instantly affected. Without CSS, you search for every match of "red" and decide whether or not to alter each one. Strangely enough, most employers aren't too thrilled with a 30-second change takes 3 hours.

      --
      Dewey, what part of this looks like authorities should be involved?
    13. Re:CSS, oh how I love thee... by kfg · · Score: 2, Insightful

      Well, actually, web design was meant to be was at browser level, allowing the user to alter the display to his own taste.

      Companies, such as the one you prsumable work for, and the desktop publishing people charged with putting forth official company documents weren't happy about that arrangement, so times have changed.

      That said, about two years ago I got my ass chewed out here for applying the old rules. Since that time I have come to appreciate CSS myself.

      I'm still not crazy about the web being "brochurified" though.

      KFG

    14. Re:CSS, oh how I love thee... by Just+Some+Guy · · Score: 5, Insightful
      No offense, but never say never. Coding in part is about adapting and simplifying and sometimes, sometimes, it is easier and better to hard code something than to make it elegant.

      This is probably the one time where I am perfectly comfortable saying "never". In my years programming, not one have I ever seen a situation where

      my $grav = 9.8;
      ...
      my $y1 = 23 * $grav;
      my $y2 = 5 * $grav;
      wasn't much more understandable and maintainable than
      my $y1 = 23 * 9.8;
      my $y2 = 49;
      Using constants (or CSS) gives meaning to things that don't have obvious relationships. Seeing
      <em class="metasyn">foo</em>
      ...
      <em class="metasyn">bar</em>
      indicates that those two are somehow related. On the other hand,
      <font color="red">foo</font>
      ...
      <font color="red">bar</font>
      says nothing more than that the designer likes "red". "Hard" and "easy" are abstract concepts, until you're looking at your own code a year later and don't understand what you meant - then they're quite concrete.
      --
      Dewey, what part of this looks like authorities should be involved?
    15. Re:CSS, oh how I love thee... by Reckless+Visionary · · Score: 1
      Dreamweaver (4)

      Um. . .yeah. Just like Netscape 2 didn't support layer positioning either. . .may want to upgrade there buddy. Dreamweaver MX 2004 has hordes of CSS support. It's now hard to not create a page in DW not without it creating a compliant style sheet and a XHTML strict document.

      --
      I think I'll stop here.
    16. Re:CSS, oh how I love thee... by 33degrees · · Score: 1

      I can't say anything about frontpage, but the latest version of dreamweaver mx (7.0.1) has very good CSS support, and comes with several CSS based page designs. The only glaring issue is the way Dreamweaver's internal HTML renderer handles absolutely positioned content within other content, it seems to treat it all as being relative to the page itself.

    17. Re:CSS, oh how I love thee... by Azghoul · · Score: 1

      You could pretty easily just define that CSS with display: inline (as I'm sure you're aware).

    18. Re:CSS, oh how I love thee... by Just+Some+Guy · · Score: 2, Insightful
      With CSS, the browser gets much more control over the final presentation by allowing the user to load locally-defined stylesheets that override remote settings.

      Our website is actually very, very simple by most design standards. I built it from the ground up to be extremely lightweight and "clean" so that our customers, who spend their days filling in forms and submitting them, aren't distracted by anything that wasn't explicitly designed to make their work more efficient.

      The huge win for us wasn't a gee-whiz-that's-amazing appearance; it was a well-structured architecture that we can build on and alter without tracking hundreds of embedded tags throughout the site. We don't do anything in CSS that couldn't be done directly in the HTML. We just do it far more efficiently than we could've otherwise.

      --
      Dewey, what part of this looks like authorities should be involved?
    19. Re:CSS, oh how I love thee... by bonkedproducer · · Score: 2, Interesting

      It's not hard in any of the major browsers to tell them to ignore the stylesheet of a site, or use your own - That's the beauty of CSS, even in a text-based, or non-compliant browser, you can degrade much nicer and still present content.

      Something you can't do when you use stuff like javascript etc. to present your "brochur-a-fied" web site. CSS gives the designer more power and more flexability, and a good standards compliant browser allows that without taking the power to "view it your way" from the user - much better than huge nested tables.

      I have sites that I rebuilt to be CSS/XHTML strict compliant after originally being built in tables, and saw file size reductions of 6KB (CSS) vs 24KB (tables/CSS hybrid) that could have a major impact of busy sites. AND, I began to get comments from those using screen readers etc. that the site was much easier to use. Plus, it is faster to recode one line of CSS than even an automated find/replace in any program I have tried.

      CSS shouldn't be feared or downed because it is different, it is an useful tool, and one that is more capable of doing what we want - remember ZEALOTS different isn't bad, it's just different, but then again, this being /. I'm sure there is some here that are mad that web sites aren't delivered via punch card, because that's what they used back-in-the-day and are still happy with.

      --
      Clothes make the man. Naked people have little or no influence in society - M. Twain
    20. Re:CSS, oh how I love thee... by Planesdragon · · Score: 1

      I've seen how Dreamweaver (4) handles page "themes".

      You probably haven't seen the latest version, then. Go download the free demo, and see the improvements.

      Dreamweaver has acceptable HTML now--as does, allegedly, MS Frontpage.

    21. Re:CSS, oh how I love thee... by Rie+Beam · · Score: 1

      I should mention that W3C is trying to move people away from using inline declarations in XHTML2.0. If I remember correctly, they're illegal, or at least deprecated.

    22. Re:CSS, oh how I love thee... by kfg · · Score: 1

      We just do it far more efficiently than we could've otherwise.

      Yes, this is something I appreciate about style sheets, as I am not a web designer, but an independant "document processor." So most of my web work is in editing and modifying existing pages. CSS certainly makes that work a damned sight easier when used well.

      KFG

    23. Re:CSS, oh how I love thee... by kfg · · Score: 1

      Naaaaah! The only thing I miss about punch cards was the addition of "Do not fold, spindle or mutilate" to the language. We had a lot of fun with that phrase.

      Actually, come to think of it, we did have a bit of fun folding, spindling and mutilating as well.

      KFG

    24. Re:CSS, oh how I love thee... by Anonymous Coward · · Score: 0
      <i>my $grav = 9.8;
      ...
      my $y1 = 23 * $grav;
      my $y2 = 5 * $grav;</i>
      Well I don't know why you need to clutter your code with all those dollar signs... All Shell-like language jokes aside, some people will say "ah but you do have things hard-coded and it's still better than:"
      GRAVITY = 9.8;
      C1 = 23;
      C2 = 5;
      ...
      y1 = C1 * GRAVITY;
      y2 = C2 * GRAVITY;
      or my favorite example:
      ZERO = 0;
      ONE = 1;

      for (i = ZERO; i < somelimit; i += ONE)
      ...
      The problem is some people do go too far into normalizing their code, then turn around and declare normalization bad for health.
    25. Re:CSS, oh how I love thee... by FuzzyBad-Mofo · · Score: 1

      It's not needed when defining only a single element, but it's not invalid. Good luck defining multiple style elements without separating them, i.e.:
      <span style="font:20px bold italic Courier; color:red; background:white;'>Dude, where's my CSS?</span>

    26. Re:CSS, oh how I love thee... by Neon+Spiral+Injector · · Score: 1

      You are right, I just checked both with and without is valid. I don't know why I thought that the trailing was invalid. It must have been some browser that had a fit when I did place one at the end of the inlined CSS.

      You are also correct, you always need them between individual CSS statements, but I wasn't saying that, I was only speaking of the superfluous one at the end.

    27. Re:CSS, oh how I love thee... by JimDabell · · Score: 2, Insightful

      Ah, but <span class="error"> is far more semantic

      No it isn't. It might be a bit more useful in site maintenance, but it means nothing to anybody outside of your organisation.

      Replacing <font> with <span> is meaningless. Replacing it with an element type that actually means something, like <em> (emphasis) or <strong> (strong emphasis) would be productive. How useful is the meaningless <span> element type in situations where CSS is not used (Lynx, Google, etc)?

    28. Re:CSS, oh how I love thee... by Ezza · · Score: 1

      Damn right, it should be spelt ! :)

      --
      I'm a perfectionist but I'm trying to cut back.
    29. Re:CSS, oh how I love thee... by Ezza · · Score: 1

      "centre" even..

      (I love preview, shame I don't use it)

      --
      I'm a perfectionist but I'm trying to cut back.
    30. Re:CSS, oh how I love thee... by Trejkaz · · Score: 1

      The difference in that case is that 0 is always 0, and 1 is always 1, but you might at some point want to change whether GRAVITY is (float)9.8 or (double)9.8, and if you think it's acceptable to go through all your code and change every reference to it, you suck.

      --
      Karma: It's all a bunch of tree-huggin' hippy crap!
    31. Re:CSS, oh how I love thee... by FuzzyBad-Mofo · · Score: 1

      Yes, but really using inline CSS as a fancy <font> tag kinda defeats the purpose. Though I have been known to use it on occasion when certain browsers coughIEcough choked when applying multiple classes to elements.

      (before any ACs flame me, I just realized my example was flawed, with the mismatched quote marks. Oops!)
    32. Re:CSS, oh how I love thee... by Anonymous Coward · · Score: 0

      No need to insult me you fucking jackass!

      I wasn't saying it's a good thing to do, I was saying some people think that way.

      Go die in hell!

    33. Re:CSS, oh how I love thee... by robwills · · Score: 1

      You've answered your own question. I just hope you're not trolling...

      Just search and selectively replace on 'mandatory'. Change it to something less abstract than 'mandatory' and define that class in your CSS with the new styling. Perhaps 45 seconds instead of 30, but only for the aforementioned rare case.

    34. Re:CSS, oh how I love thee... by Just+Some+Guy · · Score: 1

      You're answering a question I never asked - re-read my post. I was saying that with CSS, even if two entities have common attributes (like color="red"), there is a clear distinction between them, and that no such distinction exists without CSS.

      --
      Dewey, what part of this looks like authorities should be involved?
    35. Re:CSS, oh how I love thee... by Neon+Spiral+Injector · · Score: 1

      And once again I'm in agreement with you. I even try to stay away from classes and ids, and try to find a CSS selector to identify the tags of which I want to modify the presentation. I'll just chunk the major content up into seperate divisions, give each an ID, and try to build the rest from there.

  9. Some good, some bad about this book by Muda69 · · Score: 5, Insightful

    What I have a problem with is the fact that the whole book, every example for every property, was completely embedded into the HTML itself. Their was a slight reference to externally described CSS but no examples to follow. The idea of the sheets is to set a number of parameters for most or all of your pages to follow. Embedding them into the HTML every time defeats the purpose. Also their were some mentions to multiple options techniques that never had any kind of example or visual of any kind to follow so you can see how this could be useful. In that sense the beginner user would be completely lost on something that can be helpful down the road.

  10. css is as buggy as something very buggy by Anonymous Coward · · Score: 0, Troll

    so you've used css then!!!!

    Gecko rocks (mostly)
    IE sucks (mostly)

    trying to get a css'd site to work well in both ie and gecko is very, very hard work.

    tables rock, div tags suck (well ie's support of div tags sucks)

  11. And Then There's IE by Cruxus · · Score: 5, Interesting

    Cascading Style Sheets are all well and good--actually, I use them on my website, and I love them--but the painful part is ensuring compliance among browsers. I'm a self-taught, amateur geek, and I code my XHTML and CSS by hand. I don't read tutorials: I read the W3C recommendations. Anyway, I like to think I can interpret rather exacting writing such as Web specifications without misunderstanding, but I always seem to botch something so that things are out of alignment and so forth in this or that browser--usually Internet Explorer.

    In summary, CSS is good, but it'd be better if all browsers actually followed the standards and interpreted any ambiguity the same way. That's all I want, so I can remain sane!

    --
    On vit, on code et puis on meurt.
    1. Re:And Then There's IE by t_allardyce · · Score: 1

      Try setting apache/whatever to serve a different css file depending on the browser, that way you can tweek for different browsers without upsetting the rest. If you dont want to have to write an entire css file for each browser then serve a main css file for all browsers and an additional file that adds or subtracts css style for each separate browser, it works wonders. Ofcourse, sometimes all browsers are equally crap so you have to just hack it :(

      --
      This comment does not represent the views or opinions of the user.
    2. Re:And Then There's IE by Tin+Foil+Hat · · Score: 2, Informative

      Unfortunately, simply knowing and understanding the standards just doesn't go far enough. You also need to know the most serious quirks of all of the major browsers. The W3C is not going to help you with that.

      Reading and understanding the W3C recs is good, even commendable, but it's only part of the equation. Tutorial sites can tell you things that the W3C cannot. Things like how Internet Explorer messes up the box model (your alignment promlem is most likely here), how IE 6 changed it, why it's still wrong, and what you can do about it. I pick on IE because it's easy, but there are various bugs and mistakes in all the other browsers as well, some of them are serious and can bite you in the butt. Tutorial and web design sites are good places to look for such information.

      Oh, and by the way, sanity is for wussies ;)

      --
      No matter how many of my rights are taken away, somehow I still don't feel safe. -Frigid Monkey
    3. Re:And Then There's IE by Anonymous Coward · · Score: 1, Informative

      In case someone diddnt know.. IE behaves much much better when there is a proper doctype declaration. With out a doctype, IE goes into HTML4.0 quirks mode so that pages adapted to flaws in earlier versions(like the broken box modell) are displayed correctly. With a XHTML1.0 doctype, the box model is correct. (AFAICT)

    4. Re:And Then There's IE by mnemonic_ · · Score: 1

      Not if the doctype starts with a question mark...

    5. Re:And Then There's IE by Anonymous Coward · · Score: 0

      yea, i hardly look at the standards because it's such a small subset of them that are reliable. trial and error -- testing across as many browsers and OSes as possible -- is the only way to really do it. it's still not a trustable tech, because nobody, and i mean nobody, implements the spec exactly. a few are MUCH closer than others, and if you read /. you know which those are, but still. it's sad.

    6. Re:And Then There's IE by FatalTourist · · Score: 2, Insightful

      Same problems here... but Explorer Exposed! helps me quite a bit. Good listing of IE CSS bugs and work arounds.

      --


      Escape Pod Films: Sketch Comedy and Web Series
    7. Re:And Then There's IE by Anonymous Coward · · Score: 0

      No doctype declaration starts with a question mark. Are you thinking of the XML prolog?

    8. Re:And Then There's IE by Laebshade · · Score: 1

      The best way to stay with (X)HTML/CSS compliance is to use the free (X)HTML validator and CSS validator provided by W3C. Also remember that using working drafted status technologies such as CSS3 is not advised since most browsers do not yet support it, whereas with XHTML 1.1 nearly all support it.

    9. Re:And Then There's IE by miskate · · Score: 1

      IE 6 is actually pretty good. If you leave out a doctype it uses the usual stuffed up MS version of the standards but with a properly formed doctype at the top of your HTML the standards compliance is on par with the other current crop of browsers - i.e. there are a few problems (and of course they are different problems in each browser) but you can get around them with minimum fuss.

      AFAIK (and I haven't looked into this for a while) IE6 is the only browser that pays any attention to the doctype at all - you've gotta give M$ some credit for that.

    10. Re:And Then There's IE by Anonymous Coward · · Score: 0

      whereas with XHTML 1.1 nearly all support it.

      Internet Explorer doesn't. Konqueror doesn't. Lynx doesn't. I'm pretty sure Google doesn't. They don't even support XHTML 1.0. You can "fake" it with XHTML 1.0 by following Appendix C and serving it as text/html, but you cannot do the same with XHTML 1.1 without deviating from the standards (you need to serve that as application/xhtml+xml or one of the more generic XML media types).

    11. Re:And Then There's IE by Anonymous Coward · · Score: 0

      If you leave out a doctype it uses the usual stuffed up MS version of the standards but with a properly formed doctype at the top of your HTML the standards compliance is on par with the other current crop of browsers

      Sadly, that's not true at all. So it gets the box model right, big deal. It still misses out support for display: table-cell, most of the selector types, and most of the typography control.

  12. Avoiding Piracy by Eberlin · · Score: 5, Informative

    As an act of rebellion, I ran all my web pages through deCSS and now I've got the MPAA after me!!!

    On a more serious note, I do like CSS as it is very handy when it comes to making site-wide changes. The big thing about it, though, is that it has to be there from the very beginning. Not that planning is a bad thing, but when you inherit site maintenance from someone that apparently heard Frontpage was "da bomb" and those FONT tags are everywhere, it hurts.

    I'm still having problems doing positioning with CSS, but I figure that comes with actually trying it out and working through various browser issues. Tables are still a very convenient way to get layout going...and it's a bad habit that needs to be fixed.

    For anyone who's starting a web project, DEFINITELY look into CSS. Even though it's got a bigger initial time investment, it pays off greatly in maintenance. Especially when the marketeers ask for a blue that's 3 shades lighter than what you currently have on 100 or so pages.

    1. Re:Avoiding Piracy by telbij · · Score: 2, Informative

      FONT tags are everywhere

      Meet my favorite regexp:

      s!</?font[^>]*>!!ismg

      Good for dealing with other types of annoying tags as well. I export HTML from Excel all the time, but you wouldn't know it from looking at my pages.

    2. Re:Avoiding Piracy by arkanes · · Score: 3, Insightful
      CSS positioning is fundamentally broken. It's simply impossible to acurately recreate some of the stuff tables do, and even where it's not it's a (great deal) more work to recreate many simple layouts. Even something as simple as "center this element on it's parent" is impossible without absolute positioning.

      For styling CSS is da bomb. For layout, template based pages are at least as (if not more) maintainable, have the advantage of being cross-browser compliant (including text-based browsers), and are, in most cases, easier to understand and maintain. If you're going for pixel-perfect positioning, you'll want CSS though.

      The whole seperation of content thing is crap, though. The structure of the HTML still affects both the layout and the formatting, so there's no way you can get a totally clean break. Accept that fact that alterations to the sites HTML will require changes to the CSS and vice versa.

      The cross-browser issues are a real pain with CSS - it's worse than the hacks we all used back in 93 to make stuff render correctly. IE may be broken and non-compilant but it's still got the 80-90% market share and if you're doing any large-scale site it MUST render correctly on IE. That means giving up on a whole ton of CSS functionality, and especially if you're using it for positioning. One more reason to stick with tables for another couple years.

      Maybe CSS 3 will adress some of the issues. For the time being, I ain't real impressed. It's certainly a step up on font tags, but it's got a long way to go before it's usefull for positioning.

    3. Re:Avoiding Piracy by gabe · · Score: 1

      Props for spelling definitely correctly.

      --
      Gabriel Ricard
    4. Re:Avoiding Piracy by telbij · · Score: 4, Informative

      Even something as simple as "center this element on it's parent" is impossible without absolute positioning.

      Try margin: auto;

      Sure, you also need the parent to have a text-align: center for it to work in IE PC, but you'll usually have all your text in lower level block elements that can be defined with text-align: left to smooth things out.

      The whole seperation of content thing is crap, though. The structure of the HTML still affects both the layout and the formatting, so there's no way you can get a totally clean break.

      I definitely agree with this, though the only reason it really comes up is as a backlash against the horrendous practices that developed during the browser wars.

      The cross-browser issues are a real pain with CSS - it's worse than the hacks we all used back in 93 to make stuff render correctly. IE may be broken and non-compilant but it's still got the 80-90% market share and if you're doing any large-scale site it MUST render correctly on IE. That means giving up on a whole ton of CSS functionality, and especially if you're using it for positioning. One more reason to stick with tables for another couple years.

      The table hacks seem to make more sense, but in many ways I think it's just the familiarity that makes them seem better. Some of the CSS hacks ARE ugly, but a) there's a ton of stuff you can do without any egregious hacks and b) a little server-side IE detection can clean things up immensely.

      There is a ton of functionality that we do have to give up on for IE, but on the same token, there is a ton of stuff that works and is not possible using tables.

      I'm only concerned that my pages work in IE. Frankly, I'd much rather have them look better in Mozilla or Safari, to give Microsoft an incentive to further their CSS support. I've gotten several people to switch to Firefox after simply coming into my office and saying "wow, your web looks so much cooler!".

      I still do use tables for many common purposes (forms, certain types of alignment where floats break down, etc.), but now is definitely the time to start learning CSS-P techniques. Once you get a handle on some of the major IE bugs it gets a lot easier, trust me.

    5. Re:Avoiding Piracy by Anonymous Coward · · Score: 0

      CSS positioning is fundamentally broken. It's simply impossible to acurately recreate some of the stuff tables do

      Do you mean CSS positioning is fundamentally broken, or do you mean Internet Explorer's CSS positioning is fundamentally broken? Before you answer that, take a look at the CSS specification, particularly the section all about display: table. All major CSS supporting browsers apart from Internet Explorer support that part of the CSS specification.

      Even something as simple as "center this element on it's parent" is impossible without absolute positioning.

      Completely false; use margin: auto.

      If you're going for pixel-perfect positioning, you'll want CSS though.

      If you're going for pixel-perfect positioning, you'll want to stay as far away from the web as possible. Variations in rendering are both possible and desirable in terms of both HTML and CSS.

      The cross-browser issues are a real pain with CSS - it's worse than the hacks we all used back in 93 to make stuff render correctly.

      No, you're just so used to the workarounds associated with table layouts that you forget they exist, or are so unaware of recent browser developments that you are allowing your sites to break without knowing it.

      For example, what about the fact that tr, th and td elements are all defined with optional ending elements? I don't see anyone whining that they need to explicitly close them even though the specification says otherwise. But describe a similar limitation of user-agents that happens to include CSS, and suddenly CSS is broken? Give me a break.

      Similarly, I don't see anybody whining about the inconsistency of table layouts, despite the fact that plenty of the whiners use them to lay out sliced up images that break in recent Gecko versions (hint: images are inline; table cells need to include space for descenders). But start talking about inconsistencies in CSS rendering, and suddenly CSS is broken again.

      IE may be broken and non-compilant but it's still got the 80-90% market share and if you're doing any large-scale site it MUST render correctly on IE. That means giving up on a whole ton of CSS functionality

      That's true. What you fail to mention, however, is none of that functionality is needed to replace table layouts, and so is irrelevent to your argument.

      Maybe CSS 3 will adress some of the issues.

      Where have you been? CSS 2 addressed those issues. Microsoft had already won the browser war by then though, and never bothered with a decent CSS implementation.

      It's certainly a step up on font tags

      Look, if you want to be taken seriously when talking about web development, stop harping on about "tags". When you say "tags", what you are actually talking about are "elements", and you just look stupid when you get it wrong.

    6. Re:Avoiding Piracy by AkaXakA · · Score: 1

      It's simply impossible to acurately recreate some of the stuff tables do

      Nah. It's simply hard to acurately recreate some of the stuff tables do.

      Little Boxes and Css Templates should help you.

      Also, on my clan site, I've got a working 3 collum layout without hacks: Team AEK website.

    7. Re:Avoiding Piracy by Anonymous Coward · · Score: 0

      The designs on Little Boxes fail if you narrow your browser window. Tables don't.

    8. Re:Avoiding Piracy by Trejkaz · · Score: 1

      If you want to save some of the hassle with bits of CSS missing from IE, you might want to check out this "IE7" thing. You put it in a stylesheet and it makes various things work which didn't already work.

      --
      Karma: It's all a bunch of tree-huggin' hippy crap!
    9. Re:Avoiding Piracy by packman · · Score: 1

      Too bad it doesn't fix any of the IE positioning bugs...

    10. Re:Avoiding Piracy by tamills · · Score: 1
      The whole seperation of content thing is crap, though. The structure of the HTML still affects both the layout and the formatting, so there's no way you can get a totally clean break. Accept that fact that alterations to the sites HTML will require changes to the CSS and vice versa.

      Not exactly true. And the evidence is that you can apply CSS to XML and you have, by definition, content and presentation separate. And if you use 'display' in your CSS, even HTML doesn't have to follow implied layout. Try it out: you can make the p tag display as an inline element.

      <html>
      <body>
      <p> first paragraph </p>

      <p>2nd paragraph starts</p>more text
      <p style="display: inline">3rd paragraph is inline.</p> with more
      text.
      </body>
      </html>

      I tried getting /. to accept some of this but I think it's editing out the style= attribute. So you'll have to try this out in a separate doc.

      Having said that, if you allow HTML to be rendered using its default display implications, then the above statement will hold to some extent.

      --

      Be careful what you wish for...

      Where your treasure is there is your heart also...

  13. Quality by justMichael · · Score: 4, Funny

    Write a book advocating the joys of CSS and then use a non standard cursor for the "a" tag ;)

    1. Re:Quality by nazh · · Score: 2, Informative

      yup, and they even got the wrong order of the psuedo-classes

      a:link
      a:visited
      a:active
      a:hover

      should be

      a:link
      a:visited
      a:hover
      a:active

      and they aslo use properitary css, speaking of the scrollbar "css". propitary css which is not properly marked with vendorname Vendor-specific extensions
      and to qoute w3.org: Vendor/organization specific extensions should be avoided

  14. w3schools? by cexshun · · Score: 5, Interesting

    Not to be flamebait or anything. An honest question...

    What exactly does this book have that is not available at W3schools.com?

    1. Re:w3schools? by Neil+Blender · · Score: 2, Funny

      What exactly does this book have that is not available at W3schools.com?

      A referer link?

    2. Re:w3schools? by Anonymous Coward · · Score: 0

      The book doesn't try to set a cookie in my browser?

      I just visited w3schools.com and it immediately tried to set a sessionID cookie while showing me a static webpage. Why does every fucking static webpage need to set a cookie on my browser?? I can see using cookies if I needed to login, retrieve some dynamic information, or submit something, but for a dinky little index page?? Pfft!</rant>

    3. Re:w3schools? by sd3 · · Score: 1

      I like w3schools--it's great for quick reference lookups, but particularly for CSS I found it to be rather shallow. You need to understand the nuances of some things, particularly placement and inheritance, and w3schools just doesn't do it justice. Furthermore, IIRC they don't give any clue as to which CSS definitions are apropos to which elements.

      That said, I still like w3schools and find it to be pretty useful when I need a quick refresher.

  15. CORE CSS TEAM by Anonymous Coward · · Score: 5, Interesting

    Someone for the love of god implement FLOAT MIDDLE

    I mean geesh, just give designers a bit of help with a small FLOAT MIDDLE syntax.

    1. Re:CORE CSS TEAM by telbij · · Score: 2, Interesting

      I mean geesh, just give designers a bit of help with a small FLOAT MIDDLE syntax.

      Considering the current problems IE has with rendering standard left and right floats, and the slow pace of new feature implementation, writing float: middle into the syntax would probably mean that you couldn't use it in Mozilla until about 2010, and you couldn't use it for public websites until 2020.

      Also, why do you want float: middle? Having text run around both sides of an block doesn't serve much practical design purpose (especially in a variable width/font-size environment). If you want to center something just use margin: auto;

      A much cooler feature would be alpha channel floats to make text run around more complex shapes.

    2. Re:CORE CSS TEAM by seney · · Score: 2, Informative

      Assuming this AC is talking about centering an element, this post is not "interesting".

      Yes, you can float: left; or float: right;, but it's not accomplishing just an alignment. It's taking the element out of the normal flow of a document. In order to align to the center set the margin to margin: auto;

      Zeldman's "Designing with Web Standards" is a wonderful book on CSS. I've read plenty and his was by far the best.

      http://www.zeldman.com/dwws/

  16. Next Step... by filtur · · Score: 0

    CSS Compliant webpages and the final death of Nescape 4.0

    1. Re:Next Step... by jaboonday · · Score: 1

      DIE BITCH DIE!!!!

  17. Almost by Hard_Code · · Score: 4, Informative

    Well, I went on a CSS bender and discovered that while it is great for pretty much all mundane styling problems, it still sucks when trying to layout content in table-like columns. Simple things like just getting a three column layout with various justifications, or getting divisions that occupy as little space as possible (since you can't tell it to "occupy as little space as possible" you have to rely on hacks like saying, "ok, bound yourself by margin parameters which eat up all empty space") is heinously difficult and requires bizarre hacks. I had to fall back on tables in some cases just to get a simple header including centered text with justified (left and right, respectively) flanking images.

    --

    It's 10 PM. Do you know if you're un-American?
    1. Re:Almost by Anonymous Coward · · Score: 0

      #header { text-align: center; }
      #header img { float: left; }

      enjoy

    2. Re:Almost by gooser23 · · Score: 2, Informative
      I had to fall back on tables in some cases just to get a simple header including centered text with justified (left and right, respectively) flanking images.

      you mean something like:

      <div>
      <img style="float: left" .../>
      <div style="margin: 0 auto;">hello</div>
      <img stlye="float: right" .../>
      <div style="clear: both;"/>
      </div>

      It's not good enough to use CSS, you gotta make good use of CSS, and valid (X)HTML. It also helps if your target audience uses a standards compliant browser, which in my opinion is why most of the web still uses tables for layout -- its just easier than to deal with browser quirks.

      --
      "Dying tickles!" -- Ralph Wiggum
    3. Re:Almost by t_allardyce · · Score: 1

      yeah, i think people are turned off by css because they don't realise that they are making 2 jumps: 1 from tables/etc to css and the other from bad mark-up to good mark-up. Also you can fix allot of bad browser bugs by giving an extra 'patch' css file to different browsers that contains your specific fix for that browsers issues.

      --
      This comment does not represent the views or opinions of the user.
    4. Re:Almost by gooser23 · · Score: 1
      ...you can fix allot of bad browser bugs by giving an extra 'patch' css file to different browsers that contains your specific fix for that browsers issues.

      I think if vendors treated HTML from the begining like a compiled langauge we would not need "'patch' css" files. A bug is a bug is a but IS NOT A FEATURE! For example: do C/C++ developes put up with addition of 7 numbers only really taking the inner 5? Then why does IE continue to get the box model wrong?

      This is why I think XHTML is a step in the right dirrection... FrontPage et. al. may still spit out garbage, but at least it will have to be valid and well formated to be called XHTML. Of course, having said that someone is bound to show me where it currently produces non-HTML HTML.

      --
      "Dying tickles!" -- Ralph Wiggum
    5. Re:Almost by Laebshade · · Score: 1

      CSS does mundane and complex styling, but it is not, to my understanding, meant to replace tables exclusely. You had trouble getting a three column layout to work? Apparently you didn't take a look at CSS positioning. As for the "little space as possible" problem: not sure exactly what you're wanting to do but you can use width and min-width (minimum width), in addition to the CSS positioning I mentioned.

      Want a header with centered text and left/right flanking images? Easily accomplished with several lines of structured code. I would provide an solution but I'm not sure how you're want it to be done. If you take a look at my website's CSS you can see it is very possible to use CSS to design an entire site.

    6. Re:Almost by t_allardyce · · Score: 1

      Oh if browsers all worked even close to web standards i would be so happy. Instead of ripping my hair out and crying when i read about the perfect way to do it that alas cannot be done because no browser supports it. How bloody hard can it be to get a box model right anyway? the same company (MS) that fucked that up also builds mission critical software!

      --
      This comment does not represent the views or opinions of the user.
    7. Re:Almost by seney · · Score: 1

      Well, you need to read more then. All that you state is quite easy to impliment.

      Here:
      blue robot
      glish
      a list apart
      box lessons
      css panic guide
      design rant

    8. Re:Almost by Hard_Code · · Score: 1

      I'm not sure what the "CSS positioning" spec you posted actually covers (since it looked just like an abstract), but when I was working on this, I worked off the w3c's reference:

      http://www.w3schools.com/css/css_reference.asp

      You can specify widths in percentages and pixels. That is not what I want (or if it /is/ what I want that is not what it means semantically in CSS).

      [img][<-spaces->centered text (maybe with newlines)<-spaces->][img]

      ** don't wrap if possible **

      (slashdot isn't the paragon of formatting so that may not come out right)

      The image cells should take up only as much space as necessary, and the text cell should take up all remaining space. Of course, if I specify width="100%" I may either get what I expect to be correct (following from my knowledge of tables) that the text cell takes as much as it can, but some CSS renderers want it to mean "take up 100% of visible page width", which means that the page actually scrolls to the right because it is literally taking 100% of visible space. Either something is broken, or it is just not possible. Now this was several months ago, but if you can find a generic, non-hardcoded-pixel-widths, non-hardcoded-percentage-widths (because obviously as you expand the window the percentages change) to do this simple thing without introducing image widths etc., please tell me. I spent a lot of time, trying everything I could, and everything that was suggested to me in IRC, and could not do this with CSS alone, so I just fell back and used a table.

      --

      It's 10 PM. Do you know if you're un-American?
    9. Re:Almost by Hard_Code · · Score: 1

      I am already aware of those sites, and yes, I read them. Fools. If you don't want to provide a solution yourself that is fine, but I am not going to go through all the pain again just to prove to random slashdotters that I am right.

      --

      It's 10 PM. Do you know if you're un-American?
    10. Re:Almost by seney · · Score: 1

      if you explained your problem in a more detailed manner maybe someone could help you out. otherwise from what you said it all sounds pretty simple - but i'll assume we're having a misunderstanding.

      occupy as little space as possible?
      margin: 0; padding: 0;

      as i said - i'll assume a misunderstanding.

      yours truly,

      a random foolish slashdotter

    11. Re:Almost by Hard_Code · · Score: 1

      Instead of posting little bits, actually try it yourself (from the details in my other post). I have retried with the suggestions in this thread and as expected it doesn't work (the right image div is consistently placed /below/ the text div).

      --

      It's 10 PM. Do you know if you're un-American?
    12. Re:Almost by Laebshade · · Score: 2, Interesting
      You didn't look hard enough. The same CSS positioning I mention on my website using a combination of left, right, top, and bottom, along with overflow: {scroll|hidden|auto} and position: {absolute|relative}. You can view the CSS too. If you look at my site you will notice that the width for the content expands as the page expands in size but the width of the menu does not expand horizontally only vertically (as needed). It is very possible to do what you want to do. Here's what you need to do:

      Enclose the images and text in a div tags. Assign an id to the div so it can be identified in a external CSS file. Enclose each item - image, text, image - in a div tag too with an id to identify them. The HTML should look something like this:
      <div id="header"><div id="img1">[image]</div><div id="htext">[text]</div><div id="img2">[image]</div>
      Then the CSS should look something like this:
      #header {
      position: absolute;
      left: 0;
      right: 0;
      }

      #img1 {
      position: absolute;
      left: 0;

      }

      #htext {
      position: absolute;
      left: 0;
      right: 0;

      #img2 {
      position: absolute;
      right: 0;
      }
      I haven't tested that but it should work. Of course you'll want to play around with it and modify it, but you get the idea.
  18. Another Good Review by Anonymous Coward · · Score: 0, Troll
  19. What in God's name...? by TrentL · · Score: 4, Informative

    From the book's website:

    The "CSS" in the title stands for "Cascading Style Sheets", a highly flexible way of formatting Web content. Core CSS, 2nd Edition takes a practical, pragmatic look at CSS, showing not only how you can make CSS1, CSS2 and Internet Explorer CSS extensions work for you now...

    I can't imagine a serious book on CSS talking about IE CSS extensions. People interested in this topic should get Zeldman's book, or the latest O'Reilly CSS guide by Eric Meyer.

    1. Re:What in God's name...? by arkanes · · Score: 2, Interesting

      For what it's worth, most of the IE extensions are usefull, and should be absorbed into the spec/implemented by other browsers. The ones I miss most often are overflow-x and overflow-y, but the layout options for non-Western character sets are neat too. According to MS, most (althought not all) of the extentions have been submitted to the W3C, so they should get off thier asses and add them to the spec so Mozilla devs can support them without feeling naughty.

    2. Re:What in God's name...? by Quantum+Jim · · Score: 2, Insightful
      I can't imagine a serious book on CSS talking about IE CSS extensions.

      Why not? It is important to know what extensions are aviable for the major HTML engines (Opera, Gecko, KHTML, Tasman, and Trident) for several reasons. If you're writing software specific for a particular web browser, then it becomes extremely important to know about such engines. Or when most browsers support part of the standard, and a simple hack can add the other one to the list. Or when you're writing software to add some CSS support to IE (like Dean Edwards does in IE7). When is a little more knowledge ever a bad thing?

      --
      It is impossible to enjoy idling thoroughly unless one has plenty of work to do.
      - Jerome Klapka Jerome
    3. Re:What in God's name...? by JimDabell · · Score: 2, Insightful

      According to MS, most (althought not all) of the extentions have been submitted to the W3C, so they should get off thier asses and add them to the spec so Mozilla devs can support them without feeling naughty.

      Perhaps the people at Microsoft should have gotten off their asses and finished implementing the six year old CSS 2 specification that they co-authored before coming up with proprietary add-ons. As it is, there are huge chunks of CSS 2 support missing or botched in Internet Explorer.

  20. Standard CSS or code for IE6? by dpilot · · Score: 4, Insightful

    But in the real world, how many people really try to code decent, standard-following web pages, and how many just code for IE6. Even if the job can be done the right way isn't it easier to be lazy and neglect everyone but IE?

    Are Gecko and Opera having a practical impact, yet?
    How about handheld devices?

    --
    The living have better things to do than to continue hating the dead.
    1. Re:Standard CSS or code for IE6? by gnu-generation-one · · Score: 1

      "But in the real world, how many people really try to code decent, standard-following web pages, and how many just code for IE6."

      Well, assuming that most professional webdesigners use Macs, probably none of them...

    2. Re:Standard CSS or code for IE6? by Rie+Beam · · Score: 1

      I still know people who use the marquee tag. If you expect change as drastic as such to happen overnight, you're sorely mistaken.

    3. Re:Standard CSS or code for IE6? by Anonymous Coward · · Score: 0

      Well, assuming that most professional webdesigners use Macs, probably none of them...

      That's a pretty stupid assumption to make. What on earth leads you to believe that most professional web designers use Macs?

    4. Re:Standard CSS or code for IE6? by Laebshade · · Score: 1

      how many people really try to code decent, standard-following web pages, and how many just code for IE6. Bzzt. Oh I'm sorry, you failed to put that in the form of a question. All joking aside, I code standard-following web sites. Not that I count much in a world full of billions of people, but you might be interested in knowing that the developers of WordPress, a very popular piece of blogging software (at least in the blogging communities), conforms to XHTML1.1 Transitional and CSS 2 validity.

    5. Re:Standard CSS or code for IE6? by Anonymous Coward · · Score: 0

      Firstly, there's no such thing as XHTML 1.1 Transitional. There's only one type of XHTML 1.1.

      Secondly, you may praise them for following standards, but they are breaking standards by serving XHTML 1.1 as text/html and they are risking things utterly breaking by negotiating based upon the Accept header without reflecting that fact in their Vary header.

  21. CSS is crap for layout by pubjames · · Score: 2, Insightful


    CSS is still often not a practical solution when creating a web site. Unfortunately there are many things that are just too difficult to do with CSS - and I mean relatively simple layout issues.

    CSS fanboys love to mock web sites that "still" use tables for their layouts. However, when you try to practically design a layout just using CSS and without tables, it proves pratically impossible. Even hardcore CSSers get all excited when they do simple things like layout pages in columns.

    Try and find a big commercial web site that doesn't use tables for their layout. You won't find one. Is it because the web designers that work for these big multinationals are dumbasses, as some proponents of CSS will tell you? No. It's because CSS is crap for layout. I wish it wasn't but it is.

    1. Re:CSS is crap for layout by pubjames · · Score: 2, Informative

      CSS is still often not a practical solution when creating a web site.

      Just to be clear - I'm talking about layout. CSS is great for font colour/styles etc.

    2. Re:CSS is crap for layout by pcp_ip · · Score: 0, Offtopic

      Ahem, brother.

    3. Re:CSS is crap for layout by cexshun · · Score: 1

      Nothing wrong with using style tables while still formatting text with CSS. Last I checked, was still standards compliant as of xhtml2.0 and html4.x.


      <p>I don't think CSS is geard to replace html, but to keep it standard. As browsers evolve and the needs of designers change, the languages we use must evolve with technology.</p>
    4. Re:CSS is crap for layout by jiggity · · Score: 1

      ESPN.com is a big commercial site that comes to mind. They do not use any tables for layout.

      --
      - jiggity
    5. Re:CSS is crap for layout by Caleb+Rutan · · Score: 5, Informative

      Okay. Here's a couple:
      AOL.com - go ahead and laugh, but their site is classy and the layout is table-free.
      Sprint.com - ditto. They use tables, for tabular data, like their stock quote info, but that's what tables are *for*.

      Commercial sites, especially big ones, are deep and take a lot of work to redesign and recode. Most of those probably aren't being torn down and rebuilt with CSS because there isn't an enormous return in doing it yet. This doesn't mean it cannot be done, nor does it mean that if you're starting a new site, or re-doing an existing one, that CSS can't do the job.

      In fact, I'll bet it can. See the Zen Garden for a hundred or so examples of what can be done with only CSS.

      --
      -- caleb
    6. Re:CSS is crap for layout by t_allardyce · · Score: 2, Informative

      Not true, a div can be positioned anywhere with pixel, percentage or em/ex accuracy. It can overlap others, and basically do anything a table can do but better. The only reason you hear people spending hours on basic formatting is because they want to do it absolutely correctly, collapse well (which tables don't) and want it to work in all browsers (which would be made easier if browsers bloody well worked properly). If you don't care about W3C correctness, then a div can be positioned anywhere and anyhow, i cant see how your logic works: a div can be positioned anywhere like a table cell, but with the added advantage of being able to specify exact co-ordinates, its as simple as that, it can make use of all the same hacks and dirty work-arounds that tables can use if they want.

      --
      This comment does not represent the views or opinions of the user.
    7. Re:CSS is crap for layout by quantaq · · Score: 1

      I'm still new to CSS, so maybe I missed something, but what are you talking about!? CSS in no way replaces tables (that I have seen so far). In fact, I use CSS to format the tables I use on my site now. I just don't understand what you're saying; please explain.

    8. Re:CSS is crap for layout by wurp · · Score: 1

      A lot of people use floating divs to divide visual page space up where we used to use tables as a hack to do so. So when you wanted a page with a blurb of text that spans the top, and below it three columns of text that fill the rest of the page, the solution used to be either one table with a span or one table nested in another. Now the solution is four divs with the right flow set up.

      I agree with the grandparent, though. It doesn't always work very easily when you have e.g. several rows of data that you want columnated. I don't know of any way to make a grid of data with multiple rows & multiple columns using div & css.

    9. Re:CSS is crap for layout by warriorpostman · · Score: 1
      Umm, I just did view source on ESPN, and found several instances of
      <table>
      elements.

      I have to agree with some of the other posters. CSS is nice for regulating element attributes like font, color, etc, but when it comes to layout, (I could be wrong, I'm still learning) a lot of the proselytizing for CSS leaves something to be desired. If div and span can be used to remove most tables, I have yet to find this magical method.
    10. Re:CSS is crap for layout by medeii · · Score: 5, Informative

      Yup. Wired certainly isn't a "big commercial website." Neither is ESPN, apparently. Or AOL, Inc.com, the PGA Open Championship, Sprint PCS, Phish.com, Quark.com, the U.S. Mercedes-Benz site ... the list goes on. Did you even think to Google for any of the myriad discussions about all of these sites switching to a better layout -- or did you just feel like pulling generalizations like "You won't find one." out of your ass?

      There are very, very few things that HTML can do, that CSS cannot -- and what's more, it's simple to design a site that works around those limitations. For every incompatibility or limitation CSS has that causes an extra five minutes of design headache, it saves fifty minutes through its simplicity.

      But, who am I to tell you that? Why don't you discover it for yourself? Start here.

      --
      got standards? --- http://www.w3.org/
    11. Re:CSS is crap for layout by Yosho · · Score: 2, Informative

      Neither Mozilla nor Opera's homepages use tables, but they do use CSS.

      --
      Karma: Terrifying (mostly affected by atrocities you've committed)
    12. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      Hello clueless idiot.

      "I don't think CSS is geard to replace html"

      CSS will NEVER replace HTML. Wanna know why? Because they're two COMPLETELY DIFFERENT THINGS!

      Idiot!

    13. Re:CSS is crap for layout by senbei · · Score: 1
      Here are some (almost) standard compliant hybrid layout mainstream sites:

      Wired News

      PGA.com

      ESPN.com

      A quick browsing of Web Standards Awards should also show you that it's possible to have nice looking and comptatible CSS designs.

    14. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      Take a closer look. They aren't using tables for layout.

      They're using a crapload of ugly javascript code though..

    15. Re:CSS is crap for layout by bonkedproducer · · Score: 1

      ESPN - not big enough or commercial enough for you?

      --
      Clothes make the man. Naked people have little or no influence in society - M. Twain
    16. Re:CSS is crap for layout by jiggity · · Score: 1

      There are table elements on the page, but to be fair they are not being used to layout the whole page. One is used for an ad box and the other is for the myESPN section. Why tables are being used here, I don't know, because the tables aren't even functioning as a layout really. You could take them out altogether and the page would look virtually the same.

      --
      - jiggity
    17. Re:CSS is crap for layout by colinramsay · · Score: 4, Insightful

      Sorry, but you're stuck in the past. Think outside the box (model) and cast off your ideas of table based layouts. It's amazing how the web has become so inflexible in terms of design in such a short time.

      There are loads of good examples of CSS layouts that would have required huge nested tables to reproduce.

      I put it to you that table-based designs are holding back the imaginations of web-designers. The web-programmers are probably going to realise that soon. The reason why corporate sites are yet to realise that (but they are realising it - slowly but surely) is because - and this may be a shock - the majority of web people, like programmers, and many other professions simply do what they know; the easy stuff. The good ones learn new tricks and make the best end-products.

    18. Re:CSS is crap for layout by bonkedproducer · · Score: 1

      The elements in tables are items that should be tabular - not HTML hacks for layout - and some third party advertisements that are probably inserted from elsewhere. Sorry, there is two uses of on the front page - and both are related to an ad box on said page. So, you sir are incorrect.

      --
      Clothes make the man. Naked people have little or no influence in society - M. Twain
    19. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      There's also a rumor that Apple.com is switching over to 100% compliant CSS/XHTML and is employing Zeldman and Doug Bowman to do it.

    20. Re:CSS is crap for layout by Rie+Beam · · Score: 1

      I've been using CSS for several years now, and I'll be honest - I never wanted to see a table again after I started learning. But I eventually came back every now and then. Was it because CSS wasn't up for the job? No. It was because I didn't know how to do the job in CSS. I admit CSS has some flaws here and there, but many times tables are just as bad, if not worse. I mean, a lot of the time, the problem isn't that CSS cannot do it; it's that people aren't willing to try new methods, "hack around" with the visuals, if you will. Also, a quick inquery - what exactly is "easier" to do with tables than CSS?

    21. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      The one thing that I find really difficult in css, with heavy nesting, is side by side columns that are the size of the longest one, with specifying which one that will be beforehand.

      In a table layout, this is one line of code. In css it seems to involve nested floats. And, yes, I've built such things --> www.llamastar.com

    22. Re:CSS is crap for layout by rograndom · · Score: 1

      Here's two

      ESPN.com
      Wired.com

    23. Re:CSS is crap for layout by Anonymous Coward · · Score: 1

      I see a lot of example sites that *emulate* table-style layouts using Abosolute Positioned DIVs, desktop-publishing style. This seems like a hack and and a pain-in-the-ass. Its also not really seperating content & layout because the layout is hardcoded to the content.

      One nice thing about tables is that they very nicely auto-adjust to dynamic content. I have yet to see any 100% CSS layout that handles this nicely. Unfortunately, CSS is not a replacement for tables because it does not implement 100% of the functionality of tables.

    24. Re:CSS is crap for layout by aWalrus · · Score: 1

      Try and find a big commercial web site that doesn't use tables for their layout. You won't find one.

      ESPN

      The ESPN site has two tables, which I'm fairly certain were placed there after the redesign, most probably by programmers and publicists. They're not part of the core layout.

      There's a whole new movement out there. It's a big community, and more people are getting into it every day. Sweeping, cocksure generalizations like yours are usually wrong, because of the fact that they're sweeping and cocksure generalizations.

      CSS is not a magic bullet but it's also not the nightmarish unsupported w3c bastard child that many people on this thread are making it out to be. Frankly, I think most people are just a bit lazy and don't want to spend the time learning to use it properly.

      --
      Overcaffeinated. Angry geeks.
    25. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      Bullshit. Stuff like is layout.

    26. Re:CSS is crap for layout by pubjames · · Score: 1

      Also, a quick inquery - what exactly is "easier" to do with tables than CSS?

      Let's say you have a two column layout, and the left-hand column contains different (and variable) paragraphs of text and the right hand column contains images, but you want the images to line up with the start of certain paragraphs. It's a fairly common thing to want to do.

      Or say, you've got to columns of varying length, and you want to draw a line across the page below the longest column, whichever that is.

    27. Re:CSS is crap for layout by mnemonic_ · · Score: 1

      Same with Wired (except for a few places where tables are used canonically, to show data in a grid-like format).

    28. Re:CSS is crap for layout by pubjames · · Score: 1

      I put it to you that table-based designs are holding back the imaginations of web-designers.

      How, exactly? None of those links show anything that couldn't be done with a table. And I expect some of them would be a lot quicker to do in a table.

      I've nothing against CSS. In fact I like it. What I don't like is people that insist that because a site uses tables for its layout, it is somehow inferior. Tables are fine for many types of layout, and there is nothing "wrong" with using tables.

    29. Re:CSS is crap for layout by Anonymous Coward · · Score: 0
      In the future, d00d, you'll piss off fewer people if you were to get more detail than CSS BAD, TABLES GOOD.

      For example, linking to layout types, and whether they can be done in CSS and most browsers (Mozilla/Konq-Safari/Opera/IE4+).

      Usually I use CSS to layout the main columns in the page and then flow the rest (yes, using tables if necessary)

    30. Re:CSS is crap for layout by Anonymous Coward · · Score: 0
      CSS replaces tables for layout, but doesn't replace tables for tabular data.

      PRO TIP #2: HTML 3.2 said that tables can be used for layout purposes. HTML 4.0 was less friendly to tables for layout, but emphasised that they're for arranging things and didn't yet say that tables for layout was bad.

    31. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      the majority of web people, like programmers, and many other professions simply do what they know; the easy stuff.

      Therein lies the problem. HTML tables are usable*, i.e. they're easy to learn and are mostly intuitive. There are 3 tags and a handful of attributes that do the job, throw in some spacer images and you're done in no time. It may not be the most elegant solution, but it's a very usable solution.

      CSS is quite elegant and useful*, but it's not very usable. To do layouts, you need to learn and use a variety of properties with non-intuitive names and behavior. Add to that a ton of "examples" that over-complicate things or that use the wrong units and it becomes hard for someone new to figure out how to use the thing. And one would hope that CSS being quite modern, and being a layout/styling language but not a programming language, it would be super-easy to learn and use.

      So people look at it, can't figure out how to use it within a half hour (and they should rightly be able to), and give up and go back to tables.

      *I'm using usable as in "intuitive and easy to learn" and useful as in "can be used with a lot of different browsers" and I regard accessibility as mostly part of usefulness and not usability.

    32. Re:CSS is crap for layout by LordLucless · · Score: 1

      I agree wholeheartedly.

      CSS for style is wonderful. CSS for layout just ain't there. I mean, there's not even a standard way to position an element in the centre of the screen. I was trying to do just that, and I found a website outlining three different methods of centring elements, all with different levels of compatibility with various browsers.

      When I write a GUI in Java, the most often-used layouts are the grid-based ones. Tables are almost the same thing for the web. If you want to do layout, I think there should be a way to define a grid for your page, which can then be referencd by your CSS to place elements.

      Then you can have row spans, and column spans, and expand to fill cell, and it wouldn't be such a huge jump from a table-based design. Absolute positioning is good for floating elements, but lousy for almost everything else.

      --
      Just because you're paranoid doesn't mean there isn't an invisible demon about to eat your face
    33. Re:CSS is crap for layout by colinramsay · · Score: 1

      I personally don't feel that tables are that intuitive when you start using colspan and rowspan. The sheer complexity of the nested structure makes the markup confusing.

    34. Re:CSS is crap for layout by Hatta · · Score: 1

      CSS based layouts degrade a lot more gracefully for use on limited resource devices. Lynx, screen readers for the blind, etc. Specifically, document structure is kept distinct from presentation.

      --
      Give me Classic Slashdot or give me death!
    35. Re:CSS is crap for layout by colinramsay · · Score: 2, Insightful

      But that's the problem - there *is* something wrong with using tables. It's a bastardisation of the entire concept of the semantic web, you're using a data container for something it wasn't designed for.

      Those sites I showed you are examples of well marked up sites - their HTML is clean and fast (mostly:). Yeah, you could do them in a table stylee, but they would all be heavier, harder to maintain and sematically poor. Those negative points are important to me - important enough that I would be prepare to aquire the skill necessary to create a CSS layout which bypasses them.

      Talking about CSS as a poor layout device is becoming increasingly lazy - there are some very clever people out there replicating the old ways of doing things, if that floats your boat.

    36. Re:CSS is crap for layout by dustmite · · Score: 1

      I did 'view source' on both those sites, and BOTH of them still use tables. So what's your point exactly?

    37. Re:CSS is crap for layout by xeaxes · · Score: 1
      It doesn't always work very easily when you have e.g. several rows of data that you want columnated. I don't know of any way to make a grid of data with multiple rows & multiple columns using div & css.

      But, this is okay with tables! That's the point of having tables: for tabular data. The idea is to use tables only for data, and not for layout.

      And, CSS is easy enough for layout. It just takes some practice, but I've seen many multiple column sites work just fine using XHTML and CSS.

      --

      "BEHOLD, CORN!!" - Dr. Weird, ATHF

    38. Re:CSS is crap for layout by CrowScape · · Score: 1

      Well, they would if IE would impliment "display:" beyond "inline," "block" and "none" as we could display divs as tables

      • display:table
      • display:inline-table
      • display:table-row-group
      • display:table-header-group
      • display:table-footer-group
      • display:table-row
      • display:table-column-group
      • display:table-column
      • display:table-cell
      • display:table-caption

      Once displayed as a table you get 100% of the functionality of a table. With this working multi-column layouts would be a breeze in CSS. Damn you IE!

      --
      common sense: noun
      What those who are ignorant of the subject matter think; usually wrong.
    39. Re:CSS is crap for layout by skidv · · Score: 1

      For both Opera and Wired ... bad examples of CSS. I'm completely underwhelmed with the layout and design of both sites.

    40. Re:CSS is crap for layout by Sahib! · · Score: 1
      Note: I make no claims as to the cross-browser compatibility of the following code. I tested it in Safari.

      Let's say you have a two column layout, and the left-hand column contains different (and variable) paragraphs of text and the right hand column contains images, but you want the images to line up with the start of certain paragraphs. It's a fairly common thing to want to do.

      Well, I'm not sure if this is exactly what you had in mind, but it should be pretty close:

      <style>
      .clear
      {
      clear: both;
      }
      p
      {
      width: 60%;
      }
      p.figure
      {
      width: auto;
      float: right;
      clear: right;
      margin: 0 10px 10px 10px;
      border: 1px solid;
      }
      </style>

      <p class="figure">
      <img src="images/foo.jpg" width="180" height="180" />
      </p>
      <p>
      Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent lobortis, massa a lobortis adipiscing, ligula arcu mattis sapien, vel rutrum tortor quam tempus nisl. Suspendisse erat nulla, molestie ac, cursus at, tempor sed, dolor. Proin tristique, wisi vitae adipiscing vulputate, felis turpis lobortis ligula, non vehicula nunc mauris sed lectus. Nunc a massa ac tellus ultricies bibendum. Phasellus lacinia pellentesque est.
      </p>
      <div class="clear"></div>

      <p class="figure">
      <img src="images/foo.jpg" width="180" height="180" />
      </p>
      <p>
      Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent lobortis, massa a lobortis adipiscing, ligula arcu mattis sapien, vel rutrum tortor quam tempus nisl. Suspendisse erat nulla, molestie ac, cursus at, tempor sed, dolor. Proin tristique, wisi vitae adipiscing vulputate, felis turpis lobortis ligula, non vehicula nunc mauris sed lectus. Nunc a massa ac tellus ultricies bibendum. Phasellus lacinia pellentesque est.
      </p>
      <div class="clear"></div>

      <p>
      Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent lobortis, massa a lobortis adipiscing, ligula arcu mattis sapien, vel rutrum tortor quam tempus nisl. Suspendisse erat nulla, molestie ac, cursus at, tempor sed, dolor. Proin tristique, wisi vitae adipiscing vulputate, felis turpis lobortis ligula, non vehicula nunc mauris sed lectus. Nunc a massa ac tellus ultricies bibendum. Phasellus lacinia pellentesque est.
      </p>
      <div class="clear"></div>

      <p class="figure">
      <img src="images/foo.jpg" width="180" height="180" />
      </p>
      <p>
      Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent lobortis, massa a lobortis adipiscing, ligula arcu mattis sapien, vel rutrum tortor quam tempus nisl. Suspendisse erat nulla, molestie ac, cursus at, tempor sed, dolor. Proin tristique, wisi vitae adipiscing vulputate, felis turpis lobortis ligula, non vehicula nunc mauris sed lectus. Nunc a massa ac tellus ultricies bibendum. Phasellus lacinia pellentesque est.
      </p>
      <div class="clear"></div>

      * * *

      Or say, you've got to columns of varying length, and you want to draw a line across the page below the longest column, whichever that is.

      Here's one way of doing it:

      <style>
      .clear
      {
      clear: both;
      }
      .column
      {
      float: left;
      width: 40%;
      margin: 10px;
      }
      #after-columns
      {
      border-top: 1px solid;
      }
      </style>

      <div class="column">
      <p>
      Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent lobortis, massa a lobortis adipiscing, ligula arcu mattis sapien, vel rutrum tortor quam tempus nisl. Suspendisse erat nulla, molestie ac, cursus at, tempor sed, dolor. Proin tristique, wisi vitae adipiscing vulputate, felis turpis lobortis ligula, non vehicula nunc mauris sed lectus. Nunc a massa ac tellus ultricies bibendum. Phasellus lac

      --

      I prayed about it, and God said, "Don't do it!" But I thought, "I know better."

    41. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      I mean, there's not even a standard way to position an element in the centre of the screen.

      There isn't a standard way of doing that with HTML either, so what's your point?

      PS: I don't think you meant "screen", but my statement holds true for "browser window", "page", and "viewport" as well. Please clarify which you were referring to if you reply.

    42. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      CSS is a half-assed comprimise between attempting to be media-independent and controlling the precise display of the content.

      Ex: wrap text from the bottom of one column to the top of the next. Simple for Quark XPress.. just about impossible with CSS.

      And don't get me started about fonts. There is nothing wrong with specifying a font *point* size. A 12-point font should be 1/6th of an inch tall, regardless of monitor size. Why it is impossible for most rendering systems to actually display 12-point fonts as 1/6th of an inch tall is beyond me.

    43. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      If you want to do layout, I think there should be a way to define a grid for your page

      You mean display: table? CSS already does that.

      Absolute positioning is good for floating elements

      I think you are a bit confused. Absolute positioning and floats are two separate concepts that don't relate to each other at all.

    44. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      HTML 4.0 was less friendly to tables for layout, but emphasised that they're for arranging things and didn't yet say that tables for layout was bad.

      That's a lie. HTML 4.0 says "Tables should not be used purely as a means to layout document content".

    45. Re:CSS is crap for layout by rograndom · · Score: 1

      I did 'view source' on both those sites, and BOTH of them still use tables. So what's your point exactly?

      What's your point? The parent asked for one big commercial site that didn't use tables for layout. Neither of those sites do. Tables are still valid for tabular data. And the tables used on those two sites are from the blocks used by the advertisers and have nothing to do with the layout of the sites, which is all CSS.

    46. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      > CSS in no way replaces tables

      The CSS-zealots at W3C think so. They even state that in their hateful anti-HTML diatribe called HTML 4.0. It's scary that they're writing the standards for HTML and think so little of it. They want to ruin compatibility between browsers. The entire point of the web is accessibility. When you get rid of tables, like espn.com does, you break compatibility with the majority of browsers. The CSS-zealots don't understand that the web is about accessibility. alistapart.com was the first place I saw spouting this nonsense of *never* using tables. They even recommend using ECMA-script on web pages. Talk about throwing-out accessibility!

    47. Re:CSS is crap for layout by Rie+Beam · · Score: 1

      Okay, I do admit that the first is a bit of a challenge, and I'm a bit stumped. I can make the image a part of the layer itself, so it moves, but to have the layers in different parts of the page, but moving in a fixed method; a challenge, indeed. To go about this, first start at the same position from the top, and move down according to the paragraphs length. Somehow, we have to acquire the length of each paragraph, or else make each image layer dependant on the others in the layer - tables have the advantage here, since, well, that's their purpose. Dependant-layout content. Now, if I could "cheat" a bit, I could use javascript to format them according to the paragraph height. But that's not the purpose of this example, and not to mention that would be extremly time-consuming, and to be honest, I'm not sure if it would be possible. It took me awhile, I'll be honest. But there is a way. Have the two columns actually one large column, and use relative positioning to push the images. Let me explain. You have the content setup as such: "b" is blank, "p" is a paragraph of undetermined length, and "i" is an image. [i ] [ p ] Now, the paragraph layer's position is solely dependant on the image layer's position. Of course this isn't exactly what we wanted, but it can be. We "push" the image down a bit via the "relative" attribute, so that the image now rests next to the paragraph. In theory, anyway. example More problems could include variable image size, but that's another problem, another day (in other words - it's really not that hard to tweak the above example to do that). The line example could be done no-sweat if the columns weren't absolute - page flow does the work for you. Just make a new layer past the column layers, and put the line there. If the columns were absolute, however, I do admit I am stumped. However, table cells normally don't shift out of positon "absolutely", anyway, so that would be a problem neither could solve.

    48. Re:CSS is crap for layout by Rie+Beam · · Score: 1

      (dur, fixed formatting. Yes, skip the irony. Please.)

      Okay, I do admit that the first is a bit of a challenge, and I'm a bit stumped. I can make the image a part of the layer itself, so it moves, but to have the layers in different parts of the page, but moving in a fixed method; a challenge, indeed.

      To go about this, first start at the same position from the top, and move down according to the paragraphs length. Somehow, we have to acquire the length of each paragraph, or else make each image layer dependant on the others in the layer - tables have the advantage here, since, well, that's their purpose. Dependant-layout content.

      Now, if I could "cheat" a bit, I could use javascript to format them according to the paragraph height. But that's not the purpose of this example, and not to mention that would be extremly time-consuming, and to be honest, I'm not sure if it would be possible (I'm probably wrong, but let's just skip it.)

      It took me awhile, I'll be honest. But there is a way. Have the two columns actually one large column, and use relative positioning to push the images. Let me explain. You have the content setup as such: "b" is blank, "p" is a paragraph of undetermined length, and "i" is an image.

      [i ]
      [ p ]

      Now, the paragraph layer's position is solely dependant on the image layer's position. Of course this isn't exactly what we wanted, but it can be. We "push" the image down a bit via the "relative" attribute, so that the image now rests next to the paragraph. In theory, anyway.

      example

      More problems could include variable image size, but that's another problem, another day (in other words - it's really not that hard to tweak the above example to do that). The line example could be done no-sweat if the columns weren't absolute - page flow does the work for you. Just make a new layer past the column layers, and put the line there. If the columns were absolute, however, I do admit I am stumped. However, table cells normally don't shift out of positon "absolutely", anyway, so that would be a problem neither could solve.

    49. Re:CSS is crap for layout by boomgopher · · Score: 1

      True, but all but one of those examples looks like shit with large fonts.

      Table layouts do not experience problems with text overflowing the borders, it will resize correctly.
      CSS sure the hell would be easier to use if they made the overflowing crap easier to avoid, and behaved as tables do in that regard.

      --
      Your hybrid is not saving the environment. Its purpose is to make you feel good about buying something.
    50. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      So what's the real difference between using TABLE/TR/TD tags and DIVS with "table" CSS properties? So you can brag to your buddies that you didn't use tables? Another eggheaded W3C idea, if you ask me.

    51. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      But they are intuitive. if you're new to HTML, you can make a pretty good guess at what effect colspan and rowspan have and you'll be right 99% of the time (it makes a cell span several columns or rows, duh). But if you see "margin: auto" in CSS, you'll be hard-pressed to come up with an educated guess about its effect, it's assigned automatically, I guess, but what rules are used, will it be left-justified, centered, what?

      What you're mentioning is not a usability problem stemming from non-intuitiveness, it's from implementing a complex layout using non-wysiwyg tools. You'll run into the same problem with CSS when you'll end up with divs nested 24 levels deep.

    52. Re:CSS is crap for layout by colinramsay · · Score: 1

      If you have DIVs nested 24 levels deep then you shouldn't be designing web pages.

    53. Re:CSS is crap for layout by colinramsay · · Score: 1

      I don't disagree with that. I believe there was a fairly recent article on either mezzoblue or a list apart dealing with flexible layouts and varying font sizes. This is pretty much a designer knowledge issue though, as with many things in CSS, the facility is there, it's just a bastard to work out how to use it.

    54. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      So the only thing you can comment about is a petty complaint about my exageration on the number of divs? It must mean you agree with the rest of my arguments. :-D

    55. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      The "semantic web" is a profound failure, at least with HTML. Give it up already.

    56. Re:CSS is crap for layout by Zoop · · Score: 1

      Uh, ESPN doesn't use tables for layout?

      To quote from their home page:

      <table width="230" border="0" cellspacing="0" cellpadding="0">
      <tr>

      <td><table width="230" border="0" cellspacing="0" cellpadding="0">

      And how come there are almost no header or paragraph tags? A non-CSS user agent would be cast adrift in a sea of non-semantic tags, all of equal importance. I shudder to think of a disabled user trying to navigate through it.

      I don't know who you are to tell us this, but as one who has spent a couple of years doing CSS layouts and has not a single table on my personal home page, I can tell you that CSS positioning has some pretty severe limitations, generally in terms of cost of implementation. I find your five-to-fifty ratio reversed when I actually measured it.

      Or do you like pulling generalizations like "an extra five minutes of design headache" out of your ass?

      But who am I to tell you that? Why don't you try competing with offshore HTML coders and see for yourself how many minutes there are and how much they save or don't save you?

      The truth is that given the state of IE, cross-browser semantic XHTML and CSS is damned hard, and frequently requires compromises like ESPN's above (though honestly I don't nest identical-width tables anymore, and I move the widths to CSS). It's no shame to use tools like CSS where appropriate, and use something else when it's more appropriate--especially when time and money are not infinite.

    57. Re:CSS is crap for layout by oneishy · · Score: 1

      I used to agree. Tables were the only way to go for positioning. There is however one site which gave so many impressive examples of using ONLY css for positioning (even different positioning using the same html page) I was blown away. Perhaps you might find something new digging through the css that you didn't know before.... I sure did

      On the site, check out the links on the right, they switch stylesheet but not the html page

      http://www.csszengarden.com/

    58. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      so that if you want to change the layout of a group of similar "tables", you change it once in the css instead of changing each table's html... further, many things look sortof like a table right now but css allows the format to be changed, whereas the table element is for something along the lines of a spreadsheet, or output from a database

    59. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      There is nothing wrong with specifying a font *point* size.

      Sure there is. You have no way of knowing if a particular size is suitable for the user (eyesight, big screen vs small screen, etc). A 28" monitor that's quite far away will not want the same pt size as a 10" monitor that is close to you.

      Why it is impossible for most rendering systems to actually display 12-point fonts as 1/6th of an inch tall is beyond me.

      The rendering engines can't usually get accurate information about the monitor from the OS (at least, that's the problem with Microsoft Windows, and it's a commonly misconfigured setting in the X Window System as well).

    60. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      I find your five-to-fifty ratio reversed when I actually measured it.

      Then I would guess you've only worked on small sites, or sites where the HTML is rarely touched. Yes, CSS can often be more time-consuming when developing the initial design, but once you are writing the content, it shaves a lot of time of each individual page's creation. Once you go beyond a few pages, it's much quicker to use CSS.

    61. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      So what's the real difference between using TABLE/TR/TD tags and DIVS with "table" CSS properties?

      So that user-agents are free to treat table elements as tables and div elements as divisions.

    62. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      They even state that in their hateful anti-HTML diatribe called HTML 4.0.

      Let me get this straight: you are calling the HTML specification "anti-HTML"?

      -1, Troll

    63. Re:CSS is crap for layout by Anonymous Coward · · Score: 0

      In a table layout, this is one line of code.

      That depends on where you put the linebreaks. You can make any layout a one-liner in HTML and CSS.

      In css it seems to involve nested floats.

      No, in CSS, it's simply a case of using display: table-cell. Unfortunately, Microsoft never bothered implementing this part of CSS, so if you need to get that layout in IE, then yes, you need to come up with workarounds.

    64. Re:CSS is crap for layout by Zoop · · Score: 1

      I work with 1000+ page CMS-based sites, with input being drawn from HTML widgets, hand-coding, and lots and lots of cut and paste from frigging Word, as well as the standards-compliant templates that I create.

      If you have a complex site, just changing the CSS can have unforeseen consequences (particularly with inheritance). If you have atomic HTML, it's much more predictable because the scope of each change is better known. Since I'm working from templates, one such change can be replicated several hundred times with just one edit.

      Same result, far less time than CSS.

  22. Hybrid Layout by TrentL · · Score: 5, Informative

    The more sensible CSS zealots seem to accept the "hybrid layout" concept. It's OK to use a table here and there if CSS browser bugs are causing too many problems. But the days of tables nested 10 levels deep and spacer gifs and crap like that are gone.

    1. Re:Hybrid Layout by happyfrogcow · · Score: 2, Funny

      The more sensible CSS zealots seem...

      Sorry to pick a nit, but since when are zealots sensible? Try,

      "The more sensible CSS proponents seem..."

    2. Re:Hybrid Layout by picklepuss · · Score: 1

      I'll agree with the Hybrid idea, but I think a lot of people are side-stepping the obvious. The original zealot, anti-table folks rallied around the fact that using a table was a hack to get the display to layout correctly.

      Now all you hear is "ooh tables are bad, all tables are bad"

      All tables are not bad

      Put simply, there are times when information is best presented in a tabular format. For example, if you had a list of Cross Browser CSS Compatibility, you'd want to have a multi-column table where you have the different browsers running across the top and the different CSS options down the left column

      No, tables in and of themselves are not evil. The thing that absolutely drives me mad is when someone nests one table inside another with cellpadding="1" so they get a border. That drives me nuts

    3. Re:Hybrid Layout by 0d · · Score: 1
      But the days of tables nested 10 levels deep and spacer gifs and crap like that are gone.

      Except of course on slashdot. And I view it in light mode! Mmm, tables.

      --
      It turns out it's man
    4. Re:Hybrid Layout by Just+Some+Guy · · Score: 2, Informative
      Now all you hear is "ooh tables are bad, all tables are bad"

      All tables are not bad

      First, I agree with your main point. I use a lot of tables on my website to display, well, tabular data. However, I haven't heard anyone say that using tables are bad. The usual assertion is that using tables for layout is bad. There's a subtle but important difference.

      --
      Dewey, what part of this looks like authorities should be involved?
    5. Re:Hybrid Layout by bufordt13 · · Score: 1

      of course someone has made a css version of slashdot. and i view it in dark mode! mmm, standards.

      they even have a second skin for it

  23. Yes by NetNinja · · Score: 0, Offtopic

    But can it handle the onslaught of Slashdot readers?

  24. Gradients by thpdg · · Score: 3, Interesting

    Has anyone else noticed the sudden rise of gradients and high-color icons and logos? They have begun appearing in huge numbers in webpages, software, and in new OSs. I installed Fedora Core the other day and was amazed by the beauty of it, but I wonder what the load is on the PC.
    I remember reading this whitepaper in 2001 about how to do this, and why, and I wonder if it is powering the entire phenomenon.
    With websites, correct layouts are even more critical to the look, and it looks like the techniques in this book would really assist with that.

    --

    -Patrick

    "They never stop thinking about new ways to harm our country and our people, and neither do we."

    1. Re:Gradients by Anonymous Coward · · Score: 0

      http://www.designdetector.com/tips/csspencils.php
      ~Gildas

    2. Re:Gradients by bonkedproducer · · Score: 1

      ASCII art to the extreme (Not truley but - WOW!)

      --
      Clothes make the man. Naked people have little or no influence in society - M. Twain
  25. Read the Recommendation by Milo+Fungus · · Score: 4, Interesting

    I may be a bit strange in this, but I learned most of the CSS I know by reading theW3C Recommendation. I started reading W3C recommendations when I wanted to learn how to code SVG. Tutorials and examples were relatively rare on the web, so I just found the specification and went from there. I find W3C recommendations to be very readable, and I've since read the recommendations for CSS and every HTML since 4.0. My web design has changed dramatically (and my dislike for IE has deepened).

    Has anyone else learned a web technology strictly from the specs?

    1. Re:Read the Recommendation by Neon+Spiral+Injector · · Score: 2, Interesting

      I learned XHTML from the DTDs. I thought I knew HTML, but was having trouble consistantly writing valid XHTML. Like does a "form" go inside a "p", or the other way around? After printing out the DTDs and keeping them in front of me for the next couple of sites I designed I learned a lot.

      And of course I learned CSS from the rec. also. I was reading over the SVG specs a couple weeks ago. But after coding up a few samples and seeing the state of SVG support (period, I don't care about which browser you use), I have put it on the back burner for now.

    2. Re:Read the Recommendation by Nspace13 · · Score: 1

      Zvon is the greatest resource for CSS and XHTML. These two links are all I ever need.

      CSS click "Properties - all"
      XHTML lets you know which tags can be parents or children of each other and which attributes are valid in the Strict, Transitional, or Frameset DTDs.

      --
      steal this sig
  26. Cool CSS version 3 features coming up by PurifyYourMind · · Score: 3, Informative

    The CSS3 Color Module includes an alpha value which can apply to all elements! I wonder how long it'll take browsers to implement it, though.

    1. Re:Cool CSS version 3 features coming up by Anonymous Coward · · Score: 0

      The CSS3 Color Module includes an alpha value which can apply to all elements! I wonder how long it'll take browsers to implement it, though.

      If by "browsers" you mean "Internet Explorer" then shortly after the launch of Duke Nukem Forever. Opera will add it next year but it won't matter much because hardly anyone uses it, and the Mozilla people will have it a few months later as -moz-etc.

      But then my crystal ball has been acting up a bit lately, so take this with a grain of salt. (Which I see that you will.)

    2. Re:Cool CSS version 3 features coming up by cybermage · · Score: 1

      I wonder how long it'll take browsers to implement it, though.

      I think you mean, I wonder if browsers will ever implement it.

      Seriously, there are many elements of CSS1 and CSS2 implemented in all kinds of wacky and inconsistent ways or just simply ignored and no one's rushing to fix those.

    3. Re:Cool CSS version 3 features coming up by Anonymous Coward · · Score: 1, Informative

      Well, Mozilla 1.7 and Safari 1.2 both support the opacity declaration. You give it a value between 0 and 1 and it defines the alpha of the element.

    4. Re:Cool CSS version 3 features coming up by oneishy · · Score: 1

      yes, and you can do it in IE as well...

      .class {
      /* in IE */
      filter:alpha(Opacity=90);
      /* in Moz */
      -moz-opacity: 0.9;
      }
  27. Re:No, DeImidazole2 by imidazole2 · · Score: 0, Offtopic

    Style Sheets 0wn j00

    --

    -Imidazole2
  28. PS by TrentL · · Score: 1, Interesting

    The book's site doesn't validate, either. That isn't a huge sin in my book, but I see that the site uses named colors (black, gold, navy) for attributes. This is a no no.

    1. Re:PS by Anonymous Coward · · Score: 1, Informative

      Firstly, named colours aren't bad, using non-existent colours is.

      Secondly, I don't think you are in any position to criticise when you don't even understand the difference between properties and attributes (FYI: CSS doesn't have attributes).

  29. Just Started This Weekend... by quantaq · · Score: 3, Informative

    I just started learning CSS this past weekend, and I love it. The review of this book seems rather serendipitous to me, then. And yes, w3schools is a great place to get started.

  30. Where's the Review? by Quinn · · Score: 5, Insightful

    Am I the only one who feels as if this is only a teaser for a real review? The reviewer mentions a "table of contents below" and his "score" which I don't see. Have I just never noticed that there's some other link to click on to see a full review, or am I freaking insane, or wtf?

    --
    #19845
    1. Re:Where's the Review? by Anonymous Coward · · Score: 0

      The review is definitely missing some parts. However, that fact is not enough for us to determine whether you're insane or not, especially the freaking variety. In fact, the missing parts of the review have absolutely no relation to your sanity or lack thereof. Your comment does indicate one thing: you don't have a very good grasp of the intricacies of cause and effect (as in missing parts not caused by reader's insanity)... You must fit right into the Slashdot community. ;-)

  31. I won't be expecting a book on securing a server by diatonic · · Score: 1, Redundant

    I won't be expecting a book on securing a web server...

    Warning: mysql_connect(): Access denied for user: 'corecss_corecss1@localhost' (Using password: YES) in /home/corecss/public_html/properties/full-chart.ph p on line 38

    Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in /home/corecss/public_html/properties/full-chart.ph p on line 39
    Could not connect: Access denied for user: 'corecss_corecss1@localhost' (Using password: YES)

    .:diatonic:.

  32. and Furthermore... by pangian · · Score: 1

    In my work I've been helping set up stand alone sites for different project teams in the organization. Here, the ability of CSS and ASP/PHP to seperate content from appearance has been extremely helpful.

    Now, we can set up a site for a team and give non-technical staff the ability to maintain a professional looking site without having to build a CMS backend. All they do is modify some text files in a content folder on our development server. If everything looks good, they tell the webmaster to "update the site" and the she puts the new content folder onto the "real" webserver. Viola!

    The people closest to the information make it available without learning web design or worrying about butchering the site.

    1. Re:and Furthermore... by Anonymous Coward · · Score: 0

      Webmaster = he
      Webmistress = she ;)

  33. Better with CSS and JS by soloport · · Score: 1

    As you've mentioned, all you have to do is edit one css file and you can change the appearence of a whole website.

    Or not edit a file, like here.

    (Appologies to Mac users and appologies for slow loading page - you can see why in the source. Also, 'Save' has been diabled for you :)

  34. site does not validate by chris_mahan · · Score: 3, Interesting

    88 errors in the html when validating with validator.w3.org/ in HTML 4.01 Transitional.

    You'd think they would have done a better job, no?

    Oh, and as someone mentioned before, css does not validate either.

    --

    "Piter, too, is dead."

  35. Dreamweaver by mnemonic_ · · Score: 4, Informative

    Dreamweaver MX 2004 (which follows DW MX, which followed DW 4...) has excellent CSS support. It knows when to use div and when to to use span and has an easy interface for creating comprehensive CSS styles. It interprets CSS shorthand flawlessly. It has a convenient CSS reference. It also knows the difference between styles, pseudo-styles, and re-defining tags using CSS.

    The WYSIWYG can display CSS elements far better than GoLive or FrontPage, though I mostly use the Code view.

    Maybe you should try a more recent version of Dreamweaver. Also, you might be interested in the Dreamweaver Task Force which helped bring DW to greater standards compliance.

    1. Re:Dreamweaver by Christianfreak · · Score: 1

      Unfortunatly if the designer doesn't understand HTML then its a moot point, the designers I work with use Dreamweaver MX and they still use tables. Makes me want to kill them but they think that divs are hard and they will never get out of their little world where they control the layout completely.

    2. Re:Dreamweaver by juiceCake · · Score: 1

      "Unfortunately if the designer doesn't understand HTML then its a moot point."

      And fortunately if the designer does understand HTML and CSS than it's great that Dreamweaver doesn't have to decide for them... But hey, if a bad driver smashes a car, let's blame the car.

      In an interesting note (at least to me), Keith Schengli-Roberts actually took one of my Dreamweaver 4 courses back when Dreamweaver 4 was the current release. He was very nice and generously gave me a copy of the first edition of his book.

  36. 3 column layouts? by mnemonic_ · · Score: 1
    1. Re:3 column layouts? by Hard_Code · · Score: 1

      I'm aware of bluerobot's, but it, and all others I have seen, hardcode sizes (and so are not "natural") of columns.

      --

      It's 10 PM. Do you know if you're un-American?
  37. For those to cheap to buy a book by ubergnome · · Score: 2, Informative

    I find this link useful http://msdn.microsoft.com/library/default.asp?url= /workshop/author/dhtml/reference/dhtml_reference_e ntry.asp

    Yes, I know we all hate microsoft -- but the reference clearly explains (at the bottom of each entry) whether the widget is CSS1/CSS2/IE-only compliant.

    I could do my job without a reference like this, but it's nice to have something to peek at when you start feeling insecure about your abilities

  38. how many? by mnemonic_ · · Score: 1

    "how many just code for IE6"
    Too many probably. According to some web browser statistics, Mozilla and its derivatives are used by about 10% of the web (or the part of the web that visits that site). While 10% is small, you're still talking a significant amount of users, possibly thousands depending on the site's total traffic.

    It is easier to ignore those relatively few Gecko users of course, but sooner or later web designers won't.

  39. CSS - Reality in my eyes by DroppedAtBirth · · Score: 2, Interesting

    I have never used only CSS to design a website solo for the fact it is still browser dependent. I find a good mix of common CSS, good old HTML, and common sense works best.

    --
    Rob
    1. Re:CSS - Reality in my eyes by Laebshade · · Score: 1

      In truth you will never use only CSS. Since it bears repeating, I will say this again: HTML is for structuring a document, CSS is for styling it.

  40. Why settle for second best? by veg_all · · Score: 3, Informative

    I haven't read this CSS book, but I've read a few, and the best ones always seem to have the same author. I can't imagine how one could be more clear and complete than Eric Meyer's Definitive Guide. He's also published a useful reference to CSS 2.0.

    --
    grammar-lesson free since 1999. (rescinded - 2005)
    1. Re:Why settle for second best? by arb · · Score: 1

      Eric is definitely the author to turn to for CSS. I have the first edition of Core CSS and while it is kinda okay when I was starting with CSS, Eric's books quickly took over as my preferred reference due to their greater accuracy and better format. I don't think I'll bother with Core CSS v2 - I'll stick with Eric thanks.

  41. Boo hoo by DrShasta · · Score: 1

    What difference does the order make?

    1. Re:Boo hoo by abischof · · Score: 1

      That's the recommended CSS link order so that the link specificity works logically (in other words, so that the CSS acts as you think it would).

      --

      Alex Bischoff
      HTML/CSS coder for hire

    2. Re:Boo hoo by JimDabell · · Score: 1

      The specificity of the four selectors are identical, so getting the order wrong frequently causes newbie authors to complain that their link styles aren't being applied. In this case, a conformant CSS implementation wouldn't render an activated link as the author would expect if the mouse happened to be over the link.

    3. Re:Boo hoo by sharkey · · Score: 1

      Exactly. IE will exhibit the "n00b-expected" behaviour, while Opera will display the links as defined by the standards. IIRC, Firefox will display as the standards suggest as well.

      --

      --
      "Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next.
  42. CSS sceptic turned believer by lone_knight · · Score: 5, Insightful

    Up to a few weeks ago, I would have laughed at the idea of CSS being used in serious web design for anything other than simple color and theme coordination. On commerical sites, CSS seemed the exception to the rule, and I scoffed at sites that used and tags to layout their page.

    But that was before I actually saw the power and wisdom of incorporating CSS.
    I recently updated my personal test site to use full CSS for the structure and design, and was very pleased to learn about the two key benefits of CSS website design: structure and format.

    Structure:
    For ages my own coding methods involved nested table within nested table, until the complexity of my pages got so complex that a simple updates became a gamble of helping or shredding the resulting page. Nested tables are also nearly impossible to coordinate for pages that must be scalable for accessibility, or simply stretching the viewable resolution for more modern video display sizes. Tables were originally meant for one thing: formatting text data, not carrying the workload of page structure. The truth is, it is much easier and precise to define a site's structure using CSS positioning. I am a minimist at heart when it comes to my source code, and CSS has not only helped to reduce clutter in my source code, but in most cases has reduced the source size by about 20%.

    Format:
    Using relative font sizes and design templates for formatting text not only makes universal page design easy, but it also makes browser loading faster, since CSS can be cached by local browsers while hard-coded or code includes must be reloaded every time the user clicks a link or refreshes the browser. That means reduced server load and increased load speeds for the user, too.

    Now I realize, CSS is not the end-all and be-all of web design. There are some weaknesses, and the typical cross-browser support that needs to be worked out. But for the serious web designer, you can't ignore the elegance and the design concepts that make CSS a very powerful (and in some cases, superior) design tool.

    If you are interested, the W3C site has some great CSS howto's and examples on replacing table-based structure on your site.

    --
    Computers are useless. They can only give answers. --Pablo Picasso
    1. Re:CSS sceptic turned believer by Psychotext · · Score: 1

      What I especially like about the W3C CSS example site is that if you have your browser window fairly small the "Cascading Style Sheets home page" text completely covers the header links on the page. It's probably their intention I'm sure, but that doesn't strike me as particularly good practice and I'm sure as hell my customers wouldn't like it if I gave them a site that did that (It's not too hard to ensure that text doesn't overlap).

      On a completely unrelated note, with no offence to your site which I actually like, but why do almost all the sites that I see with CSS layouts look like that (3 Column, overlap and centred)? Is this the new blog look or something? One thing I do like about sites like yours though is the way they handle user preferences related to fonts. I'd be interested if anyone had found a good way of scaling images properly to suit though.

      --
      People that believe in their opinions don't post AC.
    2. Re:CSS sceptic turned believer by lone_knight · · Score: 1

      Psychotext,

      Thanks for the reply. I agree, in quite a few ways on my site I mimiced a lot of the common popular design that's out there. I played around with some different ideas, but the 3-column design seemed to give the best aesthetic balance and layout of content in comparison to other orientations I found. I also like having content tied to the top of the page, so if one or more columns are shorter than the other, they extend from the top of the page down.

      To be honest, I think most CSS sites imitate that look mostly because that's what the cookie-cutter designers are selling these days, and people are too lazy to build their own. Again, I recognize I am partially shooting myself in the foot with that remark. Please forgive me, I was looking for a specific balance or "feng-shui".

      You can actually use the same relative scaling that you may use for fonts when scaling images. I have to admit I haven't implemented this on my test site yet, but I have seen it done well, and I have worked with it enough in a test platform to know that it is possible to do.

      Again, thanks for your feedback. Feel free to check back in on my site, since it tends to change faster than I can apply to the entire site (as you will be quick to notice if you took a peek at some of the buried pages of the site).

      --
      Computers are useless. They can only give answers. --Pablo Picasso
    3. Re:CSS sceptic turned believer by handslikesnakes · · Score: 0

      This examples site, you mean?
      Not every page on the W3C's site is perfect. Whatever. This isn't CSS's fault; it could easily be set up so that this doesn't happen.

      It's the result of absolute positioning gone horribly wrong. Of course, it doesn't occur for me until my browser's 430px wide. If people are browsing at that width, then they're going to have problems on just about any site.

  43. minimum & maximum by Anonymous Coward · · Score: 0

    need to be fucking implemented successfully. that's what you really want. that gives you the building blocks.

  44. yep... by mnemonic_ · · Score: 1

    I've believed for quite a while that XP's graphical design was a greater influence on the rest of the computer art world than most others believed. It seemed like right after beta screenshots of XP started floating around, subtle low-contrast gradients were being used everywhere. Note I'm not saying they were never used before XP used them, just that XP popularized them.

    1. Re:yep... by dustmite · · Score: 1

      Yup, with Windows XP Microsoft caught right up to the 90's.

  45. excitement by mnemonic_ · · Score: 2, Insightful

    "Even hardcore CSSers get all excited when they do simple things like layout pages in columns."
    Indeed, not only because of the struggle involved, but because of the great flexibility in using CSS instead of tables. It's not just "thank god I made a nice layout with CSS, it took me 7 hours!" but also "thank god I made a nice layout with CSS, now I can adjust it much more easily in the future and have far greater control than with any table hacks." And they are just that; hacks. The table tag was originally meant only for displaying data in a grid-like format (keep in mind HTML was originally for scientific documents).

    And also we're all still learning. How many tablers got excited when they first figured they could use tables for page layout? A lot I bet. Now complex table layouts are all old-hat. Soon matured CSS layouts will be too, with the simplicity of layouts like this (check out the CSS, doesn't look too scary does it?).

  46. Re:crap for layout - NOT! (well, not entirely) by schodackwm · · Score: 2, Interesting
    but first... a word in favor of tables: they're NOT deprecated for tabular data, and DESPITE the "zealots'" insistence that they are inherently EVIL for layout, they ARE still "legal" there.

    ... that said, the time it took to absorb (for example) position: relative; top: -2.5em; was really worth while for (dayjob=webmaster) me. As one tutorial (sorry, can't recall which) pointed out, with css one can position elements on a page with single-pixel precision... and make that work across most browsers (ie>5.5, moz>1.3, recent NS, Konqueror, Opera).

    There are still issues: fonts are (render?) slightly larger in Moz 1.4 than in ie5.5 or 6. And fonts that look fine in Moz or ie>5 at 1024x768 on a 'doze box (read: MANY of our customers) look dreadful at a different rez on some other OS's. Browser makers still don't use identical DOMs, which makes margin:auto; or padding-left: nn; unreliable.

    So, for now at least, you still do have to run a pragmatic test for x-resolution, x-browser, x-OS anomalies. But -- IM(not so)HO, css doesn't deserve the kind of condemnation the parent and others offer. With a little study, one can work around most browser glitches...

    --
    [this sig has been trunca
  47. IE CSS "compatilibity patch" by dustmite · · Score: 1

    This is an attempt at providing a kind of "compatibility layer" for IE in order to essentially "emulate" CSS compatibility on IE. He calls it a "compliance patch" or "IE7" :) The idea is that web developers include this file that uses DHTML to provide a compatibility layer for IE. If the user is using a standards-compliant browser (e.g. Mozilla) then the page renders as normal. So web page developers can just develop straight to standards.

  48. There was a time... by Run4yourlives · · Score: 1

    not so long ago I would have agreed with you... but not anymore:

    CSS Zen Garden is a good start.

  49. CSS all the way by lunax · · Score: 1

    I switched to CSS layout a while ago and haven't regreted it one bit. It may have it's drawbacks but I think it's much better than the old way of doing things. The only problem I see is that not enough people know that they should use standards compliant browsers or even that there are standards.

  50. It's not a Dell... by Anonymous Coward · · Score: 0

    Dude! You got a troll!

  51. Did I sleep through IE becoming complient? by Christianfreak · · Score: 4, Interesting
    Oh yeah it isn't.

    Seriously there are so many bugs and missing stuff from IE's implementation even of CSS 1 I fail to see how anyone can claim that its even remotely complient.

    Here's just a few things off the top of my head:

    • No support for min-width, max-width. Wrongly treats the width property as min-width.
    • Can't clip background images to anything other than the body
    • Tons of just plain bugs related to padding, and boxes, incorrectly clips fonts, even full words in some cases
    • No support for :hover, etc on elements other than a making it impossible to do dynamic effects without Javascript
    • No support for overwritting classes (ie .class > .someOtherClass { })

    The list goes on! And don't even get me started on the implementation of the DOM in IE, not to mention the security problems and other 'features' that also come along with it.

    Why oh why can't it just go away!? If you don't believe me, google for this stuff, its all out there complete with hacks to get around some of it (though most of htem use non-standard MS extensions)

  52. What are you smoking? by Run4yourlives · · Score: 1

    look here:

    www.csszengarden.com

  53. Links on the csscore.com website don't work ... by cool_st_elizabeth · · Score: 0, Offtopic

    ... something about a database error. Too bad, I wanted to see the property tables. I love CSS, but I probably wouldn't buy another book about it. I've learned most of what I know from meyerweb.com and csszengarden.com.

  54. Ignorance, not laziness. by zonix · · Score: 1

    Even if the job can be done the right way isn't it easier to be lazy and neglect everyone but IE?

    I don't know whether a job can ever be done the right way with laziness. :-)

    Still, I've found ignorance to be the main problem here, not laziness. In almost every case of broken markup I've encountered - tag soup, font tags all over the place, no CSS, etc. - it has been because of the fact that people have used some popular HTML editing tool that can't produce standards compliant markup.

    But how should they know the tool can't possibly do it right for them? Sad really.

    Are Gecko and Opera having a practical impact, yet?

    Slowly but surely I hope! These browsers are years ahead of IE, quite literally. At least Mozilla supports most of CSS2 (and CSS2.1 then) and some CSS3. The current recommendation is CSS2.1. As far as I know IE doesn't support CSS1 completely and it's support is buggy - this is really a problem for CSS adoption, IMO.

    How about handheld devices?

    Dunno, but the CSS @media at-rule is quite handy. I haven't tried "handheld", but "print" is really wonderful. Printer-friendly redundant web pages are a thing of the past.

    z
    --
    What would an EWOULDBLOCK block, if an EWOULDBLOCK could block would? -- me
  55. Re:crap for layout - NOT! (well, not entirely) by JimDabell · · Score: 2, Informative

    a word in favor of tables: they're NOT deprecated for tabular data, and DESPITE the "zealots'" insistence that they are inherently EVIL for layout, they ARE still "legal" there.

    The HTML 4.01 specification directly contradicts you:

    Tables should not be used purely as a means to layout document content as this may present problems when rendering to non-visual media. Additionally, when used with graphics, these tables may force users to scroll horizontally to view a table designed on a system with a larger display. To minimize these problems, authors should use style sheets to control layout rather than tables.

    It seems pretty clear that <table> elements aren't legal for layout purposes, with or without quotes around the word "legal".

    There are still issues: fonts are (render?) slightly larger in Moz 1.4 than in ie5.5 or 6.

    This is the web; font sizes will vary depending on a whole range of factors and if you are expecting any particular size, then you are doing something wrong.

  56. Excellent CSS tutirials by $exyNerdie · · Score: 4, Informative


    Since this discussion relates to CSS, here is a site with two excellent tutorials on CSS (bookmark it even if you don't use CSS now):

    - CSS Positioning (5 pages)

    - Using Style Sheets (7 pages)

    These two might help save you money on buying a CSS book

  57. So true! by zonix · · Score: 1

    I second that!

    IE6 is old and it's CSS support is lacking (non-complete CSS1 as parent poster stated) and bug-ridden!

    Ever encounterd a webpage that uses CSS that "works" in IE, and looks broken in other browsers? Chances are it's really because the other browsers work right according to the specs, and the author of the page unknowingly created CSS that satisfied IE's float quirks, or had an HTML editing tool that did it.

    A real showstopper for the adoption of CSS if you ask me!

    z
    --
    What would an EWOULDBLOCK block, if an EWOULDBLOCK could block would? -- me
  58. One problem with the em unit by bjdevil66 · · Score: 1
    Also, the main content text size should always be 1em, i.e. not specified, allowing the browser's default size to be used.

    One problem is a bug in IE with text sizing. When you use ems in your CSS and then reduce the text size in IE (go from Medium to Smaller), it gets MUCH smaller than it should.

    I usually say 'so what' and use em in my CSS designs anyways, hoping that MS will fix that behavior. However, other designers do worry about it and not use ems...

  59. Box model and friends by UnConeD · · Score: 1

    I wholeheartedly agree with you: the W3C Specs, and those for CSS in particular are very readable. Still, telling someone to RTFS scares most people even more than RTFM, so here are a couple of specifics to point people to:

    - The box model. Understanding the basic box, and how margins and padding work, is a basic requirement of designing with CSS.

    - Block-level elements vs Inline-elements, and how they are placed in relation to eachother. Whenever people complain about small spaces they can't get rid of, or how "some things just won't go together", it's usually an inline element which needs to become block-level, or vice versa.
    Now you can have menu buttons which light up over their entire area /and/ are clickable over the entire area rather than just the text.

    - Float and Clear. The staple of every CSS-based design. The easiest example is a gallery thumbnail list which adjusts to your browser width.

    My advice for getting people to accept CSS is to give them a copy of Firefox and an editor, and let them have fun.
    Once they have discovered the joy of being able to place things where you want without needing spacer gifs, you can slowly ease them into the fact that a lot of the things they are using don't work (properly) in IE.

  60. why not XSL? by DrEasy · · Score: 2, Interesting

    Bare with me, I'm not a web designer. I have a candid question: why not use XML + XSLT instead of HTML + CSS? This way you would completely separate content from presentation, and you could also generate tables or whatever floats your boat in the resulting HTML.

    I guess the two approaches aren't incompatible: you could use XSLT to generate an HTML document that makes use of CSS... OK I guess I answered my own question... :)

    Comments?

    --
    "In our tactical decisions, we are operating contrary to our strategic interest."
  61. Book's Author on Safari, IE Extensions, Etc by CaptMondo · · Score: 2, Informative

    Woo hoo - I've been Slashdotted. And with a decent review! ;-) Fourth book lucky I suppose...

    Okay, some explanations are in order for some of the questions I've run across:

    Why Safari isn't covered: Safari was only available as a pretty buggy pre-release version while I was writing the book, and it only became 1.0 during printing (figures). I didn't think it worthwhile to include information on this browser until it became more stable, especially since it was obvious that many of its CSS-related bugs were being worked out in successive beta releases. Instead I've covered that info in the Web site, which also includes info on more recent versions of Konqueror and OmniWeb to which it is related through a common rendering engine.

    Somebody mentioned that dealing with IE extensions was daft, and shouldn't be taken seriously. I decided to add them into this edition of the book in order to be thorough, and because somebody on Amazon had complained about the lack of any such listing in the first edition. The commentator is probably thinking about the various transition and filter effects thrown into the early editions of IE, which for the most part are about as useful as the beloved tag (they *are* covered however, at the end of the book). Far more interesting are the CSS extensions that have been added primarily for internationalization/localization issues. The CSS extensions Microsoft has added for dealing with things like Ruby layout for the Chinese-Japanese-Korean languages definitely should be taken seriously, as they are genuinely useful. What's more, many of MS' CSS extensions in this area have led the way towards what has become (or will likely become) the official standard. MS does get a basting for seriously jumping the gun on the W3C process, but if you want to starting working now on some CSS3-related code, there's plenty of IE extensions that lead the way that you can play with now.

    And my apologies to those who have run into the database errors on the book's supporting Web site -- this is now fixed. Turns out my ISP had changed servers on me, which was the original cause of the problem.

  62. Bowser issues.... by Run4yourlives · · Score: 1

    You can get an older browser (NN4 for example) to display a CSS/XHTML document by completely ignoring the style. It'll crap out on an XML doc though.

    Simply, the embracing of XML/XSLT is being head back by the need to support as many back-asswards or olded browsers as possible.

    1. Re:Bowser issues.... by DrEasy · · Score: 1

      Yes, I understand that there aren't many browsers out there that have a built-in XSLT engine (probably only IE). But why not use XSLT on the server side and just deliver the HTML that results from the transformation?

      --
      "In our tactical decisions, we are operating contrary to our strategic interest."
    2. Re:Bowser issues.... by Anonymous Coward · · Score: 0

      Yes, I understand that there aren't many browsers out there that have a built-in XSLT engine (probably only IE).

      IE has a broken XSLT implementation; Mozilla's works. I think Opera has an implementation as well.

      But why not use XSLT on the server side and just deliver the HTML that results from the transformation?

      Because there is no real difference between that and simply authoring HTML directly, at least in terms of what user-agents see. So you are back to the old problem - decent HTML+CSS or junk HTML.

  63. Sick of the fucking goodness! by antic · · Score: 0, Troll

    I just want to say that I'm sick of people writing stuff like "standards based goodness". It's over. That's just not cool, fresh, whatever any more. It's common. It's old. It's over.

    It's also not cool to say stuff like "for more AMD love, head to our forums". Yes (insert name of almost ANY hardware site here), I'm talking to you. Go and love whoever lets you in their pants and leave the hardware out of it.

    --
    'Thats they exact same thing a banana wrench monkey.'
  64. I don't understand this stuff by zogger · · Score: 1

    and not shy about admitting it. I just don't get it. I go to some sites, they are horrible. I see overlapping text, or dual text like superimposed, yeech, you can't read it. In the olden days, the biggest problem I remember is the way tables laid out depending on your browser, but it wasn't that bad..now, sheesh. Now I don't know, is this "style sheets" being misused or what? Or something else? I'm running moz 1.6 on FCI. Hmm, one that bugs me for an example is a site I'd like to read, too, prisonplanet.com. It's just awful to look at for me, but I know it's just got to be the way my browser is displaying it, ie, it's my problem. How do you "fix" a page that appears that way to you? That's what I'd like to know about CSS. Are there settings in the preferences control panel I am not using correctly, or what?

    1. Re:I don't understand this stuff by subtropolis · · Score: 1

      Most times it's because the site was slapped together with a lot of non-standard shite markup *cough*msdn*cough*

      btw, I'm using moz1.5 and that site looks more or less OKish. Maybe something with 1.6. They could *really* use some organsation, tho. Anyway, i had a peek at the source and found this:

      <style>
      <!--

      /*
      Text Link Underline Remover Script-
      &#169; Dynamic Drive (www.dynamicdrive.com)
      For full source code, installation instructions,
      100's more DHTML scripts, and Terms Of
      Use, visit dynamicdrive.com
      */

      a{text-decoration:none}
      / /-->
      </style>
      <style type="text/css">
      A:hover {text-decoration: none; text-decoration:
      underline}
      </STYLE>

      This is FUNNY STUFF!

      --
      "Our interests are to see if we can't scale it up to something more exciting," he said.
    2. Re:I don't understand this stuff by zogger · · Score: 1

      --OK, it's the webmasters fault. I'll see if moz 1.7 when I get it makes it look any better, but I'll probably shoot the guy over there an email too, ask him to preview his pages better with different browsers and be more consistent with his code. I've seen just some rank stuff lately is all, that was the one I could remember the addy to. Several news sites I've seen lately don't display well either, I just look at so many I forget which ones are rank. I might try getting the page again, then open it in composer and strip out some of the stuff and reload it that way, too.

  65. grammar police by Anonymous Coward · · Score: 0

    it is an useful tool That should be A USEFUL

    as in a yoos full

    a before vowel sounds, an before consonants, y is a consonant here

    go to newsblues.com buy the grammar book from Mrs. Bluezette, it'll make you promotable

  66. The book by gorfie · · Score: 1

    I've had this book for a year or so, don't recall if it's first edition or second edition. It was useful as an introduction and as a compatibility guide. It wasn't a great reference because I found that it was missing some things, and it wasn't a great 'teach by example' book. Basically it was a waste of cash except that it motivated me to dive into CSS.

    For the more elaborate things I basically searched the net and then began experimenting, seeing how the results render in MSIE 6, Netscape 4.7, Opera, and some Mac browsers. I found ways of mimicking tables using CSS, but I was never able to truly achieve the same positioning power of tables. So I'm still an advocate of tables for positioning and CSS for added flavor.

  67. Read the Recommendation-Spec-aholic. by Anonymous Coward · · Score: 0

    Who's spec?

    The Curl spec?

    The RDF spec?

    The XUL spec?

    The
    FLEX spec?

    The web is growing up, and there are plenty of specs.

  68. Oh yeah? by Anonymous Coward · · Score: 0

    I learned HTML by reading disassembled IE machine code with my breakfast and keeping an imaginary raster image in my head. For lunch I would look at hex dumps from my ethernet card so I could determine how the HTTP protocol worked.

  69. <font> is just as useless in Lynx/Google by brownpau · · Score: 2, Interesting

    If this were XML, we could define an or tag or even ; but this being X/HTML, we want to use id and class attributes to identify a line of text/code within given standards. The example given in parent, , usually means "error" or "important," so using class="error" or class="important" is far more meaningful to the coder than a deprecated tag, and can be made meaningful in any manner to the general audience with CSS.

    >How useful is the meaningless element type in situations where CSS is not used (Lynx, Google, etc)?

    - In Lynx, about as useful as the <font> tag, eh? But proper structure and hierarchical markup with headers, paragraphs, and properly identified <div> blocks will work wonders: making clear to searchbots what text is important, and giving disabled users an easily-navigable nonvisual UI. Then, the document can be easily (?) styled for prettiness in normal browsers, while still retaining an intelligible structure for other environments.

    Even plain, unclassed <span> tags are useful when nested inside parent blocks, since these can be styled as descendant CSS selectors without suffering from acute classitis. Plus, <span> is standards-compliant, and <font> is deprecated.

  70. Re:crap for layout - NOT! (well, not entirely) by schodackwm · · Score: 1
    Sorry, this is a bit lengthy...

    1. You're absolutely right about the 4.01 spec... but the only relevant "non-visual media" output devices I can think of are braile and text-to-speech browsers. And those can deal with tables that are properly tagged...with headers and scope.

    It seems to me (and perhaps this is as dubious as my earlier use of "legal" that given the imperfect support of css in the wide world of browser implementations, the chief arguement for avoiding tables is to achieve the ends of the Americans with Disabilities Act, and its counterparts (where they exist) around the world. But as 2 and 3 below make clear (and despite the fact that the example is a a dataset traditionally presented in tabular manner), screen-readers -- and THUS, users can handle tables quite well. (open "[" sted < below)

    2. From: http://www.oreillynet.com/pub/a/javascript/synd/20 01/11/30/accessibility.html?page=2

    Screen readers read text linearly; that is, they read across the line from left to right. That causes a problem when attempting to render tables meaningfully for assistive technologies. To solve this problem for simple tables, the guidelines call for labeling of table headers.

    Use the summary attribute to indicate the meaning of the table and the headers attribute to associate data cells with their proper row or column. In the following example, notice the use of id attribute in the table headers. Each cell in the body of the table then has a headers attribute which relates it to a specific column.

    [TABLE border="1" summary="This table charts the number of web pages analyzed by each agency head, what kind of media the pages contain, and whether or not the page is part of the Executive Branch.">
    [CAPTION>Web pages Analyzed by Agency Heads
    [TR>
    [TH id="header1">Agency Head[/TH>
    [TH id="header2">Number of pages[/TH>
    [TH id="header3" abbr="Type">Media[/TH>
    [TH id="header4">Executive Branch?[/TH>
    [TR>
    [TD headers="header1">A. Jackson[/TD> [TD headers="header2">20[/TD>
    [TD headers="header3">text, images[/TD>
    [TD headers="header4">No[/TD>
    [TR>
    [TD headers="header1">B. Franklin[/TD>
    [TD headers="header2">10[/TD>
    [TD headers="header3">text, images, video[/TD>
    [TD headers="header4">Yes[/TD>
    [/TABLE>

    A speech synthesizer might render this table as follows:

    "Caption: Web pages Analyzed by Agency Heads
    Summary: This table charts the number of Web pages analyzed by each agency head, what kind of media the pages contain, and whether or not the page is part of the Executive Branch.
    Name: A. Jackson, number of pages: 20, Type: text, images, Executive Branch: No
    Name: B. Franklin, number of pages: 10, Type: text, images, video, Executive Branch: Yes"

    3. See also: http://www.access-board.gov/sec508/guide/1194.22.h tm#(g), produced by The Access Board, "a federal agency committed to accessible design."

    --
    [this sig has been trunca
  71. CSS is crap for layout-Outsourcing Obsolesense. by Anonymous Coward · · Score: 0

    "Frankly, I think most people are just a bit lazy and don't want to spend the time learning to use it properly."

    And those jobs get outsourced. Learn, or leave should be the new mantra. And I'm not just talking Web tech.

  72. Re:crap for layout - NOT! (well, not entirely) by GenSolo · · Score: 1

    Tables should not be used purely as a means to layout...To minimize these problems, authors should use style sheets to control layout rather than tables.
    Please note the use of the word "should" rather than "must". If you don't understand, check out somewhere near the top of the spec where they explain what they mean by both terms. Then, you must realize, that while they are discouraged, they are still certainly legal. It's like putting up hideous lawn decorations. In many cases, your neighbors will be seriously pissed off, but it's not against the law [note, this is an example, YMMV].

  73. A completely useless review by njdj · · Score: 1
    A review is useless unless it helps someone to decide whether or not to buy a book. There are dozens of books about CSS, so for most people, the decision comes down to "which one do I pick"?

    So we need comparisons. How does this book compare with, for example, Eric Meyer's books?

    Lacking any comparison of the reviewed book to others, this review was a waste of time.

  74. Borrowed from an reply I read earlier... by Denyer · · Score: 2, Informative
    "Designing for 90% of browsers is our policy? Here's a question. If I answered 10% of the sales calls with "hello [companyname], could you please fuck off", how would that affect our sales?"

    I realise you're just trolling, but it's a point that deserves to be beaten into the heads of as many web designers as possible: if that one in ten is a guy who doesn't see too well, who surfs from work in a browser his IT tech has locked down settings in, or whatever, if he is the one in ten who thinks "hey, these people are nice enough to cater to me" and buys the product... your unfriendly website just got its ass handed to it by the competition.

    Good designs work for everybody, and they give you a business advantage.

    --
    Ph-nglui mglw'nafh Gates M'dna wgah'nagl fhtagn.
  75. Re:One problem with the em unit [[OT]] by Anonymous Coward · · Score: 0

    But most of us just think about the things we'd like to be. Sadder still, to watch it die than never to have known it. For you the blind who once could see - The Bell tolls for thee. Sorry. That's just a great song. Carry on.

  76. Re: is just as useless in Lynx/Google by JimDabell · · Score: 2, Insightful

    If this were XML, we could define an <error> or <important> tag

    You mean element type, not tag, and it would be just as meaningless. The rest of the web doesn't know anything about your markup scheme. Throwing the magic word "XML" at it doesn't change this. <span class="error"> doesn't mean anything to any program outside your organisation, nor does <error>. The whole point of using a shared markup language like HTML is that eveybody understands what the markup means and can do useful stuff with it.

    The example given in parent, , usually means "error" or "important," so using class="error" or class="important" is far more meaningful to the coder than a deprecated tag, and can be made meaningful in any manner to the general audience with CSS.

    CSS is an optional component of the WWW; you are treating it as a required component. Using meaningless code and then being able to kludge a certain presentation so people can understand it is no better than using <font>.

    The value of CSS is that you can use meaningful markup without worrying about the presentation. If you don't bother using meaningful markup, then you haven't progressed at all, and may in fact be taking a step backwards (for instance, some people start using <div class="heading"> elements and similar).

    But proper structure and hierarchical markup with headers, paragraphs, and properly identified <div> blocks will work wonders: making clear to searchbots what text is important, and giving disabled users an easily-navigable nonvisual UI.

    How is a search engine to know that things like <span class="important"> are important? They don't. They do, however, know that <em> elements mean emphasis, etc. The <div> and <span> element types should be used as a last resort, not in place of element types like <em>

  77. You say <potato> by brownpau · · Score: 1

    There are cases where an unattributed or can be used, such as when abstracting with child selectors, but yes, you're indeed correct in saying that <em> and other such semantic elements mean much more than generic tags.

    (I think we're talking in different languages, because as a designer I was thinking of red as an error color for admin purposes only, which would never make it onto the body of the public page itself.) :D

  78. Opera by LPetrazickis · · Score: 1

    The obvious solution to this would be to use Opera with its pagewide zooming. The width of the columns would increase along with the text size and the illustration size.;)

    --
    Is this a sigs-optional kind of place? 'Cause I am totally down with that if you know what I mean.
  79. I wasn't impressed - see my review for details by danny · · Score: 1
    I thought Core CSS was bloated and not that well laid out. See my my review for the details.

    Danny.

    --
    I have written over 900 book reviews