• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EST 09:08
CET 15:08
KST 23:08
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
RSL Season 3 - Playoffs Preview0RSL Season 3 - RO16 Groups C & D Preview0RSL Season 3 - RO16 Groups A & B Preview2TL.net Map Contest #21: Winners12Intel X Team Liquid Seoul event: Showmatches and Meet the Pros10
Community News
Weekly Cups (Dec 1-7): Clem doubles, Solar gets over the hump1Weekly Cups (Nov 24-30): MaxPax, Clem, herO win2BGE Stara Zagora 2026 announced15[BSL21] Ro.16 Group Stage (C->B->A->D)4Weekly Cups (Nov 17-23): Solar, MaxPax, Clem win3
StarCraft 2
General
Weekly Cups (Dec 1-7): Clem doubles, Solar gets over the hump Chinese SC2 server to reopen; live all-star event in Hangzhou Maestros of the Game: Live Finals Preview (RO4) BGE Stara Zagora 2026 announced Weekly Cups (Nov 24-30): MaxPax, Clem, herO win
Tourneys
StarCraft2.fi 15th Anniversary Cup RSL Offline Finals Info - Dec 13 and 14! Tenacious Turtle Tussle Sparkling Tuna Cup - Weekly Open Tournament StarCraft Evolution League (SC Evo Biweekly)
Strategy
Custom Maps
Map Editor closed ?
External Content
Mutation # 503 Fowl Play Mutation # 502 Negative Reinforcement Mutation # 501 Price of Progress Mutation # 500 Fright night
Brood War
General
BW General Discussion Let's talk about Metropolis [ASL20] Ask the mapmakers — Drop your questions BGH Auto Balance -> http://bghmmr.eu/ Foreign Brood War
Tourneys
[Megathread] Daily Proleagues Small VOD Thread 2.0 [BSL21] RO16 Group D - Sunday 21:00 CET [BSL21] RO16 Group A - Saturday 21:00 CET
Strategy
Current Meta Game Theory for Starcraft How to stay on top of macro? PvZ map balance
Other Games
General Games
Stormgate/Frost Giant Megathread Nintendo Switch Thread EVE Corporation Path of Exile ZeroSpace Megathread
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
Mafia Game Mode Feedback/Ideas Survivor II: The Amazon Sengoku Mafia TL Mafia Community Thread
Community
General
US Politics Mega-thread Russo-Ukrainian War Thread YouTube Thread European Politico-economics QA Mega-thread Things Aren’t Peaceful in Palestine
Fan Clubs
White-Ra Fan Club
Media & Entertainment
Anime Discussion Thread [Manga] One Piece Movie Discussion!
Sports
2024 - 2026 Football Thread Formula 1 Discussion
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
TL+ Announced Where to ask questions and add stream? The Automated Ban List
Blogs
I decided to write a webnov…
DjKniteX
Physical Exertion During Gam…
TrAiDoS
James Bond movies ranking - pa…
Topin
Thanks for the RSL
Hildegard
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1337 users

The Amazing IE8 - CSS Problems

Blogs > tofucake
Post a Reply
tofucake
Profile Blog Joined October 2009
Hyrule19177 Posts
Last Edited: 2010-07-13 21:02:03
July 13 2010 20:29 GMT
#1
I've been having some issues with IE8, IE7, and Firefox 3.6.6.

