New home page

Stephan Soller stephan.soller at helionweb.de
Wed Oct 6 07:25:22 PDT 2010


On 06.10.2010 02:08, Arlo White wrote:
> That's because HTML/CSS is a pretty terrible language for anything
> beyond simple layouts. It shares more with Word/PDF/PostScript in terms
> of its purpose and history than it does with real gui layout engines
> (GTK, QT, etc).
>

HTML/CSS is primary made for documents not applications. If you want you 
can simply make every element a block level element and use JavaScript 
for layout. I don't know GTK and QT in depth but then you should have 
about the same level of possibilities as with these layout engines. It 
wouldn't surprise me if GUI frameworks like jQuery UI actually do this.

However the way GUI frameworks approach layout isn't very well suited 
for documents and therefore I'm very happy that they oriented CSS on 
documents (there were several early drafts and what we know today was 
just the draft from Howcome Lie).

> Hardcore HTML/CSS people tout the virtues of separating the content from
> the presentation. The problem is that HTML has implicit presentation
> that you often can't override with CSS. There are limits to what you can
> do with positioning. If I want to rearrange elements in my page I have
> to change the HTML, I can't do it all on the CSS side. That's not
> separation of content from presentation!
>

You can do quite a lot of stuff with the "position" property. As soon as 
you defined something as "position: absolute" you can move it around as 
you want. How well that (and other techniques) work depends on your HTML 
structure. However I have to agree that in most practical cases you have 
to modify the HTML in any way because the document structure changes.

> Real separation of the presentation has to happen right at the data
> layer. But that's server side in most applications. So you run your data
> through one view abstraction (template language such as Freemarker, PHP,
> JSP etc), then to HTML, and then polish it with CSS. Oh, and that
> application runs on an app server that runs in a Java virtual machine
> that runs in an VMware OS that runs on a real OS that actually accesses
> real hardware. That's an absurd number of layers...
>
> Anyway, to get back to HTML. They'll say use divs not tables because a
> table represents a distinct concept not a layout element and it has
> accessibility implications. And yet I you can't layout things with divs
> in the same way that I can with a table. And even if there are obscure
> CSS properties that let me, half the user's browsers don't support them.
>

Unfortunately this is true (if "half the user's browsers" refers to IE 6 
and 7). In other browsers however you can do exactly the same as with 
tables but with significantly less HTML elements ("display: table" 
property). Plus the other positioning models allow you to do things that 
are not possible with HTML. Netscape 4 once supported an "layer" element 
which could have been used to do stuff like you can do with "position: 
absolute" but the resulting HTML had nothing to do with "a document" any 
more.

> Sometimes I feel like I'm the only one that sees the naked Emperor.
> People are so excited about the Internet but they don't realize that
> browsers are just implementing one view language that's 15 years old and
> really isn't all that great. The beauty of the Internet is the emergent
> properties that arose from the concept of linking sites. But that's not
> something that has to be unique to the HTML language itself.
>
> And sure there's some cool stuff in HTML5 but a pig's still a pig even
> when you velcro a TV to its head and a database on its back.
>
>
> -Arlo
>

I have to agree that it's all about linking content that really created 
the web. It's not unique to HTML (I even saw thinks like that in "The 
mother of all demos" form Douglas Engelberth, 1968) but more to HTTP. 
HTML just happened to be wildly used to create documents on the web.

As for HTML5 still being a pig… well I definitely agree at some parts 
but they already cleaned up a lot. Just because the structure of C once 
was quite ugly (IMHO) doesn't mean that D is still ugly (since it's 
based on C). Technologies as well as taste evolve constantly.

>
>
>
> On 10/04/2010 02:23 PM, Walter Bright wrote:
>>
>> That's what bugs me. Something as straightforward as a 3 column layout
>> shouldn't require "tricks" for it. Googling it found 3 pages dedicated
>> to explaining this "trick" (each of them wildly different, of course).
>>
>
>



More information about the Digitalmars-d-announce mailing list