Massassi Forums Logo

This is the static archive of the Massassi Forums. The forums are closed indefinitely. Thanks for all the memories!

You can also download Super Old Archived Message Boards from when Massassi first started.

"View" counts are as of the day the forums were archived, and will no longer increase.

ForumsDiscussion Forum → HTML & Divs
12
HTML & Divs
2007-01-09, 12:39 PM #1
http://web.missouri.edu/~jrh3k5/new/

I'm trying to get the main div to expand with the sidebar - any idea on how to achieve this?
the idiot is the person who follows the idiot and your not following me your insulting me your following the path of a idiot so that makes you the idiot - LC Tusken
2007-01-09, 12:57 PM #2
Um, it looks fine to me. What do you want?
ᵗʰᵉᵇˢᵍ๒ᵍᵐᵃᶥᶫ∙ᶜᵒᵐ
ᴸᶥᵛᵉ ᴼᵑ ᴬᵈᵃᵐ
2007-01-09, 12:57 PM #3
Detty & ZZTer helped me fix it.
the idiot is the person who follows the idiot and your not following me your insulting me your following the path of a idiot so that makes you the idiot - LC Tusken
2007-01-09, 1:01 PM #4
I wanted to be helpful :bsg:
ᵗʰᵉᵇˢᵍ๒ᵍᵐᵃᶥᶫ∙ᶜᵒᵐ
ᴸᶥᵛᵉ ᴼᵑ ᴬᵈᵃᵐ
2007-01-09, 2:12 PM #5
Eww, four digit course codes?
2007-01-09, 2:19 PM #6
I miss the old days of html where it was kosher to use tables for layout.

To this day I don't know why the w3c had to ruin everything by changing the standard. Maybe I'm just lazy and set in my ways but I feel that using Divs and CSS positioning makes coding a lot harder than it needs to be.
2007-01-09, 2:24 PM #7
Because using tables was a hack for the lack of proper styling support in browsers.

CSS is a wonderful system and I wish every site used it. It's much easier than playing with tables all day, and the ability to "skin" a site is an invaluable tool.
2007-01-09, 2:31 PM #8
[QUOTE=Cool Matty]Because using tables was a hack for the lack of proper styling support in browsers.

CSS is a wonderful system and I wish every site used it. It's much easier than playing with tables all day, and the ability to "skin" a site is an invaluable tool.[/QUOTE]

True, it was a hack, but it was a good hack. I liked it because it was predictable and fast. I feel that both methods for layout should be acceptable, never mind what the w3c says.

I can go divs and the css route, but I just hate doing it. I can see the value of Css for eliminating code redundancy in setting styles, but I've always despised using it for layout. (back in the day, sites that exclusively used CSS for layout sometimes had their elements jumbled together in the center of the screen-- it was just easier to use a table.)
2007-01-09, 3:06 PM #9
I still contend that it's impossible to get a cross-browser compatible css-based 3-column layout that uses HTML color codes for background colors and all three columns extend the length of the center column, no matter how long said center column happens to be. Also, if the center column is less than the other columns, the center column should expand. Get it? So if your content is longer than the menus, the menu divs should stretch downward and give you your bg color. If the menu is longer, the content should stretch. All three columns could have independent lengths. Plus a footer at the bottom which is positioned AFTER the three columns.

