exchanging

مشکل در صفحه بعد از کوچک کردن ویندوز

شروع موضوع توسط andishehno ‏21 جولای 2007 در انجمن CSS

  1. andishehno

    andishehno Registered User

    تاریخ عضویت:
    ‏13 آپریل 2004
    نوشته ها:
    100
    تشکر شده:
    0
    سلام. من سایتی رو با css کار کردم ولی به دو مشکل برخوردم.
    اولش اینکه اگه به این صفحه در اینترنت اکسپلورر نگاه کنید در انتهای صفحه و یک قسمت سفید رنگ دیده میشه که توش نوشته ی "باشد" اومده. اما اگه تو فایرفاکس به همون صفحه نگاه کنید همچین چیزی نیست. من میخوام اینترنت اکسپلورر هم مثل فایرفاکس این مشکل رو نداشته باشه!!‌ فکر کنم مشکل از css هست و کجاش؟

    سوال دوم: همین صفحه در حالت maximum پنجره و نمایش 1024 مشکلی نداره اما وقتی پنجره رو minimize میکنیم و یا با نمایش 800 میبینیمش. مشکلی که ایجاد میشه کل صفحه در وسط قرار نمیگیره و حتی در IE نمیشه با scrollbar هم کار کرد. لطفاً برای این مشکل هم که ناشی از ناشی کاری من در css نویسی هست راه حلی بفرمایید.
    با تشکر:)
     
  2. amir abbas

    amir abbas Registered User

    تاریخ عضویت:
    ‏28 سپتامبر 2004
    نوشته ها:
    388
    تشکر شده:
    17
    خوب صفحه شما برای این وسط قرار نمی گیره چون شما اون بلوک وسطی رو به شکل absolute موقعیت دهی کردی و یه فاصله معینی رو از سمت چپ در نظر گرفتی
    شما الان این کد CSS رو داری

    کد:
    #mainbg {
    background-color:#FFFFFF;
    height:auto;
    left:122px;
    position:absolute;
    width:760px;
    }
    خوب شما باید این بخش رو تغییر بدی به این حالت
    کد:
    #mainbg {
    background-color:#FFFFFF;
    height:auto;
    position:relative;
    margin: 0 auto;
    width:760px;
    }
    این صفحه شما رو میاره وسط صفحه

    اون یکی مشکلت هم فکر کنم یه باگ تو IE6 باشه
    اجازه بدم من یه نگاه به کدت بندازم بعد برات توضیح میدم که چطور برطرفش کنی (البته اگر همون باگی باشه که من فکر میکنم)
     
  3. andishehno

    andishehno Registered User

    تاریخ عضویت:
    ‏13 آپریل 2004
    نوشته ها:
    100
    تشکر شده:
    0
    دوست عزیز در این صورت که شما کد دادی وقتی صفحه کوچیک میشه در وسط قرار میگیره اما وقتی صفحه ماکزیمم هست کل صفحه به سمت راست رفته! و در وسط نیست. البته فقط در IE این مشکل هست در فایرفاکس در هر دو حالت صفحه در وسط قرار داره
     
  4. amir abbas

    amir abbas Registered User

    تاریخ عضویت:
    ‏28 سپتامبر 2004
    نوشته ها:
    388
    تشکر شده:
    17
    خوب حق با شماست
    الان فهمیدم چی شد

    شما تو سبک تگ body دایرکشن رو راست به چپ کرد
    شما به جای این کار سبک body رو اینطوری مشخص کن

    کد:
    body{
    	font-family: Tahoma;
    	background-image: url(bg.jpg);
    	background-repeat: no-repeat;
    	background-color: #5c6874;
    	background-position: top center;
    	text-align: center;
    }
    ما به خاطر وجود یه باگ تو IE مجبوریم که text-align رو برای body روی center تنظیم کنیم و دایرکشن رو هم به body اختصاص ندیم
    بعد از body شما یه div داری که کل محتوا توشه. سبک اون رو باید اینطوری مشخص کنی

    کد:
    #mainbg{
    	position: relative; 
    	width: 760px; 
    	height: auto; 
    	margin: 0 auto;
    	background-color:#FFFFFF;
    	text-align: right;
    	direction: rtl;
    }
    ما الان دایرکشن رو به این بخش دادیم و text-align رو حالا روی right تنظیم کردیم
    این رو من الان تست کردم. این درست کار میکنه

    برای مشکل دومت هم که اون کلمه آخر دوباره تکرار میشه مربوط میشه به یه باگ تو IE 6 که آخرین کلمه متن آخرین عنصر شناور شده در صفحه رو کپی میکنه. این مشکل از قرار دادن کامنت تو عناصر شناور ناشی میشه. شما تمامی این کامنت هات رو حذف کن

    کد:
    <!------------ header --------------->
    
    <!--------------- menu ----------------->
    
    <!--------------- Right Sidebar ----------------->
    
    <!--------------- Middle ----------------->
    
    <!--------------- Left Sidebar ----------------->
    
    
    
    این مشکل شما رو به طور کامل برطرف میکنه
    من این یکی رو هم الان تو IE6 تست کردم

    موفق باشی
    قالب قشنگی شده
     
  5. andishehno

    andishehno Registered User

    تاریخ عضویت:
    ‏13 آپریل 2004
    نوشته ها:
    100
    تشکر شده:
    0
    آقا خیلی ممنون. مشکل الان تو IE و ff حل شده منتها یک مشکلی که هست. الان تو فایرفاکس bg سفید نیست. اما تو IE سفیده. اعمال شده. ولی تو فایرفاکس بکگراندی که باید سفید می بود مثل همین چیزی که تو IE نمایش داده میشه سفید نیست.!
     
  6. amir abbas

    amir abbas Registered User

    تاریخ عضویت:
    ‏28 سپتامبر 2004
    نوشته ها:
    388
    تشکر شده:
    17
    اون پس زمینه مشکوک میزنه
    من فکر کنم ایراد از سی اس اس نیست. یه جای کد HTML شما مشکل داره
    کد hTML شما اصلا استاندارد نیست
    اینجا رو ببینید

    http://validator.w3.org/check?verbose=1&uri=http://adabeparsi.ir/home.php

    کلی خطا داره
    صفحه شما DOCTYPE هم نداره
    برای صفحه DOCTYPE مناسب در نظر بگیرید و تمامی خطاهاش رو بطرف کنید تا بشه مشکل رو پیدا کرد
    الان کد CSS به نظرم مشکلی نداره. یه جای کد HTML به نظر میرسه درست نیست. یه تگ بسته نشده یا همچین چیزی
     
  7. andishehno

    andishehno Registered User

    تاریخ عضویت:
    ‏13 آپریل 2004
    نوشته ها:
    100
    تشکر شده:
    0
    آهان. من میگم پس چرا قبل از این تغییرات این مشکل نبود؟ یا مثلاً‌ تو IE‌ مشکلی نیست چرا؟ البته خوب پس زمینه مشکلی نداره. فقط رنگ پس زمینه div ها که سفیده مثل چیزی که در IE‌ نشون داده میشه. اینجا اصلاً نشون داده نمیشه. شاید هم از html‌ باشه.
    اوووووووووو. چقدر خطا! راستی این DOCTYPE‌ مناسب که گفتی چیه؟ :blink:
     
  8. amir abbas

    amir abbas Registered User

    تاریخ عضویت:
    ‏28 سپتامبر 2004
    نوشته ها:
    388
    تشکر شده:
    17
    DOCTYPE نوع سند شماست. در اصل مشخص میکنه که شما از کدوم استاندارد برای طراحی صفحه استفاده کردی. صفحه بدون DOCTYPE یه صفحه معتبر نیست.
    IE6 هم صفحه ای که DOCTYPE نداشته باشه رو در حالت compliance (حالت تایید شده کنسرسیوم جهانی وب) نمایش نمیده و میره تو حالت quirck mode که استاندارد قدیمیه. در نتیجه ممکنه صفحه شما به شکلی که تو Firefox نشون داده میشه تو IE نشون داده نشه چون Firefox صفحه رو همیشه در حالت compliance رندر میکنه ولی IE به خاطر نبودن DOCTYPE صفحه رو در حالت quircks مد نشان میده که باعث کلی اختلاف ظاهر بین دو نمایش دو مرورگر میشه

    در مورد DOCTYPE های مختلف اینجا توضیح داده شده
    http://www.w3schools.com/tags/tag_doctype.asp