לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 14-02-2007, 23:03
  DCD DCD אינו מחובר  
 
חבר מתאריך: 17.05.05
הודעות: 7,321
מירכוז אלמנט...משהו מסובך

אני בעבר פתחתי מספר אשכולות בנוגע למירכוז אלמנט, ומאז למדתי איך ממרכזים אלמנטים בעזרת CSS.

הבעיה היא שלמרות שאני עושה זאת, זה לא עובד בכלל (לפחות לא בשיטת ה- margin) ואני יודע בערך מה הסיבה אבל לא מהו הפיתרון.

קודם כל, שתדעו שהעברתי את המערכת שלי (נכתבה בשפת PHP) מקידוד windows-1255 ל- utf-8, זאת אומרת שעשיתי 2 דברים:
1. שמרתי את כל הקבצים בפורמט UTF-8, במקום הפורמט הקודם שהיה להם - ANSI (כשעושים Save as... ואז יש בחירה של Encoding). עשיתי זאת באמצעות התוכנה הרגילה Notepad.
2. שמרתי את כל הקבצים באמצעות התוכנה Notepad++ כדי להסיר את חתימת ה-BOM שנוצרת בתחילתו של כל קובץ PHP.
3. שינתי את הקידוד במסד הנתונים ל-utf8 וקבעתי collation בהתאם.

הבעיה של מירכוז האלמנטים נובעת מהצעד הראשון שעשיתי - שינוי הקידוד של הקבצים עצמם מ-ANSI ל-UTF-8. בדקתי את זה אח"כ על קבצים ישנים של המערכת (קבצי גיבוי ששמרתי לפני שנוצרה הבעיה, שבהתחלה בעיה המירכוז בהם לא הייתה, אבל אחרי ששמרתי בפורמט UTF-8 הופיעה הבעיה) וראיתי שזה באמת הבעיה.

אני חייב להשאיר את הקידוד של הקבצים שיהיה UTF-8, אבל יש את הבעיה במירכוז האלמנטים...

מה אפשר לעשות כדי לפתור את הבעיה?
מצאתי פיתרון אחר אבל הוא די מעצבן, והפיתרון הוא לשים אלמנט מסביב לאלמנט שאני רוצה למרכז, ולתת לו ערך ב-CSS שהוא: text-align:center.

תודה מראש.

עריכה:
מצאתי עוד דרך - להגדיר ב- margin לפי אחוזים, ולא לפי auto. אבל זה עדיין מעצבן והייתי רוצה לדעת למה auto פשוט לא עובד ואיך לגרום לו כן לעבוד?

נערך לאחרונה ע"י DCD בתאריך 14-02-2007 בשעה 23:23.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #5  
ישן 15-02-2007, 13:14
  DCD DCD אינו מחובר  
 
חבר מתאריך: 17.05.05
הודעות: 7,321
בתגובה להודעה מספר 1 שנכתבה על ידי DCD שמתחילה ב "מירכוז אלמנט...משהו מסובך"

לי מוזר שהקידוד קשור בדיוק כמו שזה מוזר לכם.

אבל אני ניסיתי לבדוק אם זה ספציפית קשור, וזה נכון: לקחתי את קבצי הגיבוי של המערכת (עוד לפני ששיניתי את הקידוד או שעשיתי משהו שקשור לזה בכלל), שמתי בתיקייה אחרת בשרת ונכנסתי לדפי המערכת. הדפים עבדו כמו שצריך והאלמנטים שהיו צריכים להיות במרכז, היו במרכז.
אח"כ לקחתי מספר קבצים שהיו בהם אלמנטים עם המאפיין style והערך margin: auto; , שיניתי את הקידוד של הקבצים מ-ANSI ל-UTF-8, ואז נכנסתי שוב לאתר. אחרי שעשיתי זאת שמתי לב שהאלמנטים לא ממורכזים כמו שהוגדר להם.

yoavmatchulsky - גם את זה עשיתי.

iNfLuX - זה הקוד שכתבתי מייד אחרי תג ה-body (ערכתי טיפה את הקוד שלך כדי שזה יעבוד כמו שהתכוונת):
קוד:
<div style='width:800px; margin:0px auto; background-color:blue; color:white;'> - מורכז לעומת הבודי של הדף <div style='width:400px; margin:0px auto; background-color:red;'> - מורכז בתוך הדיב העליון </div></div>


