• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 13:22
CET 18:22
KST 02:22
  • 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
Team Liquid Map Contest #22 - Presented by Monster Energy5ByuL: The Forgotten Master of ZvT30Behind the Blue - Team Liquid History Book19Clem wins HomeStory Cup 289HomeStory Cup 28 - Info & Preview13
Community News
Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool30Weekly Cups (March 9-15): herO, Clem, ByuN win32026 KungFu Cup Announcement6BGE Stara Zagora 2026 cancelled12Blizzard Classic Cup - Tastosis announced as captains18
StarCraft 2
General
Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool Team Liquid Map Contest #22 - Presented by Monster Energy Serral: 24’ EWC form was hurt by military service Weekly Cups (March 9-15): herO, Clem, ByuN win Weekly Cups (August 25-31): Clem's Last Straw?
Tourneys
RSL Season 4 announced for March-April Sparkling Tuna Cup - Weekly Open Tournament WardiTV Team League Season 10 KSL Week 87 [GSL CK] #2: Team Classic vs. Team Solar
Strategy
Custom Maps
Publishing has been re-enabled! [Feb 24th 2026] Map Editor closed ?
External Content
The PondCast: SC2 News & Results Mutation # 517 Distant Threat Mutation # 516 Specter of Death Mutation # 515 Together Forever
Brood War
General
ASL21 General Discussion Gypsy to Korea JaeDong's form before ASL BGH Auto Balance -> http://bghmmr.eu/ BSL Season 22
Tourneys
[BSL22] Open Qualifiers & Ladder Tours [Megathread] Daily Proleagues Small VOD Thread 2.0 IPSL Spring 2026 is here!
Strategy
Simple Questions, Simple Answers Soma's 9 hatch build from ASL Game 2 Fighting Spirit mining rates
Other Games
General Games
Nintendo Switch Thread General RTS Discussion Thread Path of Exile Stormgate/Frost Giant Megathread Dawn of War IV
Dota 2
Official 'what is Dota anymore' discussion The Story of Wings Gaming
League of Legends
G2 just beat GenG in First stand
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
Five o'clock TL Mafia Mafia Game Mode Feedback/Ideas Vanilla Mini Mafia TL Mafia Community Thread
Community
General
US Politics Mega-thread Canadian Politics Mega-thread Things Aren’t Peaceful in Palestine Russo-Ukrainian War Thread Mexico's Drug War
Fan Clubs
The IdrA Fan Club
Media & Entertainment
[Req][Books] Good Fantasy/SciFi books [Manga] One Piece Movie Discussion!
Sports
2024 - 2026 Football Thread Formula 1 Discussion Tokyo Olympics 2021 Thread General nutrition recommendations Cricket [SPORT]
World Cup 2022
Tech Support
Laptop capable of using Photoshop Lightroom?
TL Community
The Automated Ban List
Blogs
Funny Nicknames
LUCKY_NOOB
Money Laundering In Video Ga…
TrAiDoS
Iranian anarchists: organize…
XenOsky
FS++
Kraekkling
Shocked by a laser…
Spydermine0240
Unintentional protectionism…
Uldridge
ASL S21 English Commentary…
namkraft
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1800 users

The Amazing IE8 - CSS Problems

Blogs > tofucake
Post a Reply
tofucake
Profile Blog Joined October 2009
Hyrule19196 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
Hyrule19196 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
Hyrule19196 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
Hyrule19196 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
LAN Event
16:30
StarCraft Madness
Airneanach85
Liquipedia
PSISTORM Gaming Misc
15:55
FSL semifinals: PTB vs ASH
Freeedom28
Liquipedia
uThermal 2v2 Circuit
15:00
Bonus Cup #6
uThermal419
SteadfastSC256
IndyStarCraft 167
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
uThermal 419
SteadfastSC 256
Liquid`TLO 214
IndyStarCraft 167
JuggernautJason60
StarCraft: Brood War
Calm 6280
Horang2 735
EffOrt 704
Free 328
ggaemo 201
hero 121
Pusan 99
Mind 85
Rock 23
Hm[arnc] 21
[ Show more ]
LancerX 19
IntoTheRainbow 16
SilentControl 9
ivOry 7
eros_byul 1
Dota 2
monkeys_forever80
ROOTCatZ4
League of Legends
JimRising 438
Counter-Strike
fl0m4664
Heroes of the Storm
Khaldor585
Liquid`Hasu382
Trikslyr71
MindelVK14
Other Games
singsing2288
Grubby1593
FrodaN1242
B2W.Neo833
byalli331
Lowko204
Hui .112
KnowMe58
Organizations
Other Games
gamesdonequick469
Dota 2
PGL Dota 2 - Main Stream189
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 21 non-featured ]
StarCraft 2
• Adnapsc2 21
• printf 11
• OhrlRock 1
• Reevou 1
• AfreecaTV YouTube
• intothetv
• sooper7s
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• Kozan
StarCraft: Brood War
• Michael_bg 5
• Pr0nogo 3
• blackmanpl 1
• STPLYoutube
• ZZZeroYoutube
• BSLYoutube
Dota 2
• WagamamaTV1110
League of Legends
• Jankos2064
• Shiphtur231
Other Games
• imaqtpie368
Upcoming Events
BSL
2h 38m
RSL Revival
16h 38m
herO vs MaxPax
Rogue vs TriGGeR
BSL
1d 2h
Replay Cast
1d 6h
Replay Cast
1d 15h
Afreeca Starleague
1d 16h
Sharp vs Scan
Rain vs Mong
Wardi Open
1d 18h
Monday Night Weeklies
1d 23h
Sparkling Tuna Cup
2 days
Afreeca Starleague
2 days
Soulkey vs Ample
JyJ vs sSak
[ Show More ]
Replay Cast
3 days
Afreeca Starleague
3 days
hero vs YSC
Larva vs Shine
Kung Fu Cup
3 days
Replay Cast
4 days
KCM Race Survival
4 days
The PondCast
4 days
WardiTV Team League
4 days
Replay Cast
5 days
WardiTV Team League
5 days
RSL Revival
6 days
Cure vs Zoun
WardiTV Team League
6 days
Liquipedia Results

Completed

Proleague 2026-03-20
WardiTV Winter 2026
Underdog Cup #3

Ongoing

KCM Race Survival 2026 Season 1
Jeongseon Sooper Cup
BSL Season 22
CSL Elite League 2026
RSL Revival: Season 4
Nations Cup 2026
NationLESS Cup
BLAST Open Spring 2026
ESL Pro League S23 Finals
ESL Pro League S23 Stage 1&2
PGL Cluj-Napoca 2026
IEM Kraków 2026
BLAST Bounty Winter 2026
BLAST Bounty Winter Qual

Upcoming

ASL Season 21
Acropolis #4 - TS6
2026 Changsha Offline CUP
CSL 2026 SPRING (S20)
CSL Season 20: Qualifier 1
Acropolis #4
IPSL Spring 2026
Kung Fu Cup 2026 Grand Finals
HSC XXIX
uThermal 2v2 2026 Main Event
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026
Asian Champions League 2026
IEM Atlanta 2026
PGL Astana 2026
BLAST Rivals Spring 2026
CCT Season 3 Global Finals
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 1
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 © 2026 TLnet. All Rights Reserved.