Slashdot Log In
CSS for the LDP?
Posted by
Cliff
on Mon Mar 29, 2004 09:56 PM
from the extreme-presentation-makeover dept.
from the extreme-presentation-makeover dept.
Saqib Ali asks: "Over at The Linux Documentation Project there is a lengthy discussion going on about whether to use CSS (Cascading Style Sheets) to improve the presentation of the documents. I support the use of CSS to improve the image/formatting of the document, and improve readability. I understand that content is more important than the presentation, but it can't hurt to improve both. There are others who think we should not get involved the presentation layer, and mainly concentrate on the content. Since, most Slashdot readers are Linux users, and might have visited the LDP once or twice, I would like to poll them on what they think about implementing and using nice CSS for the documents on the Linux Document Project website. I've written a CSS for this purpose that is available here, and some sample documents available in this weblog. Any thoughts? Any pros and cons on using CSS to improve presentation?"
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
What about Slashdot? (Score:5, Interesting)
Re:What about Slashdot? (Score:5, Funny)
Ow, stop hitting me!
Parent
Re:What about Slashdot? (Score:5, Informative)
Parent
Re:What about Slashdot? (Score:5, Informative)
Parent
Re:What about Slashdot? (Score:5, Interesting)
Let me second Mr. Coward, and remind Slashdot's readers that we saw an article posted here several months ago showing several CSS formats especially designed for Slashdot.
I, in particular, would very much welcome CSS replacing nested tables on Slashdot, not least because I sometimes read Slashdot on my Zaurus. The default Zaurus browser, Opera, while it has a mode designed for display on smaller devices, spectacularly screwed up that mode for tables, as it doesn't line break at the end of table rows.
Whether you're using a Zaurus or a Jumbotron to view Slashdot, odds are you can write a (possibly overriding) user style-sheet that conforms to your display better than the default Slashdot display does.
Also, a properly written stylesheet likely means smaller pages, because the markup will be centralized in the stylesheet. For a site like Slashdot, with a lot of page hits, this might mean a significant bandwidth savings over time.
Sounds like a win-win to me.
Parent
Re:What about Slashdot? (Score:5, Informative)
Parent
why not? (Score:5, Interesting)
Done right, CSS can help multi-platform use. (Score:5, Interesting)
The best examples online are still probably this [csszengarden.com] and this [csszengarden.com] and even and slashdot style [csszengarden.com]
Note that all those pages had the exact same html. Only the css changed. In their site (read the page) they have styles for all sorts of displays including wireless friendly ones.
Parent
Re:Done right, CSS can help multi-platform use. (Score:5, Insightful)
Hard coding a paticular style sheet into HTML - even if that HTML happens to be generated - kind defeats the purpose, no?
Parent
Re:Done right, CSS can help multi-platform use. (Score:5, Informative)
Parent
Re:Great examples as to why they SHOULD NOT use CS (Score:5, Informative)
Parent
Re:Great examples as to why they SHOULD NOT use CS (Score:4, Informative)
Parent
Re:Great examples as to why they SHOULD NOT use CS (Score:5, Insightful)
Normally I wouldn't post a reply to something like this, but the whole shitty, breakable design that is so much of the web is in large part due to supporting pathetically old and broken browsers and proprietary extensions. NS 4 anyone?
Mac IE 5.2 did way better than previous Mac browsers with CSS but it is by no means some sort of quality benchmark. ON TOP OF WHICH, you could easily write CSS that does something to make a site look better, but is still simple enough for Mac IE 5.2. It's rather ridiculous to take a broken browser and say "look, I know it's borked but look, it doesn't render this site correctly". What makes this even better, is that the site is entirely usable because thankfully MS did include the ability to disable style sheets (or use your own) in Mac IE 5.2.
There's no reason not to use CSS unless it means that someone who would otherwise have been writing documentation is now writing CSS. I believe it more than likely, however, that there are people who would be willing to work on the CSS but who would otherwise not be involved in the project.
Parent
Re:Great examples as to why they SHOULD NOT use CS (Score:5, Informative)
A light, simple, standards-compliant CSS sheet can render well in 98% of the browsers and add quite a bit to readability.
I am surprised there is this much debate around such a simple thing. CSS can save bandwidth and development time and add quite a bit to user experience. Yes, use it.
Parent
Re:Great examples as to why they SHOULD NOT use CS (Score:4, Funny)
Parent
Consistency, please (Score:5, Insightful)
Also, the full text should remain available in plain ASCII. Just my $0.02 worth. Thanks for asking!
Parent
Re:Consistency, please (Score:5, Interesting)
It should be trivial to generate proper classes of tags from the source documents because LDP uses something similar to Docbook (or maybe they actually use Docbook now? They didn't quite last time I checked) so all the context information is already there.
Parent
Re:Consistency, please (Score:4, Insightful)
Both are exellent ideas. However, in order to do this properly, the LDP would have to also create a style guide for their documentation authors so that they can check their HTMl against it.
Perhaps having a group available to edit mark-up for the authors would also be a good idea. These people would be volunteers, and would not necessarily be among the same group as the authors. The downside to this is that it creates added overhead to the document submission process, which results in longer delays to publishing. That is not to say, however, that it should not be considered. Sufficient planning could overcome such obstacles rather easily.
Parent
Re:Consistency, please (Score:5, Informative)
A quick perusal of CPAN revealed eight modules specifically for dealing with DocBook. No doubt other languages have similar libraries.
Looks to me like more than half the work is already done. It shouldn't be a difficult matter to create a script to run the DocBook -> HTML+CSS conversions with predictable results.
Parent
Re:why not? (Score:5, Insightful)
This includes formatting, and visual output.
If content is controled by CSS, then in theory, the content can be ammended as needed, with those in charge of presenting it not interfering with the actual documentation. This could lead to less time to prepare content as you stated.
Remember, what makes the Microsoft KB almost un-usable is its presentation. What makes php.net's documentation usable is its presentation.
Guess who has got it right, and who hasn't.
Guess also who uses proper presentation and who doesn't. Compare.
NeoThermic
Parent
Docs should be semantically marked up anyways (Score:5, Insightful)
Parent
Re:Docs should be semantically marked up anyways (Score:5, Insightful)
And if that's the case, you need to fix the html first.
Parent
What? (Score:5, Insightful)
"Most Slashdot readers are Linux users" - seriously? I know there's a strong anti-MS contingent, but this can't be true. Is there data to back that up or are you just talking out of your, er, hat?
Re:What? (Score:4, Insightful)
Personally, I think it's silly that people try to pigeonhole me as a [insert OS here] user since I use (i.e acting as a local or authenticated remote operator or user of) anywhere from 4-8 different OSes over the course of a typical week.
Parent
Serious. (Score:5, Funny)
Damn. You've found us out. I suppose we might as well all come clean.
The truth is - we're staunch Microsoft Windows fans. In fact, many of us work within various business units involved in Microsoft's marketing. We really don't dislike Microsoft. And we certainly don't use Linux.
Except for one guy. See - there is, in fact, one Linux user in the world. We created this environment just to screw with his mind. I'd tell you who he is (we all know)... but that would ruin the fun. Part of the game is to sign up, discover the "true believer", and then become part of the conspiracy.
Without giving it all away. But hey - its over now. Been fun while it lasted. My only regret is that there aren't really many other candidates to play with. I'm affraid we've been a little too efficient while "on the job." I suppose there's always those two BeOS guys.
I know this sounds pretty far-fetched. Heck - just think of the man-hours and funds we've had to float to pull this off. All I've got to say is two things:
1) Expense account.
2) What's the use of millions in liquid assets if one can't have a bit of fun with it?
Parent
Excellent idea. (Score:5, Interesting)
It would be simple for a team to develop CSS files in concert with those who are already doing a great job developing consistent, predictable content. This project lends itself easily to improvements with CSS.
I'd only recommend that multiple CSS files be created, and people be allowed to choose one that suits them, or none at all.
Re:Excellent idea. (Score:5, Insightful)
No, it isn't. It's also about communication, and to the extent that better presentation helps communicate more clearly, CSS should be used. The best ideas that are never heard matter not.
Don't let the presentation get in the way of the content? Exactly. But don't let the lack of presentation take away from it either.
Parent
Why should it be opposed? (Score:4, Insightful)
Uhoh.... (Score:4, Informative)
Translations:
Cascading Style Sheets-Uniform visual format for web pages.
LDP-Linux Documentation Project: Produce documentation for linux. Quite helpful.
Of course! But it may not help a ton (Score:5, Informative)
Unfortunately, CSS won't solve the root of the problem: non-semantic HTML. I've re-done several sites to make use of the so-called semantic HTML tags (em, strong, etc.) and to get rid of nasty table-abusing layout tags. CSS is necessary to make this transition, but readability on non-desktop browsers (phones, terminals) can only really be improved by switching to layouts using semantic HTML tags and divs for layout.
One last point I'd like to get out there is that there are many console browsers (links, w3m, but NOT lynx) that do a fine job displaying abused table layouts. Unfortunately, the console usually has so few columns that everything just ends up looking squished, while as my div-layout pages are easy to read.
Silly (Score:5, Insightful)
I'm sure someone will mod this down as flamebait, but it's not meant to be. Truly, this is one of those times I find myself not so surprised that Microsoft retains so many customers - because you gotta sell the sizzle with the steak.
Re:Silly (Score:5, Interesting)
Parent
Re:Silly (Score:5, Insightful)
We wouldn't. Chances are:
Parent
Why even ask? (Score:4, Insightful)
CSS doesnt touch the content of a document at all - that's the whole point of it. You can "pretty up" a document without needing to redo all the content's code. In addition, no one doing to the documenting needs to worry about anything new - they just continue as always. The "extra" download can be turned off in cool browsers so that its formatted normally - heck, even a fancy JavaScript button can be set up to use different (or no!) style sheets.
So - Better appearance, negligable performance hit, backwards compatable, no change in article (html) formatting, and zero drawbacks. Why would they not put CSS into action? Even basic CSS can do wonders.
Good idea (Score:5, Interesting)
I suppose if you provided a standard stylesheet that every document used, and each document author only had to worry about content and didn't have to bother with how it would look (since that's all handled with one good stylesheet forced on everybody), then it could work. Just don't, for the love of god, force each author to come up with their own stylesheet for everything. There should just be one standard one, and that should do it for everybody.
Just for the sake of something new? (Score:4, Interesting)
Unless they can make even easier to use, it seems like a waste of time to me. I could change the look of things on my end if I really needed to.
Perception is more important than reality. (Score:5, Insightful)
Many readers will tune out or find it even daunting to jump into a document that doesn't make an effort to present itself well. Even when the content is top notch, weak presentation will leave a poor first impressions placing the author on the defensive from the get-go. That's not to say good presentation will save a bad document... but every little bit helps!
If using CSS makes the documentation look more professional, more organized, easier on the eyes, and more consistient in presentation I say go for it. Just don't fall into the mistake of overdoing it and continuously changing the presentation... then effort will be wasted.
One final point: corporations (including Microsoft
Cheers!
misses the point. (Score:4, Informative)
If anything, CSS reduces the effort on style in LDP, not increases.
CSS would be just one line,
<link href="ldpstyle.css" rel="stylesheet" type="text/css"/>
Thats it. And that could be put in by php elsewhere. Heck, you could even exclude it alltogether and let people set their own style.
the pages could then concentrate purely on content. Don't say font/i/b if its not needed, use pre/tt/em/strong tags. e.g content, not style (pre formatted, typewriter, emphasized, strong text).
Don't use tables, if it isn't a table you are describing. use div's (and class=..., ok one more css usage, but not required).
I can't tell you the number of times I have been annoyed when someone writing a webpage assumed style tags like font (+size, -size) should be used, it makes a blind assumption about the viewer of the page, their resolution, fonts available etc. Far better to use CSS, and avoid any style at all in your content, just use a separate, includable css page for the style.
Far too many pages on the web use content related tags to do style (table) and style related tags to do content (b, i, font=courier). I for one would be thrilled to see CSS used in LDP to reduce this horror.
Gentoo docs are a good example (Score:5, Informative)
you go ldp!
Re:Gentoo docs are a good example (Score:4, Interesting)
I agree. Gentoo's docs are good.
As a webmaster, I'd love to see more major sites embrace CSS sitewide. Getting browsers up to date on the standard is long overdue. If people start visiting CNN, for example, and having problems, they'll be more likely to update their browsers.
I'm still doing transitional, but the next iteration of my site will probably be in XHTML 1.0 strict -- if I can convince management to go that route.
Non compliant browsers be damned!
Parent
Printing: Another Advantage of CSS (Score:5, Insightful)
I think it goes without saying that Linux folks should embrace CSS. It's sort of a no-brainer. That being said, another advantage is style-sheets for different media. In particular, LDP pages are likely to be printed (I printed one the other night for a Linux install where I didn't have a live Internet connection), and even with all the problems, a smart designer can make very nice print stylesheets that use serif fonts (not so good on screen, very good on paper from a readability standpoint), add banners that print on each page, etc. This assumes a well-structured document that the CSS is styling, but that's a big advantage.
Readability!!!! (Score:5, Insightful)
And then I realized. It wasn't necessarily high qualty nor at the time did it contain better content than the guides for Debian and Red Hat. It was presented in a much cleaner format using CSS and a nice clean layout. Since then, the quality of the gentoo documentation has only improved.
Compare this gentoo page [gentoo.org] with this TLDP page [tldp.org].
See the difference? They both contain useful information. The TLDP documentation makes me feel like i'm reading a legal document. Blegh! The gentoo document is much less harsh on the user.
This is scary, considering that gentoo is widely considered one of the most difficult of the linuxes to use, as it contains absolutely no installer. Thanks to the clear documentation, I actually perfer the gentoo installation process over fedora's, as it's easy (thanks to the documentation), and gives me a tremendous amount of control. I think this fact can only be capitalized by the fact that I use a mac 95% of the time as my desktop machine.
Please... add some color. It helps. Lots of people are visual learners. It just so happens that most linux users aren't (Reading a monotonous 26-page manpage on ls of all things makes me want to gouge my eyes out)
Content dammit! (Score:5, Insightful)
I'm a FreeBSD user who has to dabble in Linux from time to time. So every time I need some Linux info I go to LDP. What I generally find are horribly out of date HOWTO's and incomplete manpages. Quality content is lacking. For example, the XFree86-HOWTO was last updated September 2001. Maybe not a lot has changed since then, but considering the sparsity of information in this document, someone could have at least expanded a bit on several areas. Another example is ALSA. This was recently added to the 2.6 kernel, but the HOWTO was last updated November 1999!
So go ahead and work on your CSS. But find out who's in charge of content, and give them a swift kick in the butt!
p.s. Don't go too wild on the CSS. Make it use the standard DocBook-XSL produced HTML. For a good example see FreeBSD's stylesheet. It's not going to win any NEA grants, but it gives a consistant professional feel to all of the FreeBSD HTML docs.
CSS helps structure, too (Score:4, Insightful)
W3C Core Styles (Score:5, Interesting)
Sure, use CSS! But if you're short of time/expertise, don't reinvent the wheel! Use the W3C Core Styles [w3.org].
And if none of those style sheets quite tickles your fancy, you can use one as a base to modify.
Absolutely (Score:4, Interesting)
CSS is the way to go. It makes it much easier to maintain pages, it means the document authors don't have to be the style managers, and it means less to download. With care CSS can be used to make pages that look very nice in a graphical browser and still function well in lynx.
Another advantage is the ability to have styles based on media. Display ads (if necessary) on the viewed pages but hide them on the printed (saves paper and ink/toner).
I use CSS so that I don't have a lot of formatting to get around when I want to update my web pages, or to make the programming easier.
<p align="center"><font size="4">My big centered paragraph</font></p> is amuch messier than <p class="parcent">My big centered paragraph</p>
Re:Here is what needs to be done (Score:5, Funny)
- "professional" anything. +10 points
- Advocates using "Lynx/Links", "Dillo", "Netpositive" and, my favorite, "Geckos" to test websites. +15 points
- "CCS'ed" documents. +5 points
- "also include the FONT SIZE, bgcolor and Bold or Italics tags." + 50 points. (apparently Slashdot subscribes to this ideology)
- "use HTML markup for heavy layout stuff, because most of the browsers above won't be able to handle it." +1,000 points
- As of my previewing, being scored at +3 insightful, +1,000,000 points
I am very impressed.Parent
Re:Here is what needs to be done (Score:5, Informative)
No, this is an incorrect view. CSS is about separating CONTENT and PRESENTATION. That means no font, bold, or italic tags. This is all done in the style sheet. Additionally, font tags, etc always take precidence over style sheets.
By using proper XHTML (or HTML 4.0) and sticking to valid tags (heading tags, emphasis, lists) the page will automatically degrade nicely and be viewable in ALL BROWSERS. This includes lynx and other text only browsers.
The browsers that support CSS will use it, and it will look prettier for them, and browsers that do not support it will still display the content perfectly even though fonts, etc could be wrong.
Also note that by using CSS, the site will be easier to maintain. The removal of font, bold, italic, and underline tags will also make the site lighter and faster. Note that CSS is cached by the browser, so that file only has to be downloaded once.
Please look at The CSS Vault [cssvault.com] and CSS Zen Garden [csszengarden.com] as great examples and references. CSS Vault has page after page that justify the use of CSS and valid XHTML. Also notice that if the browser cannot use CSS, the site still renders all the content properly.
An important additonal note: By using proper XHTML and CSS, the disabled will have access to the site in a much easier fashion due to the lack of tables being used for markup (tables only for data!), and the simpler code. This is for special screen reading browsers.
Parent
Re:Here is what needs to be done (Score:5, Informative)
Ahem. This is completely silly. Well structured documents--a prerequisite for good CSS--degrade *better* in browsers like Lynx because the underlying tag structure reflects the logical document structure.
Why would anybody do that? Modern browsers like Firefox are actually zippier, even on older hardware, than Netscape 4.xyz. A designer should think about how to make the page degrade because many of the browsers you mentioned choke on some CSS. But there are lots of tricks for hiding the CSS from those browsers, and if you do, then the user still gets a nice, logically structured document.
Anyway, CSS isn't all that hard to do right. I just did a site that looks really nice and polished and works in every browser (IE, Moz, Firefox, Safari, Camino, Konq, Opera, Lynx) on tons of platforms (Windows 98/ME/2000/XP, Linux, OS X, OS 9)...and it worked on the first try -- I didn't have to change a single thing (rsvp.uchicago.edu). I tested it on all possible combinations of those I could think of and it looked nice (and in the way I expected) on all of them.
Finally, I can't imagine a situation, except using minimal HTML 4, which would be silly, because it'd practically be XHTML at that point, where it would be heavier that the XHTML/CSS equivalent. Even if the stylesheet is relatively large, say 300-400 lines (I'm pushing 500 on a site I'm working on), it typically downloads once and then gets cached, at which point all subsequent pages that use that stylesheet will only download the nicely structured document.
Parent
Re:Lack of CSS standardization (Score:4, Informative)
Seriously. If CSS1 is used exclusivly, and linked to the pages using @import, there should be no problems at all
Parent