So I’m doing this webpage and it’s looking just great. I’ve got a sweet kinda art-deco looking background–not a tiling one, I chopped up a large asymmetrical image and reassembled it. A bit tricky, 'cause everything has to match exactly, and I had a reasonable amount of trouble trying to fudge some less-than-well-thought-out original design. But now it’s perfect. I’ve added some mouseovers and a really kickass javascript menu dropdown, made the whole page resizable so it looks as good in 800x600 as it does in 1200x1600 (but the text and header stay printable without cropping). The code’s all hand done and clean and tight and the image file sizes has been reduced–while keeping them looking good–to make sure it downloads as fast as possible. Now that this baby has been hammered out, all the other pages key off it, so the rest of the job is just restful production. I’m feeling like the coding queen, here. I rule. I am the master.
Oh wait–gotta check browser compatability issues. Won’t be any big deal, I know all the tweaks, though I’m doing a much more complex page than usual. I can iron out any Netscape issues in a flash. So I pull up my Netscape 4.73.
Netscape 4.x: So, we meet again, Gaudere.
Me: Hey, Netscape. Display the index page for me.
Netscape 4.x: ::derisive snort:: No, I don’t think so.
Me: Uh…what? Lemme check the code. ::view source:: Oh, I see–I left off an </table> tag, so you refused to draw the entire bottom half of the page.
Netscape 4.x: You have grown careless since last we met, Gaudere. A child would have known not to make such a obvious error. You will have to do much better if you ever hope to defeat me.
Me: Yeah, yeah, it was a newbie mistake. ::ftp’s to site, grabs page, adds tag, ftp’s back:: There. Display. ::pause:: What the fuck do you think you’re doing? Why are you tiling my backgrounds?
Netscape 4.x: Have you forgotten? I will place the table background image in any table you place inside the main table. I know you really wanted that backgound repeated in every single cell.
Me: But I just used that inner table for text formatting!
Netscape 4.x: Nope, I know what’s best here. Screw you.
Me: Fine. Set the background color of the inner table cell to #eeeedd.
Netscape 4.x: No. I will insert a random block of that color somewhere in the table, though.
Me: Fuck! Now the background image doesn’t show through. Undo.
Netscape 4.x: ::evil laugh::
Me: That damn random block of color is showing up in other cells too, dammit.
Netscape 4.x: I don’t like background colors in table cells. I refuse to display them properly.
Me: Fuck YOU. I need the left cell blue and the right one tan, how am I supposed to do that now? Um…Set the whole table to tan, remove all cell color settings and I’ll redo the righthand background image. There. Now about that image tiling in the main section… ::feints left with a bgcolor, then tags Netscape with background=" "::
Netscape 4.x: Background=" "? I am confused by your bizarre coding. I cannot comprehend it. I am so boggled that I must display the main cell’s background image and have it show through to the inner table.
Me: Woohoo! Me: 1, Netscape: 0
Netscape 4.x: Ah, but what about the lefthand column, Gaudere? I am tiling the image and it looks like crap, see?
Me: Argh! Maybe I’ll just do an entirely different site for Netscape users. How the hell can you be tiling? The background image is 112 pixels, the table cell is set to 112 pixels, what’s the problem?
Netscape 4.x: Tough titty, Gaudy. I want it 114 pixels, I don’t care what you say.
Me: Fine. Make it 1% wide and I’ll throw in a spacer image of 112 pixels.
Netscape 4.x: Nope, still 114. Going to give up yet?
Me: Is it the navigation you don’t like? What if I take it out?
Netscape 4.x: While I’d love to make you fuck with the lefthand nav for hours, I’m still not going to display properly even with the nav removed.
Me: Fuck fuck fuck. What if I set the width for the whole main table to 600?
Netscape 4.x: Now I will display the lefthand column properly. However, I will move your cool righthand corner search box to the middle of the page, making it look like shit.
Me: Bastard. So it’s the width=100% that is giving you fits? But if I change that the page won’t resize to fit all screens!
Netscape 4.x: Heh. Not my problem, babe. ::makes obscene gesture::
Me: Crap. To get that search box where it belongs, I’ll have to make it part of the upper table and make the lower table 500 wide. But to do that, I’ll need to redo all those damn background images again! They took me forever!
Netscape 4.x: Heh heh heh. Gaudere: 1, Netscape: 1
Me: Now, why is there extra space around the images in the page?
Netscape 4.x: Oh, like I’d tell you.
Me: Hm… ::runs search on internet:: You add extra space if a </td> tag is not on the same line as the image code. Well, isn’t that stupid. Ok, I’ll fix it.
Netscape 4.x: Oh, all right. I will make the page display look marginally less crappy.
Me: ::shoots triumphant fist in the air:: Me: 2 Netscape: 1 Hey, what is going on with that search box? Why are you doing it on two lines?
Netscape 4.x: ::shrug:: Input box is too big.
Me: Ok, what if I used a variable-width table? Does that make you happy?
Netscape 4.x: Nope, I’m going to continue to make it look like hell.
Me: Fine, then, make it width=6. Good. Now lemme check it in Internet Explorer. Now see how nice the background looks in IE? Why can’t you–what the hell is with that input box, IE? It’s the size of a Pez.
IE: I must display my input box sizes as wildly different than those in Netscape. We wish to make cross-browser coding as painful as possible.
Me: Fuck you too, IE.
IE: Hey, you should be thanking me. If HTML wasn’t the most pain-in-the-ass way of making text and images look attractive, you’d be out of a job.
Me: I don’t feel very grateful. Fine. Stylesheets, set the input box to fixed-width courier, 12 pixel font size.
Stylesheets: Got it.
IE and Netscape: Curses! Now we must display the input box in a fairly close approximation of the same size, making the page look halfway cool!
Me: Hah! Me: 3, Browsers: 1
Netscape 4.x: You haven’t seen the last of me yet, Gaudere! You still have to redo all those background images without being even a single pixel off!
Me: Yeah, well, I can do it. I’m a zen Photoshop master. And I finally took my head out of my ass and started using guides for chopping up the main image. I will defeat you in the end!
Netscape 4.x: ::evil look:: Perhaps you will, Gaudere…but have you met–my big brother? ::cackles with glee::
Netscape 6.0: Yo. Got some code there that I can fuck up?
Me: ::runs screaming in fear::
Arrrgh!!! Netscape, you lick the sweat from monkey balls! Fuck you, Netscape! Fuck every last one of your programmers! And fuck me too, for not doing the sensible thing and setting the background image with stylesheets! Noooooo, I gotta show off my coding kung-fu and do it the hardest way possible, on the off chance that someone’s using some creaky old browser that doesn’t support stylesheets. The pages will look like crap without stylesheets anyway now, I use them for too much–Netscape 2? Too bad! But I’ve spent so much blasted time getting the background right this way I hate to completely scrap it. Netscape, I used to think you were all cool since you weren’t part of the whole Microsoft thing, but no longer–you just suck too bad. May your market share dwindle to the point that I no longer have to support you ever again!