Håkon Responds to Questions About CSS and...
> Where... by bcat24 > > Do you think the W3C development process is too slow? I know that > you guys want everything to be perfect, but it seems to take far > longer than necessary. CSS 3 shows promise and I wouldn't want it > to die a slow death in standardization.
No, I don't think W3C is too slow. W3C isn't the bottleneck, browsers are. The dominant browser on the web hasn't been updated for years, and it doesn't make sense for specifications to get too far ahead. Rather, the CSS Working Group in W3C has focused on specification maintenance and achieving interoperability between implementations. This work is not so glamorous and some people — even within W3C — would prefer if they concentrate on new specifications. However, I think the focus on interoperability (which has resulted in CSS 2.1) has been crucial to the success of CSS.
CSS3 is a set of specifications that are developed more or less independently of each other. The best way to push a specification forward is to implement it. In the past year, we've seen some encouraging CSS3 implementations come along. For example, Mozilla supports multi-column layouts, Opera supports media queries, Prince supports cross-references and Safari supports borders and backgrounds. A few years from now, I think a select group of CSS3 modules will be interoperably supported in all browsers.
> Why is CSS such a good idea but a pain to use? > by rar > > CSS is clearly very useful for separating style from content. But > apparently people tend to have problems when using it for layouts. > Would you say this is because people have not yet understood how to > properly do layout in CSS, or is it CSS that is lacking in this > area? What can be done to improve the situation? --- Would the web > benefit from HTML and CSS being complemented with some kind of > "layout language"?
I think layout and style should be tackled by the same language and the two are intertwined. Trying to split the two is like splitting the HTML specification in two, one specification describing inline elements and the other describing block elements. It's not worth the effort.
I think CSS is capable of describing beautiful and scalable layouts. The CSS Zen Garden has been a eye-opening showcase of what is possible today. If MS IE had supported CSS tables, another set of layouts would have been possible. So, there is still lots of potential in the existing CSS specifications which should be the next milestone. Beyond that, the CSS Working Group has started work on a new CSS3 module for advanced layout. Feedback is welcome.
> CSS Evolution! > by eieken > > Is the wave of webpages designed completely in CSS what you > intially intended when you came up with CSS? Do you see that > changing? Is that good or bad?
I saw a clear need for a web style sheet language when proposing CSS in 1994. I also wanted CSS to fully describe the presentation of a web pages -- not just add some styling. All in all, I think it has turned out quite well. It has taken longer than I expected, but the scale -- due to the growth of the web -- is more than anyone could imagine.
I used "I" too many times in the previous paragraph. It's important to realize that CSS is a community effort rather that one man's work. Bert Bos joined me early and we worked out the initial designs on a whiteboard during the summer of 1995. The www-style mailing lists and the W3C CSS Working Group have also been crucial in ensuring the success of CSS.
If you're interested in the history of web style sheets, you'll find plenty of material in my PhD thesis on the subject.
> Two questions (cut to 1.5 by editor Roblimo) > by Dolda2000 > If you were allowed (perhaps by court order, which wouldn't be > unthinkable) to force Microsoft to do one (1) change in Internet > Explorer, what would that be?
I would force them to support one (1) single web page before shipping IE7, namely Acid2. By using a tiny amount of resources to get Acid2 right, Microsoft can save web designers and users endless amounts of frustration in the future. It would also be an honorable thing to do. This is what Microsoft's W3C representative wrote in 1998:
Microsoft has a deep commitment to working with the W3C on HTML and CSS. We have the first commercial implementation of HTML4, we were the first vendor anywhere to implement even portions of CSS, and we have put a tremendous amount of energy into seeing CSS mature to Level 2. We are still committed to complete implementations of the Recommendations of the W3C in this area (CSS and HTML and the DOM).
May I have one (1) more change? Please? Then I would make IE7 support TrueType downloadable fonts. Microsoft's record in fonts isn't that bad. They made their core fonts available for anyone to use, and IE supports downloadable fonts. Unfortunately, only the proprietary EOT format is supported. A few lines of code would be sufficient to support zipped TrueType fonts as well, and this would unleash a new wave of typography on the web. (To protect yourself, make sure you use a browser where author style sheets can be turned off — Shift-G in Opera). > As a bonus question: What do you think of Slashdot's CSS? ;)
The new design looks great! The style sheets behind the scene are more complex than what the average web page needs. But, we wouldn't expect anything average from Slashdot, would we?
> 6) Opera > by taskforce > > Opera 9.0 seems to offer a lot of decent additions to Opera's > standards pool. How satisfied are you personally with the work the > team has done on implementing standards, and is there anything in > there you feel is superflous and anything you would have preferred > to see which wasn't in there?
I'm very proud of the standards support in Opera 9. Acid2 is an obvious favorite of mine and seeing that smiley face makes me very happy.
Among the more experimental features is support for Audio in HTML5. Web applications can now make sounds in a sensible way! Combined with the canvas element, developers can create Flash-like content without resorting to a proprietary format.
Having support for Bittorrent is also great. From a technical point of view, it makes much sense. Also, it's a political statement of sorts.
During the development of Opera9. Geir Ivarsøy, who founded Opera with Jon von Tetzchner, died after fighting cancer for years. Geir did a spectacular initial CSS implementation in Opera, thus convincing me to join the company. In music, the 9th is legendary. Beethoven, Schubert, Bruckner and Mahler all did 9 symphonies. Opera 9 was Geir's last symphony.
> Included styles, aliases
> by Spy der Mann
>
> I always wanted to have "included" substyles or "aliases" in my
> CSS definition, to save redundancy.
>
> (For includes)
>
> .class1 { color:#ff0000; }
> .class2 { background-color:#ffffff; }
> .class3 { include:class1,class2;font-weight:bold; }
>
> (For aliases)
>
> @alias color1 #ff0000;
> @alias color2 #ffffff;
> @alias default_image url('/img/image1.jpg');
>
> .class1 { color:color1; }
> .class2 { background-image:default_image;background-color:co lor2; }
>
> This way we could change colors or images for a whole webpage
> by editing a reduced number of lines.
>
> Had you considered any of these ideas in the past? If so,
> why were they rejected?
Yes, aliases and constants have been considered. As David Wheeler noted, "Any problem in computer science can be solved with another layer of indirection."
CSS is already an indirection. Instead of putting properties and values directly on elements, it associates properties and values with selectors. What you (and others) are proposing is to add another layer of indirection. By doing so, one could possible write shorter, more manageable style sheets. However, there are also some downsides. It requires a new syntactic construct (@alias) and implementations must be able to remember a list of aliases. What if aliases are defined in one style sheet and referenced in another -- should that work? If so, what if the first style sheet isn't available?
For CSS1, the downsides of aliases were considered more significant than the benefits.
> Definition of pixel > by Sara Chan > > The word pixel meant "picture element", but CSS redefined it >to mean something quite different (a particular subtended angle >of view [w3.org]). This causes confusion: CSS pixels are not pixels. >(Indeed, I have seen misinformed comments on Slashdot due to >that confusion.) > > My question is this: why call the subtended angle a "pixel", instead of >something else (e.g. "subangle")? If CSS wanted to use the subtended >angle for something, that is fine, but calling it a pixel seems to follow >the approach of Humpty Dumpty "When I use a word, it means just >what I choose it to mean".
In most cases, a CSS pixel will be equal to a device pixel. But, as you point out, the definition of a CSS pixel will sometimes be different. For example, on a laser printer, one CSS pixel can be equal to 3x3 device pixels to avoid printing illegibly small text and images. I don't recall anyone ever proposing another name for it. Subangle? Personally, I think most people would prefer the pragmatic "px" to the non-intuitive "sa".
> Vertical CSS Support > by infestedsenses > > As a developer who works with CSS every day, I find one > complication that continues to bother me in my daily work. > Support for CSS has always been good on the horizontal scope, > but vertical positioning has always been quite complicated. > Alone the procedure to affix a footer to the bottom of a screen > in dependance of the amount of content is unnecessarily difficult, > spawning hackish solutions such as "footerStickAlt" > [themaninblue.com]. Centering an object in the dead center of a > page also requires strange procedures such as this one [wpdfd.com], > which still aren't ideal (try making the viewport really small). The old > table method provided much easier methods for this. What are your > thoughts on this and do you see improvement following in future > CSS revisions?
Indeed, the CSS formatting model allows more control horizontally than vertically. This is due to (typically) having a known width, but an unknown height. As such, the height is harder to deal with.
However, CSS2 fixed positioning allows you to place content relative to the viewport (which is CSS-speak for window) instead of the document. For example, by setting position: fixed; bottom: 0 on an element, it will stick to the bottom. This works in Opera, Safari and Mozilla-based browsers. IE6 doesn't support it, however. It remains to be seen if IE7 will support it.
> About Microsoft... > by Chabil Ha' > > With MS's next browser release (IE 7), you mentioned in other > interviews that their decision to not supprt CSS2 was more a political > decision than a mechanical one. Aside from their obvious desire to > dominate the world, what politics do you think are in play that make > them not want to conform to the standard, and what do you think would > change that landscape so that they would have some initiative to > fully support it?
Great question. It's quite clear that Microsoft has the resources and talent to support CSS2 fully in IE and that plenty of people have reminded them why this is important. So, why don't they do it? The fundamental reason, I believe, is that standards don't benefit monopolists. Accepted, well-functioning, standards lower the barrier of entry to a market, and is therefore a threat to a monopolist.
From that perspective, it makes sense to leave CSS2 half-implemented. You can claim support (and many journalists will believe you), and you also ensure that no-one can use the unimplemented (or worse: buggily implemented) features of the standard. The only way to change the equation is to remind Microsoft how embarrassing it is to offer a sub-standard browser. And to use better browsers.
Another reason for not making a IE too good is that it will compete with Windows. A modern browser is an application platform; the combination of HTML, JavaScript, CSS and DOM allows developers to target the web instead of Windows, Linux, or Mac.
> From linvir > How long since you last used Linux?
I'm using it right now. Ubuntu on a IBM Thinkpad X41 is the environment I live in. Ubuntu rocks -- especially with Opera on top! (And Emacs right underneath.)
> From Rob T Firefly (844560) > Why the curly brackets?
The initial CSS proposal didn't use them, instead relying on newlines to separate statements. TimBL didn't really like that and I therefore borrowed the curly braces from the C programming language. The syntax for comments came along as well. I think it works quite well.
> why not XML? > by slashdot.org > Simple question (hopefully simple answer ;-)): why > did you not use XML?
The simple answer is that the development of CSS preceded XML by a year or so. However, if XML had been available, would we have used it? Probably not. And I suspect Brendan Eich of JavaScript fame would answer the same way on behalf of his language.
XML is a great syntax for structured data, but not suitable for all languages. Still, I think the SGML-based syntax for the FOSI style sheet language.
> Padding > by Anonymous Coward > Why was the decision made to make padding apply outside > of the width of a 'box', rather than inside, which would seem > to make more sense?
It makes sense in some situations, but not in others. For example, when a child element is set to width: 100%, I don't think it should cover the padding of its parent. The box-sizing property in CSS3 addresses this issue. Ideally, the issue should have been addressed earlier, though.
> by nuzak > why not float: > DSSSL had this sort of thing solved before HTML even existed, > let alone CSS. But scheme is too scary and icky, and the W3C > believes in a principle of least power, so CSS has to be fully declarative, > static, and crippled until patched later.
You're wrong about DSSSL -- it didn't support floating text (as in having text wrap around images) at all. And the DSSSL specification only became publically available around 1996, years after HTML.
> by MagicM > How frustrating is it to write a specification knowing > that you're at the browser vendors' mercy?
That's part of the game. I don't think any specification has a birthright to be fully supported by all browsers. There should be healthy competition between different specifications. I believe simple, author-friendly specifications will prevail in this environment.
Microformats are another way of developing new formats. Instead of having to convince browser vendors to support your favorite specification, microformats add semantics to HTML through the CLASS attribute. And style it with CSS.
> New standards > by iamsure > > In your work at Opera, you have clearly paved a path that includes > going beyond the W3C standards. Whether it is WhatWG > implementations, or new functionality specific to Opera (2dgame), > you are pushing into new territory. Can you explain why W3C isn't > sufficient, and why efforts at Opera to expand beyond the standards > differ from Microsoft's embrace/extend model?
It's a fair question. The WhatWG was set up when it seemed as if W3C didn't care much about browsers anymore. That has definitely changed and work items from WhatWG are now channeled into W3C (e.g., XMLHttpRequest).
At Opera, we sometimes include experimental features before they have been standardized. When this happens they are labeled as such, but we still try to document them. For example, we support some Opera-only CSS properties for XML. If these features gain traction, we are happy to work with other organizations to standardize them. If they don't become popular, the features will most likely disappear.
> Beyond HTML > by pr1000 > How far can CSS be taken beyond the web page--that is, > have generalized or non-web specific features for such things > as page formatting or type setting? Do you plan/wish/hope to > take it farther than it currently is?
Yes, I think it's possible to take CSS further in several directions. I'm eager to see CSS being used in paper-based publishing and I joined the board of YesLogic — which makes the Prince XML to PDF converter — to make sure they added my favorite features. Bert and I used Prince to generate PDF from HTML and CSS sources for the third edition of our book. W3C just published a new Working Draft which describes features for printing, e.g., footnotes, cross-references, and even generated indexes.
For mobile units, I think Media Queries will be important. For example, they can express that large images should not be sent to mobile devices.
Another great opportunity for CSS is Web Applications. Just like documents, applications need to be styled and CSS is an intrinsic component of AJAX. The "AJAX" name sounds great, but allow me to propose a few alternate spellings that I find more accurate:
- AJACX: Asynchronous JavaScript, CSS and XMLHttpRequest
- ADJACS: Asynchronous DOM, JavaScript and CSS
- ADHJACS: Asynchronous DOM, HTML, JavaScript and CSS
- AJAHCS: Asynchronous JavaScript, HTML and CSS
- AJACS: Asynchronous JavaScript, HTML and CSS
Opera, Mozilla and Safari developers are collaborating in the WHAT WG and in W3C to make sure we have interoperable specifications for AJAX. I mean, ADHJACS.
> by crush > Is the difficulty of producing a layout that consists of > three or more columns of equal height justification for > adding some new feature to the specification to make this easier?
I don't think so. CSS2 defines a table layout that can be used for this purpose. The problem is, and I'm repeating myself here, that the dominant browser doesn't support it. Adding yet more features to the specification wouldn't help.
> How come, we um, lie?
Right. My name is, um, a bit troublesome to pronounce in English. But I'm a nice person who generally tells the truth. I often tell non-Norwegians that my first name is pronounced "howcome". That's close, but not quite. It does make for a great email address like howcome@opera.com, though.
So I may be a Lie, but I'm just a little white one :-)
.. one would have to ask, "What is CSS, and do we think it's involved in these discusions some how?"
"Snatching defeat from the mouth of victory on a daily basis."
Okay, it looks like I am certifiably blind. Time to go adjust some font sizes...
This guy's the limit!
Should I be pleased that he answered my question and did so reasonably, or disappointed that that particular beloved gripe of mine now has a reasonable answer from Himself floating around?
Slashdot Burying Stories About Slashdot Media Owned
The formatting for the questions is absolutely horrid.
What I have to ask is, "Is CSS to blame for the tiny text in boxes with horizontal scrollbars?"
What a load of crap that comment is. Of course you use corefonts. It's the de-facto standard, it's cross platform, and it's what most people use. You pretty much don't have any other choice.
I just don't think that name has the same hype potential..
AJACS definitely seems to apply better than the AJAX that everyone calls it at the moment: when was the last time you saw XML being thrown over xmlhttprequest, as opposed to plain HTML/CSS?
I also definitely agree that it's the browser developers (particularly Microsoft) who are dragging their heels on CSS support. Heck, my copy of Firefox 1.5 fails Acid2 hard; fortunately, I know that work is being done there to gain compliance before too long.
As for printing with CSS, I'm a convert. The last document I wrote that wasn't HTML/CSS was my college final project report, about 2 years ago (that was in TeX); since then, everything I've done has been HTML, styled for screen and print. Heck, even my resume's HTML.
xkcdsw: the unofficial archive of Making xkcd Slightly Worse
The ability to use position:fixed was not exactly what people were talking about.
Acid2 link from article is dead. You can find the test here.
Unpleasantries.
Only IE was singled out (of course), but there are not many browsers that pass ACID2...
Yes, I'm aware Safari does and Opera 9, but Firefox sure the heck doesn't (not unless you wanna roll your own copy anyways)...
So the two biggest installs of browsers don't pass ACID2, but it's fine to only mention the fact that IE fails it. Especially when Microsoft said that IE 7's isn't tested to pass ACID2.
The "AJAX" name sounds great, but allow me to propose a few alternate spellings that I find more accurate: AJACX: Asynchronous JavaScript, CSS and XMLHttpRequest ADJACS: Asynchronous DOM, JavaScript and CSS ADHJACS: Asynchronous DOM, HTML, JavaScript and CSS AJAHCS: Asynchronous JavaScript, HTML and CSS AJACS: Asynchronous JavaScript, HTML and CSS "GNU/AJAX"? :P
Send email from the afterlife! Write your e-will at Dead Man's Switch.
> The "AJAX" name sounds great, but allow me to propose a few alternate spellings that I find more accurate:
:P
> AJACX: Asynchronous JavaScript, CSS and XMLHttpRequest
> ADJACS: Asynchronous DOM, JavaScript and CSS
> ADHJACS: Asynchronous DOM, HTML, JavaScript and CSS
> AJAHCS: Asynchronous JavaScript, HTML and CSS
> AJACS: Asynchronous JavaScript, HTML and CSS
"GNU/AJAX"?
Send email from the afterlife! Write your e-will at Dead Man's Switch.
Thanks for taking the time to answer my question. The article was definitely an interesting read. Good job, Håkon.
PS: Why don't you put up a sound clip of how you pronounce your name?
So you are running Opera on top of Ubuntu and Ubuntu on top of Emacs? That's my kind of Emacs user!
Indeed, the CSS formatting model allows more control horizontally than vertically. This is due to (typically) having a known width, but an unknown height. As such, the height is harder to deal with.
However, CSS2 fixed positioning allows you to place content relative to the viewport (which is CSS-speak for window) instead of the document. For example, by setting position: fixed; bottom: 0 on an element, it will stick to the bottom. This works in Opera, Safari and Mozilla-based browsers. IE6 doesn't support it, however. It remains to be seen if IE7 will support it.
That's an interesting point, given the profusion of video monitor sizes and their associated resolutions (800X600, 1024X768, etc.), and the variety of browsers and the explosion of toolbars now available. How do you define "height" in a browser? There's certainly a fixed viewing area based on all the above factors, but it's so varied from user to user that it makes it hard to come up with a good idea of how big something should be on the page. You can use relative sizes, but that only works if the content is scalable; fixed sizes are good for a range of resolutions, but as resolution increases it tends to make things become squashed vertically.
It's the bane of web development -- how scalable do you make your content? Do you care that much about old browsers and how things render? How many people out there are realistically still using IE4 and Netscape 4?
GetOuttaMySpace - The Anti-Social Network
No worries. I am sure you will figure out a way to attack his answer in the coming months.
OT: I for one am happy to sign a "CSS tables NOW in IE6/7" petition.
barack to the future?
The "AJAX" name sounds great, but allow me to propose a few alternate spellings that I find more accurate:
I sincerely hope he was kidding about this - if not, it sounds like a Stallmanesque attempt at renaming something that already has a name.
Jesus, why didn't he just insist that everybody calling "CSS/AJAX"
Combined with the canvas element, developers can create Flash-like content without resorting to a proprietary format.
What excites me the most is that the canvas element has the ability to return the data currently displayed in it. If we can get some javascript together to let the user draw in the box, we'll have a web-based solution to all of the signature capture stuff we've been struggling with. If you want to get a signature on the web you basically have to generate a PDF, use a PDF plugin to let the customer sign the PDF, then use a separate file upload page so that the user can browse around, figure out where the signed PDF got saved, and upload the whole PDF again. There are plenty of less business-oriented uses as well, such as just letting the user draw and save stuff, as well as its stated purpose of presenting animation and generated graphics to the user.
Personally, to me this has been microsoft's biggest failing and proof that a monopoly does not always produce the best product. The Tablet PC version of IE should have had a handwriting capture element that would upload a GIF or something based on what was written there. Why deal with shitty handwriting recognition when Journal could have directly interfaed with the web?
I remember watching a Channel9 video. If my memory does not deceive me, Microsoft have 4-6 people working on IE7, and most of their work was to fix bugs, mostly security, and change the interface. With so few resources given to IE after it has been neglected for many years, one cannot expect Microsoft to provide a decent browser. Based on the fixes (CSS, transparent PNG, etc.), IE is moving into the right direction. However, as we all know, they tied it with Windows releases. Assuming that IE8 will be at the same standards support or better than Opera/Firefox and further assuming that the next version of Windows is released 3-5 years after Longhorn (Vista), IE8 is very far away. For a web designer, which I am, IE is a hell. For programmers, think of sending a compiler valid code, and instead of generating the executable properly, it generates rubbish, or it whines that proper syntax is invalid, or it generates 2+2=5.
You must use a recursive acronym, like this:
ADHJACS: ADHJACS Doesn't Help, Just Amplifies Confusion and Silliness
Good luck with your quest, Don. Say hi to Sancho for me.
My amazing wife - Artist, Author, Philosopher - Laurie M
The link in the answers seems to be broken. The page can be found here: http://www.webstandards.org/files/acid2/test.html
>
> What I have to ask is, "Is CSS to blame for the tiny text in boxes with horizontal scrollbars?"
No, that's the new Slashdot layout. But the guy who knows about CSS thinks it's cool, so suck it up with the rest of us.
Maybe the Slashdot layout's choice of the Microsoft system font, probably the least-readable sans-serif font of all, is part of a nefarious GNU/plot (heh, didn't see that pun coming! :) to get those of us stuck on Windows to finally migrate, or to learn how to use Greasemonkey)
(I cheated - I went to low-bandwidth, which gives me the old serif font back, and hit Ctrl+ on every page to bump the size back up to the old font size. Yeah, it's a kludge, but it's great motivation to learn Greasemonkey. )
I understand that people can get aggravated trying to get others to pronounce their names, but it always comes across as incredibly condescending when they do that "You can't really pronounce my name but here's a comical substitute!" thing. (The most egregious was in Clinton's first campaign, when George Stephanopolous was telling people to pronounce his last name "stuffinenvelopes".)
Especially in a multicultural country, people are used to learning unfamiliar names. If I can handle Thai, Cambodian or Hindi names, I can deal with a damn Norwegian!
What I'm listening to now on Pandora...
You know, somebody really should make an online petition for display: table support in IE 7. I'd sign it in a heartbeat.
Why oh why is some of the text in the topic text so small as to be unreadable? (for the sight disadvantaged or blind drunk (um, not admitting anything, or anything)).
There is no reason to reduce font size below comfortably readable except stupidity
Am I the only one who hates flash and doesn't visit web sites that use audio?
In his news.com editorial, Lie recommends people download Larabie's "Goodfish" family even though the licensing for Goodfish isn't any better than Microsoft's Corefonts, thus a major portion of his editorial makes little sense.
/. thread, complete with links.
Goodfish faces many of the same practical problems Microsoft's Corefonts families do—incomplete sets of glyphs for certain sets of characters making the font families not so useful or downright useless for some users. Goodfish's primary distribution site (myfonts.com) also wants you to register with them before downloading gratis copies of the font families. This registration is framed as though it's a bonus for the user: "Because MyFonts.com's products are all downloadable, our customers often find that they need to return at a later date to download their fonts again." but if the fonts were free software, I could get a replacement copy from anyone, even my next-door neighbor or some online repository which means I benefit from mirroring and I can get the font I want without the hassle of registration.
Goodfish is only licensed for 1-5 users to use the fonts (and it's not clear how Larabie would enforce this in the US without a license manager).
Furthermore, the hypocrisy of the last part of his essay cannot be overstated: all proprietary software distributors are monopolists. When you get the proprietary Opera browser, you are prohibited from fixing the bugs, improving it, or sharing your improved copy with others. The Opera 9 license even prohibits running the program on certain devices (again, without a license manager it's not clear that this portion of their license is enforcible in the US). If you want any changes, you have to go to the proprietor--the monopolist--for those changes. There is no other place to go because everybody else is prohibited from helping you. Opera won't distribute to you a copy of the Opera browser source code under a free software license to allow any of this activity.
Yet here's a monopolist decrying the state of affairs for fonts on the basis that Microsoft's fonts don't grant the user sufficient freedom.
I appreciate the bad position the user is in with fonts on the web, but the way out is not to build a dependence on fonts you can't use, inspect, share, and modify anywhere you want for any purpose. The way out is to find free software fonts or make them, build on them to improve them, use them, and distribute the free font with the freedoms intact so the community benefits. Some free software fonts have been named in this
Digital Citizen
Forgive me if I'm misunderstanding this comment, but I think this fails to solve the common case. Most often, we would like to have a footer that is at the bottom of the viewport when the content is smaller than the viewport, but always moves with the bottom of the content. The way I understand it, this sticks your footer permanently to the bottom of the viewport, which is not as useful IMO.
That said, I seem to recall finding a hack to make CSS do exactly what I have described (footer at the bottom of the viewport or content, whichever is lower). Unfortunately, I don't remember what the hack was.
Good interview, but I have to disagree with this: "The dominant browser on the web hasn't been updated for years, and it doesn't make sense for specifications to get too far ahead."
Create the best design for the problems at hand and publish specifications. It's up to developers / vendors to implement it at whatever speed they wish. If the monopoly has no incentive to conform to standards there's no reason to wait for them to catch up. The rest of the world can move on and smart users can choose to switch.
Developers: We can use your help.
See? It's Stephanopoulos, not Stephanopolous :)
When I find some name difficult to pronounce or remember, it usually helps me to analyze the grammar of names in the target language.
There was a time when these English-Speaker-Confusing suffixes in Greek surnames actually meant something. Today, the son of "bar foo" is usually named "baz foo", but surnames weren't always so standardized, and many times they came out as indications of the father's name with a suffix that meant "the son of" . -opoulos (and -idis) mean just that, so the result would be something like "baz baropoulos" (baz, the son of bar). Other times, surnames were just puns. A famous example is Theodoros Kolokotronis, whose surname literally means "rock-ass".
The same thing apparently happens in english, for example with the -son prefix (johnson = the son of john). Several surname suffixes also have the property that they once were rather localized, so the surname of a person gives an indication of the geographical area of his/her ancestors heritage.
What's with turning pre into an iframe for 3 or 4 characters of scrolling?!
I mean, if you want to do this in some way to save readers from wide comments,
fine. But apply a class to the article contents to undo the god-awfulness.
Were that I say, pancakes?
... when someone calls and asks for 'Mister (something not even close to the correct pronunciation)', I can correctly answer 'nope', and hang up.
Of course, it helps that there are only 8 people in the US with my last name, and it has silent character and accents which aren't typically reflected in most American data collection.
Build it, and they will come^Hplain.
Wait, we're supposed to use tables if we want to do that? Isn't one of the talking points of CSS that we get away from using tables for layout?
I just used some CSS in my userContent.css file to make the font a legible one.
Conspiracy theories aside, it did prompt me to learn more about how Gecko browsers work.
Onto the article: I did feel disappointed in the responses; they didn't go very deep. I expected less glossing over and more details.
Er... there are licensing issues here. Not every TTF file you can get your hands on is licensed for generalized distribution. That's why MS has their embedding format - to respect the copyright of the font creators.
Coming soon - pyrogyra
If CSS (and SlashDot's use of it) is so
great, why am I being forced to horizontally
scroll every one of these questions?
Curious: I don't have to in Firefox or Epiphany.
> Why was the decision made to make padding apply outside > of the width of a 'box', rather than inside, which would seem > to make more sense? I've always thought of the box model as actual boxes, in a warehouse. You have the box, it's contents, the styrofoam peanuts for shipping, and space between other boxes on the shelf.
__
Thou hast besquirted me, O leotarded one.
He didn't reply to my +5 moderated question: http://interviews.slashdot.org/comments.pl?sid=189 030&cid=15570901
/.replied to it, and he didn't answer either.
Did I achive perfection? Is there nothing that can be said about what I wrote? No one on
Maybe it wasn't a question? It was though, - of the "do you think this is a good idea" type. And maybe "why didn't anyone else think of this".
-Ariel
No, the idiot who made this shitty design is. Its not CSS's fault when people do stupid things with it. Also, just use opera so you can Ctrl+F11 to fix all sorts of horrible horizontal scrolling problems.
It was me who asked about the defintion of pixel. Perhaps I didn't phrase the question well enough. Consider that as screen resolutions improve, a CSS pixel will have to be mapped to two physical pixels on a screen. So simple phrases like "the image is 100 pixels wide" will have two different meanings (depending on "pixel" = physical pixel or "pixel" = CSS pixel). I think that this is needless confusion, and the answer given by Håkon appears to be flippant.
Especially in a multicultural country, people are used to learning unfamiliar names. If I can handle Thai, Cambodian or Hindi names, I can deal with a damn Norwegian!
My Norwegian is a bit rusty.
Is this guy pronounced the same way? Given the importance of royalty gossip (sigh), it's hard not to hear that name at least once a week while zapping TV channels. At least here in Europe, where we only have royalty, not real celebrities like Ms. Hilton.
That small text is crazy for a professional site. I had to CTRL + Scroll to even see what it said. I thought maybe it was a joke about CSS being so crappy.
Saskboy's blog is good. 9 out of 10 dentists agree.
The author of the current Slashdot style perhaps, at least for the font size. Specifying a smaller font size than default, although common, should be avoided in most cases (possible exceptions might be copyright-type statements and the like).
That said, Firefox' default for monospace is slightly weird, as mentioned elsewhere in the comments. (The font is perfectly readable in Opera 9 at least.)
I blame the HTML markup for the annoying scrollbars. It would be more appropriate to use <blockquote> (along with sensible CSS) than <pre> for this.
It does. or at least it's starting to.
XML+XSLT is an effective way of taking any XML based information (like an article, a list of questions and answers, or even an existing web page) and re-formatting it in a sensible fashion. Since you then control the "layout" of the markup, it's easy to apply CSS to make everything as pretty as /.
Incidentally, using XML+XSLT also closes the gap between web sites, services, and plain old data sources... Proper support for XSLT is a close second on my list for browser support and interoperability.
And just think how powerful microformats could be if they weren't a hack... just saying...
Yeah, I'd like to thank Håkon for taking the time to answer my question, but it's not really the answer I was looking for.
position: fixed will stick a footer to the bottom of the viewport, but not to the bottom of a page (perhaps I am not using the correct terminology). That means that if the content is longer than the viewport, the footer will just overlap the content and stay put, while the content beneath it will continue to flow and scroll. What I meant was a footer that will always be at the bottom of a page "in dependance of the content" (as I mentioned). That means, it's at the bottom of a viewport until the content gets larger, which would then push down the footer accordingly. The lack of such a feature is the reason faux columns and hacks like the "One True Layout - Equal Height Columns" exist. I'm sure Håkon is very busy but perhaps he could spare a little more time to look at the examples I linked to in my initial question to get a picture of what exactly I am talking about.
The examples I mentioned work perfectly via tables without the browser knowing the exact height of a page. I know CSS works fundamentally differently but there must be a way to emulate the behavior?
parasight.de
"Hawk-on"
"W3C isn't the bottleneck, browsers are. The dominant browser on the web hasn't been updated for years, and it doesn't make sense for specifications to get too far ahead."
I tend to disagree. Just b/c MS can't/won't keep up doesn't mean that others can't. Opera and Mozilla are not too far behind the advancing CSS spec, and slowing down for IE will only stunt the other browsers' development. It's like putting the advanced kids in the remedial classes; it helps neither the advanced kids nor the struggling ones.
In fact, possibly the only way to force IE to update is by advancing the CSS spec at whatever pace is feasible, and as Mozilla, Opera, Safari, etc. implement it, IE is left behind. That's the only reason why MS finally reinstated the IE team to push out IE7, except it was over security concerns rather than platform advancement concerns. Not advancing the spec prevents the other browsers from leaving IE behind, giving MS no reason to upgrade IE.
Flying is easy, just throw yourself at the ground and miss. -Douglas Adams
Centralization breaks the internet.
How many CSS inventors does it take to screw in a light bulb?
They can't, because browsers won't support it.
Additional plugins are required to display all the media on this page.
I don't compare them on the basis of whether they abused their respective monopolies or not because that doesn't matter. Håkon Lie claims that Microsoft's font monopoly is an unrecognized (or perhaps under appreciated) leveraging of their monopoly elsewhere.
I'm also not making a legalistic argument. Looking at this from the user's perspective, it makes no difference whether antitrust regulation has caught up to what an organization is doing. I understand the significant market power, capital, popularity, and other business differences between the two monopolists. But those things aren't important here because the argument I'm getting at centers on user's freedoms.
Both organizations are monopolists. Users are not well-served to do business with monopolists, nor to become dependant on what monopolists offer (even if it's offered gratis). The Opera browser programs don't become more trustworthy, inspectable, sharable, or modifiable because the organization that distributes it has not been convicted for illegally leveraging a monopoly (like Microsoft has been in the US), or because Opera has not been found to have illicitly distributed software (like Microsoft was found doing in France).
Digital Citizen
If you want to pull in a IE hack stylesheet, check into the conditional html comments that IE supports. Much better than using a CSS-hack.
<!--[if IE]>....<![endif]-->
I agree it would be nice to see something this supported more universally.
Whenever I hear the word 'Innovation', I reach for my pistol.
It boils down to:
1. Delightful professional, simple and competent to the max,
of best technical readings. What an evening.
2. Whassup with supa techies, that they can't present question
in readable form? Scrollbars? But, why?
Get some respect for yourself, coolest of geeks. Or are you punks?
Everybody hangs around here, don't you realise?
3. It is special pleasure to see high target professional working
at the company, product(s) of which you personally admire.
I'm probably old, too sensitive, but feelings, they are, nevertheless, REAL. Good and further best of luck, Opera!
Servant of karma
Try bumping your screen rez from 640 x 480 douche...
The quotes shouldn't use this style. It should be used for displaying source code, so line wrapping won't destroy the readability of the code...
1. Set html and body to height : 100%; (otherwise they will not fill the viewport properly).
2. Set your main content element to position : relative; min-height : 100%;.
3. Put your footer inside the main content element and set it to position : absolute; left : 0; bottom : 0; width : 100%;.
Caveat: You need to know how high the footer is and add padding/margins to the bottom of the content so that the last bit of content on the page doesn't get swallowed by the footer (which is floating above the content on a separate layer).
HTH,
[insert witty comment here]
Why is a supposedly neutral standards body worried about releasing updated specifications that are far beyond the capabilities of IE? Do the work and release the standards. If MS can't/won't write an updated browser then that is their problem. It should not prohibit other companies from writing browsers that utilize the new specs. God forbid, one of them might actually innovate and create something that unseats IE as the browser of choice - even with the countless obstacles to that ever happening standing in the way.
I just don't understand what one has to do with the other. Standards creation should have nothing at all to do with the product development of any one company, even the world's most dominant in the field.
Of course, this isn't a bulletproof solution, not least because Internet Explorer 6.0 doesn't support it...
But the CSS folks have considered this problem.
IIRC setting to height of anything to 100% will fail horribly in most browsers if DOCTYPE is set to Strict.
I'm actually using this right now with XHTML 1.0 Strict doctype, so I can confirm that it does work (thankfully!). I only hope it's helpful to the original poster. :)
[insert witty comment here]
Ha, Ha. Let's march on Redmond.
Here's another question... I must've missed the original thread.
Why not just create a specific server-side language which is browser agnostic and plan for it to be implimented by a specific date, starting over and making it the web 'standard' with several stages in its implimentation? This way we could, in stages, get rid of all the bloat that's resulting in web developer difficulties now. The mess of combining functionality and appearance in separate programming components - sometimes as many as 3 or 4 different languages/syntaxes - is seemingly wrongheaded to me.
Have it be a language which creates browser-targetted syntax so that it doesn't matter which browser it's being viewed in - it'll display identically based on the server's determination.
Have it come into play in stages. First stage would be server support of the language; not such a stretch in terms of accomlishment, as apache is the primary server online. The timeline for browser implimentation of the spec would be somewhat down the line from that, as IE is the big player. Then, over a period of several years simply drop support for old browsers - shouldn't be too hard, as FF now comes with 'automatic update' functionality, and with most of the stuff being done server side, there shouldn't be too much of a bandwidth issue to upgrade the browsers.
It would be no different than the internet "starting over", not too different than how things all started back when Mosaic was made. Really, it's asinine to still be using HTML in 2006+, when it was originally designed as a minimal markup language for term papers...
~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
Cheers,
-h&kon
Ok. I realise this answer is coming very late, but no: Your browser is. This is a particular aspect of Gecko's special handling of font declarations that specify monospace. See Monospace, Firefox and braindeath and Sizing monospaced fonts
http://virtuelvis.com/
One possible way of addressing this is to use float: bottom. This construct is described in the recently published CSS3 module: Generated Content for Paged Media. In the draft, it only applies to paged media, but it seems quite intuitive that it has the effect you describe in continous media. What do you think?
Cheers,
-h&kon
Wow, excellent answers!
"Why doesn't CSS allow web designers to specify styles per user agent? I would kill to stop using the stupid "IE doesn't see direct-descendant selectors so let's use that hack to fix IE's box model problems" in my style sheets. Furthermore, this approach inspires programming techniques that can be considered only as abominable. Instead, I'd like to be able to specify one style for IE 5.5 and another for Firefox 1.0.7, etc. It's pure fantasy hoping that the problem will be solved by insisting there is only one standard, and let's everyone get together and stick to it."
/>") />") }
Why not just use PHP? It does all that you want, with all the reliability that useragents offer.
<head><!-- Other Stuff -->
<?php
if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') != FALSE)
{
echo ("<link rel=\"stylesheet" href="msielayout.css\"
}
else { echo ("<link rel=\"stylesheet" href="layout.css\"
?></head>
I wank in the shower.
dead link in guys PhD thesis...click on the word surf...http://people.opera.com/howcome/2006/phd/
I appreciate his examples and clear communication. I wish we would have brought more attention to the mobile css issues, I think that most of my friends will be using the web on sidekicks and mobile phones more than anything else once they are out of school. I am trying to get my new site mobile compliant and there is so much confusion about the future of mobile content formatting.
There are sounds in most other languages that simply don't exist in English, and viky verka.
For example, a Chinese person called Shi Cu could tell a native English speaker -- even a native English speaker with a wonderful "ear" for languages -- how to pronounce his or her name for several hours without getting a return pronunciation anywhere near "authentic".
This is not anyone's fault, the English speaker's brain simply translates the sounds they are hearing into English-language sounds that they know. It takes hundreds of hours of teaching, and thousands of hours of exposure for a native English speaker to correctly make several of the key sounds in Chinese -- let alone get the tones right.
The number of people who get it right the first time? Zero.
You may be quite proud of your ability to get Thai, Cambodian & Hindi names "right". My bet is that people say their names to you several times, hear their names butchered several times, and then smile and say "Yes! That's it!"
They probably even compliment you to protect your feelings. After all, you've made an effort and that's more than most people do.
But don't fool yourself into thinking that you are pronouncing foreign names "right". That almost never happens, and when it does it's almost always because of the closeness of the sounds in a particular name to common sounds in English. Mr Hao, to return to Chinese, is probably pretty ok with people calling him "Mr. How". And even that isn't exactly right.
In fact, your reverse hostility -- "How dare you tell me I can't pronouce your name right!?!" -- is probably one of the very good reasons that Haakon tells people to call him "Howcome"....