וזה התוצאה:
https://2007-uploaded.fresh.co.il/2...15/41783688.gif

t_a7 - האתר נמצא ב-localhost, בשרת הביתי אצלי.
אבל הנה לדוגמא קוד של מירכוז אלמנט:
קוד:
<br /><br /><div class='bottom-links'><a href='http://localhost/web/index.php?act=idx'>עמוד ראשי</a></div>


והנה הקוד CSS:
קוד:
html { overflow-x: auto; margin:0; padding:0; } body { background-color:transparent; color:black; font-family:Verdana, Arial, Helvetica, sans-serif; font-weight:normal; font-size:13px; text-align:right; direction:rtl; margin:3px; padding:0; border:0; } body:first-line /* Important! Do NOT remove! */ { font-size:0; } a:link, a:visited, a:active { text-decoration: underline; color:black; background-color:transparent; } a:hover { text-decoration:underline; } .bottom-links { background-color:#6699cc; color:#003366; border:1px solid black; width:100%; padding:3px 3px 3px 3px; text-align:right; font-weight:bold; margin:auto 3% 10px 3%; } .bottom-links a { color:#003366; }


זהו כל קוד ה-CSS שיכול להיות קשור.

עכשיו האלמנט ה-DIV הנ"ל הוא ממורכז, כי אם תשים לב, בclass שלו (bottom-links) כתבתי:
קוד:
margin:auto 3% 10px 3%;

כשבמקום ה- 3% אמור להיות auto.

דבר נוסף, אם תשימו לב הוספתי את הקוד:
קוד:
body:first-line /* Important! Do NOT remove! */ { font-size:0; }

מה שאני חייב להוסיף, כי אחרת בשורה העליונה, מיד אחרי תג ה-BODY, יופיע לי רווח שתלוי בגודל ה-font. ללא שאוסיף את הקוד הנ"ל שמגדיר את גודל ה-font ל-0, יש לי רווח של שורה בגודל font של 13px כפי שמוגדר לתג ה-BODY.
אבל לפני שינוי הקידוד לא הייתי צריך להוסיף את זה...

תודה על העזרה

נערך לאחרונה ע"י DCD בתאריך 15-02-2007 בשעה 13:39.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #7  
ישן 15-02-2007, 13:38
  DCD DCD אינו מחובר  
 
חבר מתאריך: 17.05.05
הודעות: 7,321
בתגובה להודעה מספר 6 שנכתבה על ידי iNfLuX שמתחילה ב "הנה מספר שינויים שעשיתי בקוד..."

זה מה שכתבתי לתג ה-BODY ב-CSS:

קוד:
body { margin:0px auto; width:600px; color:black; font-family:Verdana, Arial, Helvetica, sans-serif; font-weight:normal; font-size:13px; text-align:right; direction:rtl; padding:0; border:0; background-color:transparent; }


ול- width אין השפעה בכלל! ה-width של התג body לא משתנה, כאילו לא הגדרתי לו width.

ערכתי את קוד ה-CSS למה שכתבת, ועדיין זה לא ממורכז.

ד"א, הנה הקוד בראש דף ה-HTML (אם זה משנה משהו):
קוד:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"> <head><title>Dor's Website!</title> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta name="copyright" content="Dor Marom and Dor's Website!" /> <meta http-equiv="Content-Language" content="he" /> <script type='text/javascript'></script> <script src="scripts/global_functions.js" type='text/javascript'></script> <!--Switch.This.For.User.Redirection--> <style type='text/css' media="all">@import url("css.css");</style> </head> <body><div style='width:800px; margin:0px auto; background-color:blue; color:white;'> - מורכז לעומת הבודי של הדף <div style='width:400px; margin:0px auto; background-color:red;'> - מורכז בתוך הדיב העליון </div></div> <!-- Logo --><div class='outer-logo'><div class='logo'><img src='images/logo.gif' border='0' alt='' /></div></div>

נערך לאחרונה ע"י DCD בתאריך 15-02-2007 בשעה 13:41.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #9  
ישן 15-02-2007, 14:02
  משתמש זכר iNfLuX iNfLuX אינו מחובר  
 
חבר מתאריך: 13.07.06
הודעות: 106
שלח הודעה דרך ICQ אל iNfLuX
עובד כמו שעון שוויצרי
בתגובה להודעה מספר 1 שנכתבה על ידי DCD שמתחילה ב "מירכוז אלמנט...משהו מסובך"

קוד ה-CSS





קוד:
html { overflow-x: auto; padding:0; } body { background-color:transparent; color:black; font-family:Verdana, Arial, Helvetica, sans-serif; font-weight:normal; font-size:13px; direction:rtl; margin:0px auto; width: 100%; border:0; } body:first-line /* Important! Do NOT remove! */ { font-size:0; } a:link, a:visited, a:active { text-decoration: underline; color:black; background-color:transparent; } a:hover { text-decoration:underline; } .bottom-links { background-color:#6699cc; color:#003366; border:1px solid black; width:100%; padding:3px 3px 3px 3px; text-align:right; font-weight:bold; margin:auto 3% 10px 3%; } .bottom-links a { color:#003366; }







קוד ה-html





קוד:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"> <head><title>Dor's Website!</title> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta name="copyright" content="Dor Marom and Dor's Website!" /> <meta http-equiv="Content-Language" content="he" /> <script type='text/javascript'></script> <script src="scripts/global_functions.js" type='text/javascript'></script> <!--Switch.This.For.User.Redirection--> <link rel='stylesheet' type='text/css' href='style.css' /> </head> <body> <div style='width:800px; margin:0px auto; background-color:blue; color:white;'>Margined in body <div style='width:400px; margin:0px auto; background-color:red;'>Margined in blue div </div></div> </body> </html>







התוצאה:



תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה
_____________________________________

[התמונה הבאה מגיעה מקישור שלא מתחיל ב https ולכן לא הוטמעה בדף כדי לשמור על https תקין: http://muzx.net/files/public/avatars/1208187486.gif]

[התמונה הבאה מגיעה מקישור שלא מתחיל ב https ולכן לא הוטמעה בדף כדי לשמור על https תקין: http://muzx.net/files/public/avatars/1188591880.gif]

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #12  
ישן 15-02-2007, 18:34
  DCD DCD אינו מחובר  
 
חבר מתאריך: 17.05.05
הודעות: 7,321
בתגובה להודעה מספר 11 שנכתבה על ידי iNfLuX שמתחילה ב "ערכתי קצת את קוד ה-html אם..."

שמתי לב לשינוי ועשיתי כפי ששינית אבל לא השתנה והאלמנט לא מורכז.

עכשיו ניסיתי איזה משהו וקיבלתי תוצאות מענינות: לאחר שניכנסתי לדף ה-index של המערכת, שמרתי את הדף כקובץ htm בפורמט UTF-8 אל המחשב. צימצמתי כמה שיותר את הקוד שהיה בכל הדף, עד שהגעתי לקוד הבא:

קוד:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head><title>Problem</title> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta name="copyright" content="Dor" /> <meta http-equiv="Content-Language" content="he" /> <style type='text/css'> html { overflow: auto; padding:0; margin:auto; } body { margin:0px auto; width: 100%; color:black; font-family:Verdana, Arial, Helvetica, sans-serif; font-weight:normal; font-size:13px; text-align:right; direction:rtl; padding:0; border:0; background-color:transparent; } body:first-line /* Important! Do NOT remove! */ { font-size:0; } </style> </head> <body><div style='width:800px; margin:0px auto; background-color:blue; color:white;'>fff <div style='width:400px; margin:0px auto; background-color:red;'>fgff </div></div> </body> </html>


הנה הדף אחרי שהעלתי אותו לשרת של פרש:
https://2007-uploaded.fresh.co.il/2...15/13697520.htm
והנה תמונה של איך שזה נראה(למרות שאפשר לראות את זה גם דרך העמוד html):
https://2007-uploaded.fresh.co.il/2...15/66784625.jpg


מה יכול להיות לא טוב...?

עריכה:
גם ניסיתי את זה עם קוד ה-CSS שאתה כתבת...

עריכה2:
ב-FireFox זה עובד מצוין!
רק ב-IE לא! וזה עוד יותר מוזר :\

נערך לאחרונה ע"י DCD בתאריך 15-02-2007 בשעה 18:53.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 20:51

הדף נוצר ב 0.09 שניות עם 10 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר