• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 17:04
CEST 23:04
KST 06:04
  • 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
Code S Season 1 - RO8 Preview3[ASL21] Ro8 Preview Pt2: Progenitors8Code S Season 1 - RO12 Group A: Rogue, Percival, Solar, Zoun13[ASL21] Ro8 Preview Pt1: Inheritors16[ASL21] Ro16 Preview Pt2: All Star10
Community News
Weekly Cups (April 27-May 4): Clem takes triple0RSL Revival: Season 5 - Qualifiers and Main Event11Code S Season 1 (2026) - RO12 Results12026 GSL Season 1 Qualifiers25Maestros of the Game 2 announced9
StarCraft 2
General
Code S Season 1 - RO8 Preview Behind the Blue - Team Liquid History Book Weekly Cups (April 27-May 4): Clem takes triple Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool Code S Season 1 (2026) - RO12 Results
Tourneys
GSL Code S Season 1 (2026) Sparkling Tuna Cup - Weekly Open Tournament RSL Revival: Season 5 - Qualifiers and Main Event StarCraft Evolution League (SC Evo Biweekly) 2026 GSL Season 2 Qualifiers
Strategy
Custom Maps
[D]RTS in all its shapes and glory <3 [A] Nemrods 1/4 players [M] (2) Frigid Storage
External Content
Mutation # 524 Death and Taxes The PondCast: SC2 News & Results Mutation # 523 Firewall Mutation # 522 Flip My Base
Brood War
General
BGH Auto Balance -> http://bghmmr.eu/ (Spoiler) Asl ro8 D winner interview BW General Discussion Do we have a pimpest plays list? AI Question
Tourneys
[ASL21] Ro8 Day 4 [ASL21] Ro8 Day 3 [Megathread] Daily Proleagues [ASL21] Ro8 Day 2
Strategy
Simple Questions, Simple Answers Fighting Spirit mining rates What's the deal with APM & what's its true value Any training maps people recommend?
Other Games
General Games
Dawn of War IV Stormgate/Frost Giant Megathread OutLive 25 (RTS Game) Daigo vs Menard Best of 10 Nintendo Switch Thread
Dota 2
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
Vanilla Mini Mafia Mafia Game Mode Feedback/Ideas TL Mafia Community Thread Five o'clock TL Mafia
Community
General
Russo-Ukrainian War Thread US Politics Mega-thread European Politico-economics QA Mega-thread 3D technology/software discussion Canadian Politics Mega-thread
Fan Clubs
The IdrA Fan Club
Media & Entertainment
Anime Discussion Thread [Manga] One Piece [Req][Books] Good Fantasy/SciFi books
Sports
2024 - 2026 Football Thread Formula 1 Discussion McBoner: A hockey love story
World Cup 2022
Tech Support
streaming software Strange computer issues (software) [G] How to Block Livestream Ads
TL Community
The Automated Ban List
Blogs
Movie Stars In Video Games: …
TrAiDoS
ramps on octagon
StaticNine
Broowar part 2
qwaykee
Funny Nicknames
LUCKY_NOOB
Customize Sidebar...

Website Feedback

Closed Threads



Active: 2116 users

The Amazing IE8 - CSS Problems

Blogs > tofucake
Post a Reply
tofucake
Profile Blog Joined October 2009
Hyrule19210 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
Hyrule19210 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
Hyrule19210 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
Hyrule19210 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 12h 26m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
mouzHeroMarine 471
StarCraft: Brood War
Britney 16064
Calm 3001
Mini 231
Dewaltoss 97
Mind 44
Aegong 41
NaDa 5
Dota 2
monkeys_forever376
Counter-Strike
fl0m2086
Heroes of the Storm
Liquid`Hasu470
Other Games
Grubby3777
tarik_tv3001
Liquid`RaSZi1081
shahzam329
C9.Mang0240
uThermal172
ArmadaUGS148
UpATreeSC59
Trikslyr43
ZombieGrub38
Fuzer 34
Organizations
Other Games
BasetradeTV545
Dota 2
PGL Dota 2 - Main Stream26
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
[ Show 15 non-featured ]
StarCraft 2
• Reevou 4
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• Michael_bg 3
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• masondota2514
League of Legends
• imaqtpie2154
Other Games
• Shiphtur330
Upcoming Events
GSL
12h 26m
SHIN vs Zoun
ByuN vs herO
OSC
13h 56m
OSC
15h 56m
Replay Cast
1d 2h
Escore
1d 12h
The PondCast
1d 12h
WardiTV Invitational
1d 13h
Zoun vs Ryung
Lambo vs ShoWTimE
Big Brain Bouts
1d 18h
Fjant vs Bly
Serral vs Shameless
OSC
2 days
Replay Cast
2 days
[ Show More ]
CranKy Ducklings
2 days
RSL Revival
2 days
SHIN vs Bunny
ByuN vs Shameless
WardiTV Invitational
2 days
Krystianer vs TriGGeR
Cure vs Rogue
uThermal 2v2 Circuit
2 days
BSL
2 days
Replay Cast
3 days
Sparkling Tuna Cup
3 days
RSL Revival
3 days
Cure vs Zoun
Clem vs Lambo
WardiTV Invitational
3 days
BSL
3 days
GSL
4 days
Afreeca Starleague
4 days
Soma vs Leta
Monday Night Weeklies
4 days
CranKy Ducklings
5 days
Afreeca Starleague
5 days
Light vs Flash
Replay Cast
6 days
Liquipedia Results

Completed

Proleague 2026-05-05
WardiTV TLMC #16
Nations Cup 2026

Ongoing

BSL Season 22
ASL Season 21
CSL 2026 SPRING (S20)
IPSL Spring 2026
KCM Race Survival 2026 Season 2
Acropolis #4
YSL S3
SCTL 2026 Spring
RSL Revival: Season 5
2026 GSL S1
BLAST Rivals Spring 2026
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 1
BLAST Open Spring 2026
ESL Pro League S23 Finals
ESL Pro League S23 Stage 1&2
PGL Cluj-Napoca 2026

Upcoming

Escore Tournament S2: W6
KK 2v2 League Season 1
BSL 22 Non-Korean Championship
Escore Tournament S2: W7
Escore Tournament S2: W8
CSLAN 4
Kung Fu Cup 2026 Grand Finals
HSC XXIX
uThermal 2v2 2026 Main Event
Maestros of the Game 2
2026 GSL S2
Stake Ranked Episode 3
XSE Pro League 2026
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026
IEM Atlanta 2026
Asian Champions League 2026
PGL Astana 2026
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.