• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 15:30
CEST 21:30
KST 04:30
  • 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
[ASL22] Ro24 Preview: Siren's Call8[ASL22] Ro24 Preview: Summer's End9Serral wins HomeStory Cup 2915Serral wins Maestros of the Game 244ByuL, and the Limitations of Standard Play3
Community News
New 3v3 BGH Ladder (and more) on ShieldBattery!31Weekly Cups (August 17-23): Zerg dominate the week5Weekly Cups (August 10-16): SHIN doubles2GSTL Returns in 2026!45Weekly Cups (Aug 3-9): Protoss get shut out7
StarCraft 2
General
SC4ALL II: SC2 Player Announcement 6/8 - Maru How would you feel about frequent/monthly balance patches for SC2? Balance hotfix patch 5.0.16b (July 16) Weekly Cups (August 17-23): Zerg dominate the week Starcraft2 player guess game is Coming~!
Tourneys
Sparkling Tuna Cup - Weekly Open Tournament 2026 GSTL Announcement IntoTheTV X SOOP SC2 League : Weekly & Monthly PIG STY FESTIVAL 8.0! (13 - 23 August) WORTEX 2026 - Hungarian SC2 Finals Budapest
Strategy
[G] Having the right mentality to improve
Custom Maps
Nexus Wars 2021 GUIDE [M] (2) Industrial Park
External Content
Mutation # 540 Dodge This The PondCast: SC2 News & Results Mutation # 539 Thunder Dome Mutation # 538 Media Blackout
Brood War
General
Pros React To: Calm's Big Brain Play Vs Mini !!!NEW BUG!!! FIRE ARCHONS [Visual] BW General Discussion New 3v3 BGH Ladder (and more) on ShieldBattery! [Personal Project Share] Terran Defense v0.60
Tourneys
[ASL22] Ro24 Group F [Megathread] Daily Proleagues Escore Tournament - Season 3 KCM Race Survival 2026 Season 3
Strategy
Replay Review Process - What do you do? Game Theory for Starcraft Odyssey Mineral Stack Saturation Fighting Spirit mining rates
Other Games
General Games
General RTS Discussion Thread Stormgate/Frost Giant Megathread Nintendo Switch Thread Anyone here play Quakeworld back in the day? EVE Corporation
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
[TL LoL EUW IHs] Teemo shall perish TSM pausing esports and CLG Dead
Heroes of the Storm
Heroes of the Storm 2.0
Hearthstone
Deck construction bug
TL Mafia
TL Mafia Power Rank TL Mafia Community Thread NeO.D_StephenKing vs This Guy From 1 Million Dance
Community
General
US Politics Mega-thread Russo-Ukrainian War Thread Things Aren’t Peaceful in Palestine Artificial Intelligence Thread Canadian Politics Mega-thread
Fan Clubs
MarineLorD Fan Club The Creator Fan Club The ShoWTimE Fan Club
Media & Entertainment
Movie Discussion! Anime Discussion Thread
Sports
Football (Soccer) Thread TeamLiquid Health and Fitness Initiative For 2023 MLB/Baseball 2023 NBA General Discussion
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List Northern Ireland Global Starcraft
Blogs
Violent Games and Crime Rate…
TrAiDoS
LOCKPICKING NOOB
LUCKY_NOOB
Cathedral Of CS And NY pizza a…
FuDDx
Please support my new stand…
Peanutsc
Customize Sidebar...

Website Feedback

Closed Threads



Active: 9052 users

The Amazing IE8 - CSS Problems

Blogs > tofucake
Post a Reply
tofucake
Profile Blog Joined October 2009
Hyrule19249 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
Hyrule19249 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
Hyrule19249 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
Venezuela9377 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
Hyrule19249 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
RotterdaM Event
16:30
Rotti's PatchesSC Open
RotterdaM959
TKL 276
IndyStarCraft 201
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
RotterdaM 959
ByuN 418
TKL 276
IndyStarCraft 201
JuggernautJason22
ZombieGrub21
EnDerr 8
ProTech0
StarCraft: Brood War
Britney 19611
Calm 3857
Dewaltoss 133
Mini 109
Soulkey 87
soO 18
Hm[arnc] 14
League of Legends
KnowMe67
Counter-Strike
fl0m3411
Heroes of the Storm
Liquid`Hasu375
Other Games
Grubby2779
FrodaN668
crisheroes668
Beastyqt610
B2W.Neo490
shahzam432
XaKoH 354
mouzStarbuck288
C9.Mang0133
ArmadaUGS98
Trikslyr66
Chillindude10
Organizations
Other Games
gamesdonequick897
StarCraft 2
angryscii 0
[ Show 13 non-featured ]
StarCraft 2
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• Migwel
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• C_a_k_e 1860
• masondota2524
League of Legends
• TFBlade857
Other Games
• imaqtpie1132
• Shiphtur178
Upcoming Events
The PiG Daily
1h 30m
BASILISK vs TBD
Serral vs Rogue
Korean StarCraft League
6h 30m
GSL
15h 30m
AI Arena Tournament
21h 30m
Replay Cast
1d 4h
WardiTV Weekly
1d 15h
Sparkling Tuna Cup
2 days
Afreeca Starleague
2 days
GSL
3 days
PiGosaur Cup
4 days
[ Show More ]
Replay Cast
5 days
The PondCast
5 days
IntoTheTV X SOOP
6 days
Liquipedia Results

Completed

Proleague 2026-08-27
PiG Sty Festival 8.0
META DYMY #4

Ongoing

KCM Race Survival 2026 Season 3
K-JUNGMAN
ASL Season 22
Super Anchor Qualifying S3
CSL Season 22: Qualifier 2
RSL Revival: Season 6
Light Tournament 2026
BLAST Open Fall 2026
Esports World Cup 2026
Esports World Cup 2026: LCQ
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
Stake Ranked Episode 3
XSE Pro League 2026
IEM Cologne Major 2026

Upcoming

BSL 2026 LAN: Kraków
CSL 2026 AUTUMN (S22)
Escore Tournament S3: King of Kings
Acropolis #5
Acropolis #5 - TRS
Blizzard Classic Cup 2026
Acropolis #5 - GSA
HSC XXX
SC4ALL II: StarCraft II
Kung Fu Cup 2026 Grand Finals
RSL Offline Finals
Calamity Invitational
Big Dog Cup 2026 Div 1
IEM Beijing 2026
Stake Ranked Episode 5
PGL Masters Bucharest 2026
1win Private Club #2
Thunderpick World Champ. '26
ESL Pro League Season 24
Stake Ranked Episode 4
1win Private Club #1
Logitech G Play Connect 2026
SL StarSeries Fall 2026
FISSURE Playground #3
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.