קופסאות ג'נריות ומוזילה

אוריקס

New member
קופסאות ג'נריות ומוזילה

יש לי בעייה קטנה ב CSS... יש לי חלק מעמוד (די פשוט יחסית). העמוד מוצג יפה באופרה וב IE, במוזילה קצת פחות... אולי מישהו יודע מה הבעייה
.
 

nirtheking

New member
אני מניח שאתה

יודע איך מחשבים את רוחב הקופסא (padding+margin+border+width(צדדיים)) בגלל שה-padding+margin+width שווה ל-100% (בהכללה של כל הקופסאות) , אז הborder עושה שזה יהיה יותר מ-100% ומוריד לך קופסא אחת למטה הצלחתי להגיע למשהו כמעט 100% דף עם ה-CSS הבא:
.right { width: 20%; } .center { border-left: medium none; border-right: medium none; width: 26%; } .left { width: 40%; }​
שים לב שהקופסאות בהכללה ביחד צגיעות לרוחב של 98%+12px מהדף מקווה שעזרתי
 

nirtheking

New member
טעות קטנה ../images/Emo13.gif

רק ה-width של שלושת הקופסאות אצלך שווה ל-100% (ביחד) ולכן כאשר הוספת את ה-padding לכל קופסא זה גדל ב-12% וה-border הוסיף עוד 12px ולכן זה קרה
 

אוריקס

New member
את זה גם אני יודע ../images/Emo3.gif

המטרה שזה יראה טוב בכל הדפדפנים...
 

idansof

New member
הבעיה לא במוזילה../images/Emo13.gif

למעשה, אם תוסיף DTD(כדי להפעיל מצב סטנדרטים), אקספלורר 6 ואופרה יציגו זאת בצורה דומה. הבעיה נובעת מההבדל בין מודל הקופסא של אקספלורר(שלא במצב סטנדרטים), לבין המודל התקני של הW3C. לפי מודל הקופסא של IE, הרוחב שאתה מגדיר בwidth כולל את הpadding וborder, זאת אומרת, בחישוב רוחב האלמנט, שני הערכים הראשונים מוחסרים מהראשון. לעומת זאת, לפי המודל של הW3C, הן הpadding והן הborder הם ב_תוספת_ להגדרת הרוחב. כדי לגרום לדף לפעול במצב תקנים ניתן לעשות את הפעולות הבאות: * להוריד את הpadding האופקי, או לקחת אותו בחשבון במתן ערך הwidth(במקרה שלנו, הורדה של 4 אחוזים) * כיוון ולא ניתן, וגם לא רצוי, להגדיר רוחב גבול באחוזים, ניתן להשתמש בoutline במקום border, שאינו תופס מקום. outline נתמך על ידי אופרה, ספארי, חלקית ע"י מוזילה(כיוון שהיישום של מוזילה לא תקני לחלוטין, הוא מצויין על ידי -moz-outline), ואקספלורר למקינטוש. לגבי אקפסלורר לחלונות, אני מניח שאפשר להשתמש בexpressions כדי לפתור את העניין עד אשר יועבר למגרש הגרוטאות יחד עם נטסקייפ 4
 

אוריקס

New member
המממ

את מה שכתבת ידעתי (ומכאן כמובן הבעייה). השאלה היא האם יש דרך לגרום ל IE לחשב את הרוחב כמו מוזילה או ההפך...
 

nirtheking

New member
ציטוט ../images/Emo132.gif

"למעשה, אם תוסיף DTD(כדי להפעיל מצב סטנדרטים), אקספלורר 6 ואופרה יציגו זאת בצורה דומה."
 

אוריקס

New member
נפתר כך:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">​
עשיתי מה שה validator רוצה וזה הסתדר
 

nirtheking

New member
ד"א

לאחרונה שמתי לב ש-XHTML 1.1 לא שונה ממש מ-STRICT רק ש-name בוטל מהאלמנטים a ו-img (שאני מניח שאתה גם לא משתמש בהם) , ש-style הוגדר כ-deprectad, אין יותר מאפיין lang אלא xml:lang והאוסף "אודם"(ruby) נכנס ל-XHTML פרטים כאן: http://www.w3.org/TR/xhtml11/changes.html#a_changes אז כך שאם אתה כבר כותב עם XHTML STRICT לא תהיה לך שום בעיה להעביר ל-XHTML 1.1 אני מניח
 

nirtheking

New member
כן

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="he">​
 
למעלה