Some of the fonts specified are only available on windows, which gives zen an inconsistent look in linux, at least on my system (debian etch with firefox 2.0.0.1):

1. arial,helvetica,clean,sans-serif
This is OK, my default sans-serif font is narrow like arial. But that might not be the case for all distributions. Suggestion: prepend "Nimbus Sans L".

2. Verdana, Arial, Helvetica, sans-serif
This is a problem, Verdana is supposed to be a wider sans serif font. Prepend "Bitstream Vera Sans", which looks more like Verdana.

3. verdana
In a number of places, verdana is the only font specified. If it is unavailable, the default font, often Times is used. Suggestion: Prepend "Bitstream Vera Sans", append sans-serif.

3. "Trebuchet MS", Arial, Helvetica, sans-serif
Same problem as item 2. Prepend "Bitstream Vera Sans".

4. Profont, 'lucida console', 'Courier New', Monaco, monospace
On linux systems, the monospace font of choice if often Bitstream Vera Sans Mono for it's readability. However, Courier New might be substituted with Courier. Suggestion: prepend "Bitstream Vera Sans Mono".

My suggestions will of course affect windows computers where the Bitstream fonts are installad (i.e. openoffice is installed). But I don't consider this a problem since the Bitstream Vera fonts are among the best web fonts available.

Comments

zirafa’s picture

I'm starting to think maybe having these type of things included as "Zen add-on's" would be cool. Same way a module has contrib modules, maybe we could have extra .css files you could download for linux support, windows support. That way we can handle the edge cases separately and keep zen pretty lean. I want to avoid a situation where Zen becomes bloated as it tries to handle every OS/Browser bug.

jjeff’s picture

While I agree with the bloat issue, isn't it the goal of webdesign to address the cross-browser needs (within reason). I don't think that adding a few font names into the family sets can really be considered "bloat".

I'm certainly doing other things to bloat this theme, but I don't think adding a few fonts would qualify for that criticism.

I'll stick these in when I get a free moment.

perf’s picture

Thanks, appreciate the effort.

To argue zirafa's point: Downloading a plugin won't help since this is a server, not a client issue. And using specific fonts only available in windows while leaving others at the default is hardly what i would call a "OS/Browser bug". I would call it bad design, or perhaps a deliberate decision that it's not worth the effort to support the minority who don't run windows. But when it is the other way around, i.e. when things don't look right due to IE's numerous CSS bugs, almost no designer will hesitate to add all kinds of CSS tweaks.

There is however another interesting approach to resolve this issue: If zen only is intended to be a base for subtheming, why not leave all fonts at reasonable defaults (sans-serif and monospace)? On the other hand, including the necessary fonts in a base theme is of course a good example for subthemers. And if there is one theme that should try hard to be compatible with all browsers, it is zen. Otherwise the zen garden ambitions aren't worth much.

By the way, the theme at drupal.org (Bluebeach) uses exactly what I suggested (Bitstream Vera fonts listed before the MS fonts).

zirafa’s picture

While I agree with the bloat issue, isn't it the goal of webdesign to address the cross-browser needs (within reason). I don't think that adding a few font names into the family sets can really be considered "bloat".

I'm certainly doing other things to bloat this theme, but I don't think adding a few fonts would qualify for that criticism.

I was merely trying to suggest an alternative solution for edge cases that aren't common to every browser. In the same way we've talked about possibly making an IE.css file to separate out all those issues. My point wasn't to just completely ignore the issue or to not deal with solving browser related issues, my point was I'd like to see edge cases be separated out for clarity. If the CSS relates only to linux maybe it should be included as a linux.css. Same with IE bugs. Or maybe the offensive code should be removed. Perhaps "bloat" was the wrong word to use, but I'm not really sure how you interpreted my post as criticism of zen. Anyways, I was just throwing out some possible ideas to deal with this issue and others like it in a more long term fashion, and it may have been tangential.

Downloading a plugin won't help since this is a server, not a client issue.

How is this a server issue? The client's browser is what reads the CSS and renders the appropriate font.

perf’s picture

Thanks for the clarification. Your idea is quite interesting. However, if the base theme was 100% XHTML 1.1/CSS 2.1 (3.0?) it would probably look bad in many browsers. If someone downloads a theme which doesn't render correctly he tries another theme instead. (By the way, do Microsoft hire really poor programmers, or were they forced to keep so many IE6 CSS bugs to be backward compatible?)

I believe that the base theme must work around the most common bugs, but keeping the style as simple as possible will of course minimize these workarounds. Thus my alternative suggestion to only use generic font names.

When I say that this is a "server issue" I mean that it is a design issue. It shouldn't be the responsibility of each user to install missing fonts, if at all available, thats bad design. Good design is to use generally available fonts, or to specify alternatives for each operating system. If someone decides to use Verdana, it's because they want a wider and more readable sans-serif font than Helvetica/Arial. But Verdana is typically only available in Windows, and not specifying alternatives for other OS is bad design. To me as a linux user is says "I don't care" or "I don't know better".

Remember the original idea behind HTML: platform independence.

jjeff’s picture

I apologize for heating up this thread.

I think zirafa's point is good :: keep bloat down.

I think perf's point is good :: acknowledge Linux.

I'm going to add some fonts into the family listings to support Linux. I'm also going to go through and try to clean up a lot of the files so that there's not a) so many files and b) the code is a little less confusing.

There's also quite a way to go before I feel like we have a truly simple-and-configurable starting theme. I've been doing a couple of projects recently based on Zen and I find that there's a LOT of changes that I need to make to the main styles sheet just to get it to a "zero" starting point. I'm curious what we can do to clean that up too.

JohnAlbin’s picture

Status: Active » Fixed

Fixed in 5.x-1.x-dev.

Anonymous’s picture

Status: Fixed » Closed (fixed)