I've seen a bunch of javascript hacks for this, but that doesn't work if you have js turned off.
2007-01-09, 3:06 PM #10
(btw, it's so easy with tables)
2007-01-09, 3:16 PM #11
Originally posted by Brian:
(btw, it's so easy with tables)



That's my point.

why go to all that trouble to do things the "proper" way when it is not cross-browser and its backwards-compatibility is questionable at best? I would rather break protocol and stick with something that I know will work. Regarding tables, if something's not broken, then don't fix it.

I still use style-enhanced tables for layout and will continue to do so for the forseeable future because with that method I can practically guarantee to a client that things will look the way that they want on any browser on practically any OS. (since table support is about 12-14 years old IIRC and universally supported) If I have to use CSS for layout I can't make such a guarantee in good conscience.


Plus, CSS layouts and table layouts render the same way and are indistinguishable unless you look at the codes, so what difference does it make?
2007-01-09, 3:37 PM #12
Fine, why you should use CSS:
  • It's faster to code than tables, if you disagree with this you're either using a poor WYSIWYG editor or you just haven't given yourself a chance to get used to how CSS works. It's faster because it's less code, you can't argue against this.
  • It's faster to load than tables, because css can be stored in external files it can be cached so that it only has to be loaded by the browser once. We're talking about potentially massive performance improvements.
  • The source code is much neater if you completely seperate presentaion from semantic markup, this makes site maintenance much easier. You can completely redesign your site without even touching the markup in many cases (not all, if you add new features you have to change the markup, but there's no way around that).
  • In the vast majority of cases no browser hacks are required to make a design work in all browsers as far back as IE5.
  • Every single character inside the body tag of your document should have a semantic meaning, this isn't just for kicks. It allows for much more sophisticated parsing of websites, potentially making search engines incredibly intelligent.
  • If you use pure XHTML and correct semantic markup your site is completely future-proof. When the backwards-incompatible XHTML 2 comes around all you need to do is define an XSLT transform and your site is suddenly in the new markup. This is not possible with the mess of tables markup that most sites currently use.
  • You say you can't in good conscience offer a css layout because of compatibility issues. Well I say that I will absolutely refuse to ever deliver a tables layout and will dump any client who demands one, and my reasoning will be that tables just aren't compatible enough.
Detty. Professional Expert.
Flickr Twitter
2007-01-09, 3:39 PM #13
In response to brian's post:

http://www.pixy.cz/blogg/clanky/css-3col-layout/

The thing is, it is not CSS's fault that browsers refuse to implement CSS2 properly. For the most part, CSS1 is fully supported, which is good. However, CSS2 still has a long way to go. Once it IS fully supported, it will eliminate ANY reasoning for using tables in a site design.

Second off, using CSS over tables is a benefit in many ways. First off, new mobile devices will be able to implement CSS in such a way that users can read the sites with ease. Table-based designs are not nearly as flexible. CSS also makes it far easier for handicap accessible browsing, and can be used in many cases to "stylize" a site completely differently with just the change of a style sheet.

Edit: Plus what Detty said.
2007-01-09, 3:49 PM #14
CM, that's the one everyone points to, but it fails to meet the requirements. If you dig a little deeper, you'll notice that the left and right menu divs don't actually expand to the length of the middle one (actually, none of them expand or contract at all in relation to the other ones). Plus, they MUST use images for bg colors, because the regular background colors specified as a color code simply will not work in their example. Opera has a neat feature where you can mess with their css and apply the changes in realtime. The divs don't actually line up with the column bg colors, because they are specified in separate divs.

It may not be a "hack" per se, but it's definitely hackish and it defeats the entire purpose of CSS. You still have a bunch of crappy, pointless divs in there that do nothing except provide positioning. You may as well use tables, in that case!
2007-01-09, 3:59 PM #15
No.

Tables have semantic meaning, they are intended for representing tabular data. Divs are intended for dividing the page up into managable sections, their semantic meaning is far less than that of a table (they're basically ignored by everything). Now i'm not saying it's good to have lots of divs, but it's much worse to have tables. Never say you may as well use tables.
Detty. Professional Expert.
Flickr Twitter
2007-01-09, 4:04 PM #16
Originally posted by Brian:
CM, that's the one everyone points to, but it fails to meet the requirements. If you dig a little deeper, you'll notice that the left and right menu divs don't actually expand to the length of the middle one (actually, none of them expand or contract at all in relation to the other ones).


I have no idea what you're talking about. It sure seems to match lengths when I change the sizes. Both in IE and Firefox.

Quote:
Plus, they MUST use images for bg colors, because the regular background colors specified as a color code simply will not work in their example. Opera has a neat feature where you can mess with their css and apply the changes in realtime. The divs don't actually line up with the column bg colors, because they are specified in separate divs.

It may not be a "hack" per se, but it's definitely hackish and it defeats the entire purpose of CSS. You still have a bunch of crappy, pointless divs in there that do nothing except provide positioning. You may as well use tables, in that case!


It's still better than using a real old tables hack which is getting more deprecated with every generation of new browsers. The type of design you want IS possible in CSS2, it's the browsers that need to get themselves up to snuff.
2007-01-09, 4:06 PM #17
Originally posted by Detty:
No.

Tables have semantic meaning, they are intended for representing tabular data. Divs are intended for dividing the page up into managable sections, their semantic meaning is far less than that of a table (they're basically ignored by everything). Now i'm not saying it's good to have lots of divs, but it's much worse to have tables. Never say you may as well use tables.

I'll become as die-hard as you when it's possible to do the 3-col layout I mentioned above. Do they even have anything that will support that in the newer revisions of CSS? It seems so simple.

1 outer div
3 inner divs, each getting a %width of the outer div
each of the 3 inner divs stretch to FULL HEIGHT of the outer div
and the outer div is exactly the height of the longest inner div

it should take 4 divs, no more

I want them to expand so I can use bgcolors and bgimages associated with that div, not some other div that's overlayed in some crappy manner.
2007-01-09, 4:07 PM #18
CoolMatty, the divs don't actually expand to match the other columns, but it doesn't really matter since it looks like they do, and who cares if they don't match up perfectly if you have background images disabled, you can still read the site.
Detty. Professional Expert.
Flickr Twitter
2007-01-09, 4:07 PM #19
CM: it "seems" like it works, but it doesn't. You can't, for instance, apply a border-right: 3px solid green; to the left-most div and have it stretch to the bottom. It will only extend as long as the left-most content. Which is not useful.
2007-01-09, 4:08 PM #20
It seems to work unless you ever want to apply more styles. In which case it breaks down miserably.
2007-01-09, 4:13 PM #21
Actually, it only takes 3
Detty. Professional Expert.
Flickr Twitter
2007-01-09, 4:16 PM #22
The big-boy web designers argue that CSS can be used to completely replace tables, which is true. They neglect to point out, though, how terribly unintuitive CSS coding is. I wish we had something more progmatic, I guess you could say...something like layout managers in Java, C# or other widget toolkits.
Bassoon, n. A brazen instrument into which a fool blows out his brains.
2007-01-09, 4:18 PM #23
Yes, CSS could be better, proper nesting of rules would make things much easier. But it's better than nothing.
Detty. Professional Expert.
Flickr Twitter
2007-01-09, 4:23 PM #24
The biggest issue isn't limitations in CSS (CSS2 can easily do the 3 column layout as it sits now), it's the fact that browsers can't seem to get CSS2 right, so we're stuck coaxing the browsers into displaying how they SHOULD be displaying in the first place.
2007-01-09, 5:21 PM #25
Originally posted by Detty:
No.

Tables have semantic meaning, they are intended for representing tabular data.



Why artificially limit it to one thing when it is capable of so much more?
2007-01-09, 5:28 PM #26
Tables have other disadvantages, such as inflexibility and sucking up bandwidth.
Bassoon, n. A brazen instrument into which a fool blows out his brains.
2007-01-09, 5:31 PM #27
Originally posted by Detty:

Interesting. Says it doesn't work on IE, though, according to: http://www.quirksmode.org/css/display.html

(I can't test, don't have ie)

don't you think it's cheating to use css to make something render as a table anyway!? may as well just use a table ;)
2007-01-09, 5:33 PM #28
Originally posted by Pagewizard_YKS:
Why artificially limit it to one thing when it is capable of so much more?


Oh please.

Why limit the letter Q to having a U after it in English words? The letter Q is so shapely! It's capable of so much more than being coupled with a U!

We don't NEED to use tables for anything more than that which they are intended, in fact any other usage harms the information content of the page. A screen reader sees a table tag and knows that what is contained is data arranged in a tabular format and subsequently it reads that data in an appropriate manner. Using tables for layout may make a handful of designs possible but it also damages the meaning of your page.

Yqu gq ahead and stick a Q in randqm wqrds, it's almqst the same as an O sq what's the difference? It alsq has the benefit of making brqken cqmputrs that can't display the letter O be able tq use mqre wqrds!
Detty. Professional Expert.
Flickr Twitter
2007-01-09, 5:33 PM #29
Originally posted by Emon:
Tables have other disadvantages, such as inflexibility and sucking up bandwidth.


What do oyu men by inflexibility, and how exactly do tables use more bandwidth than divs?
2007-01-09, 5:36 PM #30
Originally posted by Brian:
Interesting. Says it doesn't work on IE, though, according to: http://www.quirksmode.org/css/display.html

(I can't test, don't have ie)

don't you think it's cheating to use css to make something render as a table anyway!? may as well just use a table ;)


The css is only making the element use the display rules of a table cell, ie expanding to fill the available space. It doesn't give the element the semantics of a table. I do think the display type should have a different name though, like "autofill" or "expand".
Detty. Professional Expert.
Flickr Twitter
2007-01-09, 5:38 PM #31
You can change the design in your stylesheet and it will affect all pages. The stylesheet only has to be downloaded once, as opposed to downloading all the code for all the different pages on your site.

css Zen Garden is a good example of the flexibility you can never get with tables. Click on the designs over on the right. There are over 900 designs available for that site, and the only difference is the stylesheet.
Bassoon, n. A brazen instrument into which a fool blows out his brains.
2007-01-09, 5:44 PM #32
Holy crap... you people are NOT trying to argue about tables VS CSS, are you? faux columns is a FINE hack for the ONE thing tables can do that CSS can't. No, CSS isn't perfect, but holy crap, I can't believe you'd think about tabulating site content. You're screwing over your clients.
ᵗʰᵉᵇˢᵍ๒ᵍᵐᵃᶥᶫ∙ᶜᵒᵐ
ᴸᶥᵛᵉ ᴼᵑ ᴬᵈᵃᵐ
2007-01-09, 10:29 PM #33
Originally posted by JediKirby:
Holy crap... you people are NOT trying to argue about tables VS CSS, are you? faux columns is a FINE hack for the ONE thing tables can do that CSS can't. No, CSS isn't perfect, but holy crap, I can't believe you'd think about tabulating site content. You're screwing over your clients.

You, sir, are my client.
2007-01-09, 10:32 PM #34
Originally posted by Brian:
You, sir, are my client.

I can see why you wouldn't be motivated to do better.

ahh burn.
Bassoon, n. A brazen instrument into which a fool blows out his brains.
2007-01-09, 10:33 PM #35
No, I'm a user. I'm talking about clients.
ᵗʰᵉᵇˢᵍ๒ᵍᵐᵃᶥᶫ∙ᶜᵒᵐ
ᴸᶥᵛᵉ ᴼᵑ ᴬᵈᵃᵐ
2007-01-09, 11:15 PM #36
Going from frames to a table-based layout would be a serious upgrade for Massassi ;) We should take it one step at a time, right?
2007-01-09, 11:47 PM #37
Going from frames to a CSS based page would be ridiculously easy.

Hell, upgrading to a new CMS would automatically give us a page to work with.

I want to upgrade, but it appears nobody reads the staff forum... ever.
[01:52] <~Nikumubeki> Because it's MBEGGAR BEGS LIKE A BEGONI.
2007-01-10, 12:07 AM #38
Originally posted by MBeggar:
Going from frames to a CSS based page would be ridiculously easy.

Hell, upgrading to a new CMS would automatically give us a page to work with.

I want to upgrade, but it appears nobody reads the staff forum... ever.

It's not as easy as you make it out to be!
2007-01-10, 1:10 AM #39
Originally posted by Detty:


<3 Lorem Ipsum.
2007-01-10, 1:48 AM #40
CSS > tables. That is all.
幻術
12

↑ Up to the top!