ה iframe אלמנט משלב דפי אינטרנט אחרים ישירות לדף הנוכחי. HTML5 מציג שלוש תכונות חדשות לאלמנט זה כדי לסייע במתן מענה לחששות האבטחה והשימושיות של HTML4 iframe יישום.
המאפיין 'ארגז חול'
ה ארגז חול תכונה של iframe אלמנט הוא תכונת אבטחה שימושית עבור iframes. כשאתה מציב אותו בתוך iframe אלמנט, סוכן המשתמש אינו מאפשר תכונות העלולות להוות סיכון אבטחה לאתר ולמשתמשיו.
לדוגמה:
מורה לדפדפן לא לאפשר את כל התכונות שעלולות להוות סיכון אבטחה - כך שאין תוספים, טפסים, סקריפטים, קישורים יוצאים, עוגיות, אחסון מקומי וגישה לדף של אותו אתר.
ואז, באמצעות ארגז חול ערכי מילות מפתח, הפעל מחדש חלק מהתכונות. מילות מפתח אלה הן:
- אפשר טפסים: אפשר הגשת טופס.
- אפשר-אותו-מקור: אפשר לסקריפטים לגשת לתוכן כמו קובצי Cookie מאותו דומיין מקור.
- התרת סקריפטים: אפשר סקריפטים לפעול ב- IFRAME זה.
- אפשר ניווט למעלה: אפשר קישורי iframe וסקריפטים ליעד "_top"
אל תקבע את שניהם התרת סקריפטים ו אפשר-אותו-מקור מילות מפתח יחד על אותו דבר iframe. אם כן, הדף המוטמע יכול להסיר את ארגז חול תכונה, תוך ביטול היתרונות הביטחוניים שלה.
תכונת 'srcdoc'
ה srcdoc תכונה מעניקה למעצב האינטרנט שליטה רבה יותר על iframes כמו גם על אבטחה רבה יותר. במקום לקשר לדף אינטרנט אחר כתובת אתר, מעצב האתרים מציב את ה- HTML המיועד להצגה ב- iframe בתוך ה srcdoc תְכוּנָה.
על ידי הצבת HTML שנוצר על ידי מקור לא מהימן, כגון טופס, לתוך iframe אתה יכול לארגז חול את התוכן הלא מהימן ועדיין להציג אותו בדף. הערות בבלוג הן דוגמה. מרבית הבלוגים מציעים רק מספר מוגבל של תגיות HTML שמגיבים יכולים להשתמש בהן בתגובות שלהם. אבל על ידי הצבת הערות אלה בארגז חול iframe משתמש ב srcdoc המאפיין, ההערות יכולות להיות חזקות יותר תוך הגנה על האתר בכללותו.
אבטחה ו- Iframes
שתי התכונות שלעיל מספקות אבטחה עבור שלך iframe אלמנטים, אך הם אינם הגנה מפני כל האתרים הזדוניים. אם האתר הזדוני יכול לשכנע את המבקרים באתר שלך לגשת ישירות לתוכן העוין (כגון על ידי הקלדת כתובת ה- URL בדפדפן שלהם) הם עדיין יכולים להיות מותקפים.
אם אתה יכול, הגדר את התוכן שנמצא בארגז החול iframe כמו טקסט / html-sandboxed סוג MIME.
התכונה 'חלקה'
ה בצורה חלקה תכונה היא תכונה בוליאנית המורה לדפדפן להציג את iframe כאילו היה חלק ממסמך ההורה. אם אתה רוצה את שלך iframe כדי להציג בצורה חלקה, כלול רק את המאפיין הזה באלמנט:
אבל עושה את iframe חלקה זה לא רק מראה, זה גם האופן שבו הדף מתקשר עם המסגרת. כמה טיפים:
- קישורים ב iframe ייפתח בחלון ההורה אלא אם כן iframe בדף הוגדר היעד "_SELF".
- CSS ב iframe יתווסף למפל המסמך כולו.
- יסוד השורש של iframe העמוד נחשב לילד של iframe.
- הרוחב והגובה של iframe מוגדרים בצורה דומה לאיך אלמנטים אחרים ברמת הבלוק היה מוגדר.
- כאשר מסמך האב נצפה על ידי כלי לעיבוד דיבור כמו קורא מסך, ה- iframe ייקרא מבלי להודיע על כך כמסמך נפרד.
כל סקריפטים במסמך האב ישפיעו על iframe מסמך באותו אופן. לדוגמה, אם סקריפט רשום את כל המסגרות בדף, הקישורים ב- iframe יהיה רשום גם כן.
במילים אחרות, ה בצורה חלקה תכונה עושה הרבה יותר מסתם להסיר את הגבולות מה- iframe. אם אתה מתכוון להגדיר iframe כדי להיות חלקה, עליכם להיות בטוחים מאוד בתוכן כדי שלא תוסיפו שום סיכון אבטחה לאתר שלכם על ידי הטמעת אתר זדוני.