PDA

View Full Version : سوال: تنظیم قرارگیری صفحات در firefox



zhr.rezae66i
یک شنبه 25 دی 1390, 19:17 عصر
سلام

من یک صفحه دارم که در اون چندین div هست که جدا از هم اند

دو دیو در بالا که منو را تشکیل می دهند
یک دیو در پایین تر که ساعت رو نشون میده
و بعد از اون دیو اصلی که متن اصلی داخلش نوشته میشه

حالا در IE اینها درست در جای خودشون هستند اما در firefox محل دیوهایی که منو را تشکیل میدند
درست نیست

چون top-margin را نسبت به دیو ساعت در نظر میگیره
درحالیکه من میخام نسبت به صفحه در نظر بگیره

من دیو مربوط به متن اصلی را position=relative و دو دیو داخلش را position=absoulot در نظر گرفتم فقط.

و دو دیوی که محلش اشتباهه اصلا position تعریف نکردم براش!

لطفا اگه میشه راهنماییم کنید ممنون

mamali-mohammad
یک شنبه 25 دی 1390, 22:45 عصر
برای دیوها نیازی به position نیست
از خاصیت float استفاده کردی ؟

zhr.rezae66i
دوشنبه 26 دی 1390, 01:01 صبح
e
چرا نیاز نیست
من تو یه سایت دیدم که گفته بود برای اینکه بگی این دیو داخله دیگریه باید یکیو relative ویکی absolot باشه!

float!
بله نوشتم
ببینید من میخام این دوتا دیو مربوط به منو به اندازه ای معین از بالا نسبت به صفحه اصلی فاصله داشته باشه این کارو با top-margin انجام دادم
که داخله firefox اون اندازه ی معین نسبت به دیو ساعت تنظیم میشه نه کل پیج:اشتباه:

hamid_shrk
دوشنبه 26 دی 1390, 09:00 صبح
کد html بذارید تا مشکل رو رفع کنم

zhr.rezae66i
دوشنبه 26 دی 1390, 10:42 صبح
اینها استایل ها


div.main{
width:85%;
height:auto;
min-height:500px;
margin:auto;
margin-top:0px;
background-color:#FFFFFF;
position:relative;
border-style:ridge;
border-color:#ffffff;
}
div.right{
width:62%;
height:100%;
float:right;
font-size:14px;
clear:right;
position:absolute;
}
div.left{
width:500px;
height:100%;
float:left;
position:absolute;
left:0px;
}
div.right-header{
width:auto;
height:60px;
font-size:12px;
float:right;
background:url(../img/bg2.gif);
margin-right:10%;
margin-top:30px;
}
div.left-header{
width:auto;
height:60px;
font-size:12px;
float:left;
background:url(../img/bg2.gif);
margin-left:10%;
margin-top:30px;
}
div.date{
font-size:12px;
font-family:Tahoma, Arial;
text-align:center;
width:150px;
margin:auto;
margin-top:17px;
background:#FFFFFF;
margin-top:105px;
border-style:ridge;
border-color:#FFFFFF;
border-bottom:none;
}


و کد html رو مختصر مینویسم داخل دیو هارو حذف میکنم

<div class="right-header"></div>

<div class="left-header"></div>

<div class="date"></div>
<div class="main" align="center" >
<div class="left"></div>
<div class="right" align="center"></div>

</div>

80901

Saber Mogaddas
سه شنبه 27 دی 1390, 16:59 عصر
سلام
همه دیو هاتو تو یه دیو کلی بزار و با دستور float دیوهارو در جای خود جایگزاری کن..فاصله بین اونهارو با margin و فاصله داخلی اون رو با padding و دستور position رو فقط برای موارد خاص که با عمالی که گفتم نتونستی انجام بدی استفاده می کنید..
موفق باشی..

mamali-mohammad
سه شنبه 27 دی 1390, 19:15 عصر
به استایل main اینو بده :

padding-top:20px;
اگه اوکی نشد بعد از دایو date اینو بنویس :

<br style="clear:both;" />

zhr.rezae66i
یک شنبه 02 بهمن 1390, 19:13 عصر
وقتی clear both دادم درست شد


ممنون

میشه یه توضیحی راجع به این بدی که چکار میکنه؟
و کجا استفاده میشه؟

cyrusthegreat
یک شنبه 02 بهمن 1390, 20:23 عصر
سلام

دوست عزیز، نگاه کنید، وقتی شما به عناصری داخل یک دایو خاصیت float می دید حال چه به چپ و چه به راست، اون عناصر بدلیل شناور شدنشون، ارتفاعشون روی دایوی که والدشون هست تاثیر نمی زاره و می شه همون مشکلی که شما بهش برخوردین. برای رفع کردن این مشکل، شما می بایست از خاصیت clear استفاده کنید. این خاصیت clear می تونه دارای مقادیر right, left, both, inherit و none باشه. شما وقتی می گی مثلا clear: left دیگه طرف چپ اون المنت عنصری قرار نمی گیره. و برای Right طرف راست و برای both هم دو طرف. یه نکته اینکه Clear: both فقط برای المنت های بالای اون المنت هست و نه پایینی هاش. مقدار inherit هم مقدار Clear عنصر والد رو برای اون انتخاب می کنه.

zhr.rezae66i
یک شنبه 02 بهمن 1390, 20:49 عصر
ممنون

حالا یچیز دیگه هم برام اگه میشه بگید


من صفحه درست کردم

که یه دایو کلی داره، که بقیه دایوها داخله اونن

گاهی که به دایو های داخلی خاصیت float میدم از دایو اصلی خارج میشن
و گاهی نه

یعنی گاهی شده دایو داخلی float داره و باز داخل دایو اصلی راحت قرار میگیره
گاهی ام هرکاری می کنم داخلش قرار نمیگیره

مثلا امروز داخلش قرار نمیگرفت اما مدام که کدهارو عوض کردم نفهمیدم چی شد که درست جای خودش قرار گرفت!
ظاهرش به این صورته که سه تا دایو در یه ردیف باید قرار بگیرن
بطوریکه یکی راست
یکی چپ و یکی وسط باشه
الان هم چپی و وسطی داخل دایو اصلی اند اما دایو سمت راست با استایل مشابه داخل دایو کلی نمیاد

مشکلمو طوره دیگه حل کردم اما خاستم ایراد اینکارمو بدونم

ممنون میشم راهنمایی کنید

Saber Mogaddas
یک شنبه 02 بهمن 1390, 20:54 عصر
سلام
مشکل شما دادن ستایل های اضافه هست..یا margin دادین یا padding و .. چون در این صورت فقط دیو داخلی می تونه بزنه بیرون..

mamali-mohammad
یک شنبه 02 بهمن 1390, 23:16 عصر
گاهی اوقات هست شما به دایو والد ارتفاع میدی و دایو فرزند محتواش زیاد میشه و از والد میزنه بیرون