OZONE Asylum
Forums
XML - XSL - XSLT - XHTML - CSS - DOM
eeEEkK Mac-icide & CSS
This page's ID:
10674
Search
QuickChanges
Forums
FAQ
Archives
Register
Edit Post
Who can edit a post?
The poster and administrators may edit a post. The poster can only edit it for a short while after the initial post.
Your User Name:
Your Password:
Login Options:
Remember Me On This Computer
Your Text:
Insert Slimies »
Insert UBB Code »
Close
Last Tag
|
All Tags
UBB Help
Do mean it has problems in Mac IE? Because I've never seen a problem in Netscape unique to a platform, they share a common codebase, while IE has a completely separate development team for the Mac. Also, it looks fine in NS 4.78 on my Mac, but it has that horizontal bar image overlapping some text in IE 5.0 When I get some time I can go through your code to try to debug it on the Mac, but for now I should just mention a few things. First of all, different versions of IE have as many differences as the difference between platforms. When you say you have it working fine on the PC, I hope you have 3 PCs so you can test it in IE 5, 5.5 and 6.0. There are obnoxious differences between seemingly close versions that mostly show up in the CSS formatting. This leads in to the 2nd part of your problem. A common template. Well, I use CSS only for font appearances and block-level formatting (ie. no positioning attributes). I still use tables for layout. Right off the bat there is an un-reconcileable difference between browsers in the way they handle margins on lists and headings. Namely, Netscape has a tendency to assume base margins that are greater than 0. So if you set the margin-bottom to 0 for a heading tag, it still has a space underneath it in NS, but not IE. With lists it's even hairier because I believe there are more than 2 possible 'assumed' margins and they aren't easy to sort out. Using a javascript to set variable values for these attributes only complicates matters. The best solution for these problems is to use <div>s for all your blocks. So instead of <h1> you would use <div class="whatever">. And instead of <ul><li></li></ul> you would use <div class="someotherthing"><li></li></div>. This solves many problems because the varying browsers don't make dumb assumptions about base-values for <div>s. Of course this means your entire page needs to be coded using <div>s instead of the standard tags which makes it difficult to use HTML editors. On my site I have one base stylesheet that is always loaded (thus letting me see its application in Dreamweaver), but depending on the browser, other stylesheets with properties that override the basic stylesheet are loaded. This is all done server side with PHP so that I don't need to change every single documents contents when I discover a new exception I need to add. This system is far too complex for a small website, but it illustrates the difficult decisions and compromises that must be made. The next revision of my site is a simpler design that is XML based, where a page can be viewed in a number of different formats that are user-based (ie. high-bandwidth, low-bandwidth, various resolutions). I am combining this with an intelligent content-management system that will provide mechanisms for keeping 100s of pages up-to-date by giving them expiration criteria that the system automatically checks, then notifies the appropriate web person when the page needs to be updated. It will also do such tasks as verifying unique titles and meta-tags for each page. Of course, with such an ambitious project, I am also in search of a CSS system that will make my page look good on 99% of browsers. Using <div>s for more consistent margin control will play a big part in this, but ultimately the only answer is to drop the bells and whistles, and define all the possible elements of your design in way that you can create a 'test suite' which can be used to verify the appearance of your website on any browser quickly. I've learned the hard way, that if you make a design, and debug it for all browsers, it will only take you as far as the current elements take you. In other words, if you find yourself needing to add a new style of heading or table, for example, adding it after the fact may introduce problems that can only be solved with very messy javascript or server side code. Now that I've been working on the same site for 2 years, I feel like I finally have the understanding of the subject to be able to define a set of elements that will encompass everything we need to communicate. In short, I think often you have to design an entire site just to understand what elements it has, so that you can go back and come up with a cross-browser design that supports all those elements. However, with real world deadlines, sometimes you just have to make sure it works in your client's browser ;) -jiblet
Loading...
Options:
Enable Slimies
Enable Linkwords
« Backwards
—
Onwards »