رفتن به مطلب

جابجایی اولویت دایو ها


پست های پیشنهاد شده

سلام

تازه اومدم طراحی سایت رو یاد بگیرم ، که با مشکل عجیبی مواجه شدم...

فایل index.html من محتواش اینه:


<!DOCTYPE HTML>
<html>
<head>
<title>m-nazari</title>
<link type="text/css" rel="stylesheet" href="style.css" />
</head>
<body>
<div id="wrp">
<div class="menu">
</div>
<div class="header-pic">

</div>
<div class="matlab">

</div>
<div class="sidebar">

</div>
<div class="footer">

</div>
</div>
</body>
</html>

فایل style.css هم محتوی اون اینه:


body{background:url(image/bg.gif) #FFF;}
#wrp{
width:960px;
margin:30px auto;
}
.menu{
background:#9C0;
margin-top:30px;
height:75px;
}
.header-pic{
background:#990;
height:200px;
margin-top:30px;
}
.matlab{
background:#30F;
width:620px;
min-height:300px;
margin-top:30px;
margin-bottom:30px;
float:left;
}
.sidebar{
background:#F00;
width:310px;
min-height:300px;
float:right;
margin-left:30px;
margin-top:30px;
margin-bottom:30px;
}
.footer{
background:#333;
height:75px;

}

همانطور که هم در فایل ایندکس و هم در استایل هست، کلاس footer پایین همه کلاس ها هست... اما در اجرا اینگونه اجرا میشه:

post-41-0-61172300-1378183845_thumb.png

لینک به ارسال

سلام داداش من درست كد نديدم و امتحان نكردم !‌ ولي اين اتفاق مال float ندادن هست بيشتر وقت ها !‌ سعي كن از div هايي كلي تري هم استفاده كني !‌ يعني اگه 2-3 تا divداري كه به مربط هستن اين ها رو بزاري داخل ي div بزرگتر !‌

لینک به ارسال

این کد :


.footer {
background: none repeat scroll 0 0 #333333;
clear: both;
height: 75px;
}

لینک به ارسال

این کد :


.footer {
background: none repeat scroll 0 0 #333333;
clear: both;
height: 75px;
}

سلام

ماجد جان ممنون درست شد.

میشه بپرسم چرا این دایو فقط اینطوری شده بود؟یعنی چهار تا دایو بالایی این جوری نبودن... هر کدوم از لایه قبلی فاصله میگرفت(margin میدادم) اما این یکی از زیر هیدر داشت فاصله میگرفت.. چرا؟(بیشتر برای یادگیری خودم میخواستم بپرسم...)

لینک به ارسال

بزار حدس بزنم:

clear:both

به این خاطر هست که لایه بالاییش دو ستون هست، و زیر هر دو لایه قرار میگیره،درسته؟

لینک به ارسال

عملکرد float را می دانید؟

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

یعنی

post-336-0-89234900-1378209821_thumb.jpg

حالا اگر این لایه به سمت چپ clear بشه شکل به اینصورت خواهد شد

post-336-0-26846500-1378209873_thumb.jpg

و اگر float نباشد

post-336-0-04096000-1378209922_thumb.jpg

و اگر clear:both باشد

post-336-0-97921300-1378209963_thumb.jpg

لینک به ارسال

سلام

با روشی که ماجد و آقا ایمان گفتن هم میشه حل کرد

اما یه راه بهتری ( نظر شخصی ) هم هست که خودم همیشه استفاده میکنم

توی css یک کلاس اینجوری بنویس :


.clearfix {clear:both; }

بعد توی قسمت طراحی سایتت به هر div که خاصیت float میدی بعد از اون از این استفاده کن :


<div class="clearfix"></div>

اینطوری یک بار کلاس نوشتی و هرجای سایت ازش استفاده بکنی مشکلی که گفتی رو دیگه نداری

لینک به ارسال

راستش من الان خیلی خوب متوجه نشدم که این clear چرا باید میبود در کد من!!! کاربردش رو تا حدودی متوجه شدم(از عکس های اقا ایمان) ولی جایگاهش در کد خودم رو نفهمیدم

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...