Namely, applying overflow to part of a table (of tabular data, not a table used for layout...because that's bad).

In Firefox, Opera, and Chrome, you can apply a style, class, or id to any thead, tfoot, or tbody element, and the results are as expected.

In IE8, any style, class, and/or id styling rules are applied to each individual row within the section.

In IE7, everything goes to hell.

Example:
thead
{
border: 2px solid black;
padding: 3px;
}

tbody
{
max-height: 450px;
overflow: scroll;
}

applied to

<table>
<thead>
<tr>
<th>Col Header 1</th>
<th>Col Header 2</th>
<th>Col Header 3</th>
</tr>
</thead>
<tbody>
<tr>
<td>col data 1</td>
<td>col data 2</td>
<td>col data 3</td>
</tr>
[ .. say...300 rows of similar .. ]
</tbody>
</table>


Behaves pretty much as expected in Firefox: only the tbody section scrolls while the column headers remain stationary (like freezing panes in Excel).

In IE8, partially due to another bug where max-height is treated exactly like height, the entire table scrolls (thead shouldn't!) and each row inside tbody is 450px tall.

In IE7, a similar result is seen as in IE8, but, mostly due to some totally rational and legit formatting before the table, the entire table winds up being shifted 1000px to the right of all other data on the page, and, due to IE7, all tbody items are crammed into the width of the first column header.

The result? I end up programming for at least 3 different browsers.

I fixed it in IE8 with a div and a bit of annoying styling that took a while to get right, and I gave up on IE7 for the day.

Does anyone know anything about these effects and what solutions may exist?

ps: damn you, Microsoft

[edit]
PPS - this is handy: http://gerrendesign.com/weblog/2008/05/ie7_css_hack.php

Liquipediaasante sana squash banana
apm66
Profile Blog Joined April 2010
Canada943 Posts
Last Edited: 2010-07-13 20:36:35
July 13 2010 20:35 GMT
#2
"The result? I end up programming for at least 3 different browsers."

Well, that's what you should be expecting when doing web design. Designing and coding websites that must work on various browsers as each reads css differently. That's the main reason why i quit web design
(╯°□°)╯︵ ┻━┻
ilbh
Profile Blog Joined May 2007
Brazil1606 Posts
July 13 2010 20:45 GMT
#3
do you really have to use tables? div gives you way more options and everything...
if you can you should try using divs instead of tables.
Part of the inhumanity of the computer is that, once it is competently programmed and working smoothly, it is completely honest.
[-Bluewolf-]
Profile Blog Joined January 2003
United States609 Posts
Last Edited: 2010-07-13 21:26:32
July 13 2010 20:52 GMT
#4
On July 14 2010 05:29 tofucake wrote:
The result? I end up programming for at least 3 different browsers.


Incorrect. Instead, you learn to write code that works in all 3 browsers to begin with. It does take time to learn to write markup in this fashion, but cross-browser problems eventually become rare as you gain more experience in how to write markup.

PS: If you think the difference in browsers is bad now, try Internet Explorer 6 (still in use today, although most developers no longer support it). It was nearly impossible to write complicated markup for that browser, and even Wikipedia notes a few of its faults.

EDIT: The general idea of my post is that I found that I learned to avoid markup that causes problems in different browsers and focus on techniques that have a universal correct output (similar to how I learned one way to write mobile J2ME code that wouldn't mess up on various devices that each had their own implementation). In short, a style that is coded to one unwritten common standard rather than to multiple standards, if that makes any sense.

This post has been taken badly however - I apologize to the OP for any offense taken. For other readers, please disregard and skip this post. The general idea sounded better in my head. Sorry!
The melody of logic always plays the notes of truth.
tofucake
Profile Blog Joined October 2009
Hyrule19177 Posts
July 13 2010 20:53 GMT
#5
On July 14 2010 05:45 ilbh wrote:
do you really have to use tables? div gives you way more options and everything...
if you can you should try using divs instead of tables.

I'm tabulating data. In fact, the page is based off of an Excel sheet. It's tabular and therefore requires tables. I'm not going to muck with divs for tabular data when the end result is currently 43k lines long.

Anyway, this is the only time I've needed to do some serious workarounds. My other work for the past 7 years or so has been pretty consistent across all browsers.
Liquipediaasante sana squash banana
tofucake
Profile Blog Joined October 2009
Hyrule19177 Posts
Last Edited: 2010-07-13 21:01:07
July 13 2010 20:54 GMT
#6
On July 14 2010 05:52 [-Bluewolf-] wrote:
Show nested quote +
On July 14 2010 05:29 tofucake wrote:
The result? I end up programming for at least 3 different browsers.


Incorrect. Instead, you learn to write code that works in all 3 browsers to begin with. It does take time to learn to write markup in this fashion, but cross-browser problems eventually become rare as you gain more experience in how to write markup.

INCORRECT. I've been making websites for years. The problems I've been experiencing today are due to IE7 behaving differently from IE8 which behaves differently from EVERY OTHER BROWSER. It's not a problem with my markup, it's a problem with IE.

[edit]
If you need more evidence, you can read plenty more about IE8 being dumb about overflow in general.
Liquipediaasante sana squash banana
Ethenielle
Profile Blog Joined December 2005
Norway1006 Posts
July 13 2010 21:05 GMT
#7
On July 14 2010 05:52 [-Bluewolf-] wrote:
Show nested quote +
On July 14 2010 05:29 tofucake wrote:
The result? I end up programming for at least 3 different browsers.


Incorrect. Instead, you learn to write code that works in all 3 browsers to begin with. It does take time to learn to write markup in this fashion, but cross-browser problems eventually become rare as you gain more experience in how to write markup.

PS: If you think the difference in browsers is bad now, try Internet Explorer 6 (still in use today, although most developers no longer support it). It was nearly impossible to write complicated markup for that browser, and even Wikipedia notes a few of its faults.


It's pretty hilarious that you insult him for writing bad code and then contradict your own insult in a "PS".

Also, if you really want help to fix that stuff I'd suggest stack overflow
Theres a fine line between fishing and just standing on the shore like an idiot.
Osmoses
Profile Blog Joined October 2008
Sweden5302 Posts
July 13 2010 21:38 GMT
#8
Internet Explorer is the devil for webdesigners. Usually everything works great in all browsers except IE. Of course, that means 3 separate css for IE8, IE7 and IE6. My professional opinion is that if people are still using IE6 they can suit their damn selves for having nothing work properly, maybe take it as an incentive for upgrading, but whatever...
Excuse me hun, but what is your name? Vivian? I woke up next to you naked and, uh, did we, um?
darmousseh
Profile Blog Joined May 2010
United States3437 Posts
Last Edited: 2010-07-13 23:05:47
July 13 2010 23:04 GMT
#9
I'm a webdesigner and I'll tell you there are some problems that are just not compatible across browsers. The only solutions i've done in the past is to either 1. recommend a different layout or design 2. Add conditionals for which css style sheet to use. Don't even get me started with chrome js either. Here's a fun js exception.

new_window = window.open( url, "new_window_underneath", params );
if (navigator.userAgent.indexOf('Chrome/') <= 0) {
new_window.blur();
}
else
{
window.blur();
}
window.focus();
Developer for http://mtgfiddle.com
Xapti
Profile Joined April 2010
Canada2473 Posts
July 13 2010 23:12 GMT
#10
Mantra for web designing cross-browser:

Work on web compliance first (generally using opera or FF works for testing this stage)
Then use conditional comments for each version of internet explorer. Does that not solve your problem, or is IE outright lacking some functionality?

There are some scripts you can use to add functionality to older versions of IE as well - put them in conditional comments of course.

Overall, there are many problems with different versions of IE like you mentioned. It is one of the many reasons why IE is such a bad web browser, and why things are done the way they are (conditional comments for each version)
"Then he told me to tell you that he wouldn't piss on you if you were on fire" — "Well, you tell him that I said that I wouldn't piss on him if he was on Jeopardy!"
funkie
Profile Blog Joined November 2005
Venezuela9376 Posts
July 14 2010 00:32 GMT
#11
Yes.

Stop using tables, and start using divs, you can even make them divs behave like tables by simple css.

:o
CJ Entusman #6! · Strength is the basis of athletic ability. -Rippetoe /* http://j.mp/TL-App <- TL iPhone App 2.0! */
a176
Profile Blog Joined August 2009
Canada6688 Posts
July 14 2010 00:57 GMT
#12
On July 14 2010 08:12 Xapti wrote:
Mantra for web designing cross-browser:

Work on web compliance first (generally using opera or FF works for testing this stage)
Then use conditional comments for each version of internet explorer. Does that not solve your problem, or is IE outright lacking some functionality?

There are some scripts you can use to add functionality to older versions of IE as well - put them in conditional comments of course.

Overall, there are many problems with different versions of IE like you mentioned. It is one of the many reasons why IE is such a bad web browser, and why things are done the way they are (conditional comments for each version)


I've done it the other way around. Program for IE first. Then worry about everything else after.
starleague forever
tofucake
Profile Blog Joined October 2009
Hyrule19177 Posts
Last Edited: 2010-07-14 01:16:55
July 14 2010 01:16 GMT
#13
On July 14 2010 08:12 Xapti wrote:
Mantra for web designing cross-browser:

Work on web compliance first (generally using opera or FF works for testing this stage)
Then use conditional comments for each version of internet explorer. Does that not solve your problem, or is IE outright lacking some functionality?

There are some scripts you can use to add functionality to older versions of IE as well - put them in conditional comments of course.

Overall, there are many problems with different versions of IE like you mentioned. It is one of the many reasons why IE is such a bad web browser, and why things are done the way they are (conditional comments for each version)

The thing about this particular issue is that it's such an obscure bug that it's hard to fix (it took me many hours to find some information about how to work around it...and even then my solution only works in IE8 (I need to work on IE7 fix tomorrow).


On July 14 2010 09:32 funkie wrote:
Yes.

Stop using tables, and start using divs, you can even make them divs behave like tables by simple css.

:o

I've explained this repeatedly: the table in question is holding tabular data. I'm using a table for its intended purpose. I'm not going to recreate the table structure using divs and more styling when it's built in to the markup.



I'm asking for help here, people, with this obscure problem. I don't need people telling me to not use tables for tabular data. Tables shouldn't be used for layouts, I know that already. What they should be used for is tabular data. Whoever taught you to never use tables is dumb.
Liquipediaasante sana squash banana
Please log in or register to reply.
Live Events Refresh
Next event in 2h 52m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
LamboSC2 207
ProTech125
StarCraft: Brood War
Britney 46456
Calm 5504
Horang2 1855
GuemChi 969
Soma 907
Sharp 865
Light 857
Mini 655
Snow 593
actioN 587
[ Show more ]
Stork 531
ZerO 399
Rush 240
Hyuk 208
JYJ 152
Zeus 140
Hyun 124
PianO 81
910 39
ToSsGirL 37
scan(afreeca) 21
Terrorterran 20
JulyZerg 15
ajuk12(nOOB) 14
SilentControl 13
soO 12
Sacsri 9
HiyA 7
Rock 4
Dota 2
Gorgc4687
singsing2998
qojqva1030
Dendi415
XcaliburYe125
syndereN17
febbydoto7
Counter-Strike
olofmeister2029
shoxiejesuss572
oskar128
Other Games
B2W.Neo1059
crisheroes379
Fuzer 355
RotterdaM197
Hui .184
Happy111
QueenE70
ZerO(Twitch)14
Organizations
StarCraft: Brood War
lovetv 7
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 15 non-featured ]
StarCraft 2
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• C_a_k_e 1958
• lizZardDota254
• WagamamaTV17
League of Legends
• Jankos2401
• TFBlade410
Upcoming Events
StarCraft2.fi
2h 52m
Tenacious Turtle Tussle
9h 52m
The PondCast
19h 52m
WardiTV 2025
21h 52m
StarCraft2.fi
1d 2h
WardiTV 2025
1d 21h
StarCraft2.fi
2 days
RSL Revival
2 days
IPSL
3 days
Sziky vs JDConan
RSL Revival
3 days
Classic vs TBD
herO vs Zoun
[ Show More ]
WardiTV 2025
3 days
IPSL
4 days
Tarson vs DragOn
Wardi Open
4 days
Monday Night Weeklies
5 days
Replay Cast
5 days
Sparkling Tuna Cup
5 days
Liquipedia Results

Completed

Acropolis #4 - TS3
RSL Revival: Season 3
Kuram Kup

Ongoing

IPSL Winter 2025-26
KCM Race Survival 2025 Season 4
YSL S2
BSL Season 21
Slon Tour Season 2
WardiTV 2025
META Madness #9
SL Budapest Major 2025
ESL Impact League Season 8
BLAST Rivals Fall 2025
IEM Chengdu 2025
PGL Masters Bucharest 2025
Thunderpick World Champ.
CS Asia Championships 2025
ESL Pro League S22

Upcoming

BSL 21 Non-Korean Championship
Acropolis #4
IPSL Spring 2026
Bellum Gens Elite Stara Zagora 2026
HSC XXVIII
Big Gabe Cup #3
RSL Offline Finals
PGL Cluj-Napoca 2026
IEM Kraków 2026
BLAST Bounty Winter 2026
BLAST Bounty Winter Qual
eXTREMESLAND 2025
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2025 TLnet. All Rights Reserved.