במפגש מפתחי דרופל שנערך בתיכון בליך בחודש אוגוסט האחרון, הרצה תום מחברת הינביט על התאמת עיצובים לאקספלורר. לאחר ההרצאה סייע תום בהתאמת גרלנד 6 לאקספלורר.
להלן סיכום הדברים שרשמתי במהלך ההרצאה, בתוספת מספר קישורים להרחבה.
באופן כללי מומלץ להתחיל לפתח את העיצוב על פיירפוקס - שם יש לנו הכי הרבה כלי debug. לאחר סיום הפיתוח בפיירפוקס, נטפל בהתאמת העיצוב לאקספלורר.
באופן כללי ישנן שלוש גישות לנושא התאמת עיצובים לאקספלורר:
א. לדחוף hacks ל-CSS. לכל אלמנט לדחוף hacks ספציפיים משלו.
ב. לשים את הכל בסוף קובץ ה-CSS (יותר מהיר ויותר מודולרי).
ג. לשים את כל ההגדרות בקובץ CSS נפרד ולהשתמש ב-explorer conditional comments (שאותן מבינים רק דפדפני אקספלורר לסוגיהם). גישה זו מומלצת במיוחד אם האתר צריך לעבור ולידציה להתאמתו ל-w3c.
תום משתמש רק בארבעה hacks ספציפיים:
א. ניצול כללי CSS שמתאימים רק לאקספלורר.
רק אקספלורר 6 יכול לראות תכונות שמתחילות עם קו תחתון. תכונות שמתחילות עם כוכבית - ניתן לראות אותן באקספלורר 6 ומטה. ותכונות שמתחילות עם נקודה - גלויות בכל גירסאותת אקספלורר:
element {
_width: 20em; /* IE6 only */
*width: 20em; /* All IE versions until and including IE6 */
.width: 20em; /* This is only visible by IE6 and IE7 version - essentially all IE versions */
}
במידת הצורך, אפשר להוסיף תכונות אלו בתוך הערות מותנות.
קישורים להרחבה:
דוגמה בעברית איך התאמתי את nice menus לאקספלורר:
http://drupal.org.il/node/1484
הערות מותנות הן הערות שעובדות אק באקספלורר, ומתאימות מצויין כדי לתת לאקספלורר הנחיות ייעודיות.
http://www.quirksmode.org/css/condcom.html
וויקיפדיה - CSS Filters.
http://en.wikipedia.org/wiki/CSS_filter
אילו חוקים מתאימים לאילו דפדפנים - הטבלה המלאה:
http://centricle.com/ref/css/filters
ב. שינוי ה-LAYOUT.
להוסיף בהתחלת כל כלל CSS תכונה מיוחדת - ZOOM - שמיועדת רק לאקספלורר ומביאה אותו לעבור למצב layout mode.
הכלל הבא גורם לכל האלמנטים המוצגים המוגדרים בתוכו להיות מוצגים בתצוגת בלוק:
div, ol, ul, iframe {
zoom:1;
}
הערות: