יצירת CSS מותאם לאינטרנט אקספלורר

הסבר כיצד יוצרים CSS מיוחד לגרסה ספציפית של אינטרנט אקספלורר עם התייחסות לדרופל, ג'ומלה ו-וורדפרס.

דפדפן אינטרנט אקספלורר, גם בגרסאותיו המתקדמות יותר (7 ו-8) עדיין מדיר שינה מעיני המפתחים. לא נדיר לבדוק עיצוב מרהיב שיצרת בדפדפן אינטרנט אקספלורר 7 או 8 ולראות אותו מרוסק לחלוטין.

על מנת להקל על עצמכם, מומלץ להשתמש ב-reset CSS כדי לגרום לפחות להגדרות הדיפולטיביות של הדפדפנים להתנהג באופן זהה. זה לא ימנע את בעיות ה-cross browser אבל יקל על החיים.
אם בדקתם את המוצר באינטרנט אקספלורר ומדובר בבעיה קטנה (למשל הרווח בין הפסקאות הוא כפול) ניתן להשתמש בהאק לאינטרנט אקספלורר. אך מדובר בדרך לא ולידית שיש לנקוט בה רק אם ממש רוצים לחסוך זמן ומדובר בבעיות קטנות.

ברוב הפעמים שיש לנו בעיה עם אינטרנט אקספלורר, אנו נצטרך ליצור גיליון CSS שיעבוד רק לאינטרנט אקספלורר (כל הגרסאות) או רק לאינטרנט אקספלורר מגרסה מסוימת. זה נקרא גיליון CSS מותנה או באנגלית Conditional comments.

ידנית

1. יוצרים קובץ CSS כלשהו ומכניסים אליו איזושהי הגדרת ביקורת.
2. ב-head של המסמך יוצרים את השורה הבאה:


<!--[if IE 7]>
Special instructions for IE 7 here
< ![endif]-->

כאשר אנו יכולים להכניס כמה שורות כאלו למספר דפדפנים -7,8,9 ואפילו 6 אם אנו מפתחים עבורו. בהוראות המיוחדות מקובל להכניס קישור לגיליון CSS בשם ie7.css (או כל מספר גרסה אחר) למשל:


<!--[if IE 7]>
<link rel="stylesheet" type="text/css" media="screen" href="ie7.css" />
< ![endif]-->

ניתן להשתמש ב-Conditional comments על מנת להכניס גם סקריפטים ותכנים אחרים, לא רק CSS. מדובר בפתרון תקני שנחשב מקובל מאד.

הוספת גרסת CSS מותנית לאינטרנט אקספלורר בדרופל 6/7

אם אתם משתמשים במערכת דרופל, תוכלו להוסיף גרסת CSS מותנית לאינטרנט אקספלורר בקלות באופן הבא:

1. יוצרים דף CSS מיוחד לאינטרנט אקספלורר מגרסה מסוימת (נניח אינטרנט אקספלורר 7 – ie7.css).
2. נכנסים ל-mytheme.info (כש-mytheme הוא השם של התמה שבה אתם משתמשים כמובן) ומכניסים את הטקסט הבא:


conditional-stylesheets[if IE7][]       = ie7.css

ג'ומלה

כאשר אנו משתמשים בג'ומלה, עלינו להוסיף את ה-CSS המותאם באופן ידני ל-header.php שלנו או לכל מקום אחר בתבנית שבו יש לנו את ה-head.

1. יוצרים דף CSS מיוחד לאינטרנט אקספלורר מגרסה מסוימת (נניח אינטרנט אקספלורר 7 – ie7.css).
2. נכנסים ל-header.php ומכניסים את הטקסט הבא:


<!--[if IE 7]>
<link href="<?php echo $this->baseurl; ?>/templates/< ?php echo $this->template?>/css/ie7.css" rel="stylesheet" type="text/css" />	
< ![endif]-->

וורדפרס

בדומה לג'ומלה, גם בוורדפרס אנו צריכים להכניס את ה-CSS המותאם לאינטרנט אקספלורר ב-head.php או בכל קובץ אחר ב-template שלנו המדפיס את ה-head.

1. יוצרים דף CSS מיוחד לאינטרנט אקספלורר מגרסה מסוימת (נניח אינטרנט אקספלורר 7 – ie7.css).
2. נכנסים ל-header.php ומכניסים את הטקסט הבא:


<!--[if IE 7]>
<link rel="stylesheet" href="<?php bloginfo('template_directory'); ?>/ie7.css" media="screen" type="text/css" />
< ![endif]-->

וזה הכל!

פוסטים נוספים שכדאי לקרוא

עבודה בהיי טק

איך מראיינים סניורים?

השיטה שלי לבדיקת התאמה טכנית למתכנתות ולמתכנתים בכירים עם כמה שנות ניסיון.

תמונה מצוירת של רובוט שמנקה HTML
יסודות בתכנות

סניטציה – למה זה חשוב

הסבר על טכניקה פשוטה וידועה מאד שאנו מפעילים על מידע לפני שאנחנו מציגים אותו ב-HTML באפליקציה או באתר.

פתרונות ומאמרים על פיתוח אינטרנט

SSG עם next

אחרי שלמדנו במאמר הקודם מה זה SSR והבנו שלא מדובר בקליע כסף שפותר את כל הבעיות שלנו, נלמד על SSG שיכול להקל על כמה מהבעיות של SSR.

פתרונות ומאמרים על פיתוח אינטרנט

המנעו מהעלאת source control לשרת פומבי

לא תאמינו כמה אתרים מעלים את ה-source control שלהם לשרת. ככה תמצאו אותם וגם הסבר למה זה רעיון רע.

גלילה לראש העמוד