نمایش نتایج: از شماره 1 تا 6 , از مجموع 6

موضوع: چرا margin-top عمل نمیکند ؟

  1. #1
    عضو انجمن
    تاریخ عضویت
    Jun 2015
    نوشته ها
    194
    تشکر تشکر کرده 
    213
    تشکر تشکر شده 
    22
    تشکر شده در
    20 پست

    پیش فرض چرا margin-top عمل نمیکند ؟

    این لینک رو ببینید :
    https://jsfiddle.net/mohammadhttp/guyjh7u4/

    همانطور که میبینید من میخوام تنها تگ div فاصله از بالا 50 بگیره . اما رفته تگ main رو فاصله داده .



    بابت راهنمایی تشکر دوستان

    - - - Updated - - -

    به main دستور زیر را دادم . ایا این روش در مرورگر ها ساپورت خوبی دارد :
    overflow:hidden

  2. # ADS




     

  3. #2
    عضو انجمن
    تاریخ عضویت
    Sep 2017
    نوشته ها
    121
    تشکر تشکر کرده 
    49
    تشکر تشکر شده 
    82
    تشکر شده در
    65 پست

    پیش فرض پاسخ : چرا margin-top عمل نمیکند ؟

    بجای
    کد HTML:
    margin-top:50px;
    باید از دستور زیر استفاده کنی
    کد HTML:
    top: 50px;
    position: relative;
    ⭐⭐ فروش سایت همکاری در فروش فایل با اسکریپت اختصاصی ⭐⭐
    فروش سایت با درآمد 8 میلیون تومان در ماه ⭐ فروخته شد


  4. تعداد تشکر ها از ایران نشر به دلیل پست مفید


  5. #3
    عضو انجمن
    تاریخ عضویت
    Mar 2013
    نوشته ها
    157
    تشکر تشکر کرده 
    34
    تشکر تشکر شده 
    251
    تشکر شده در
    159 پست

    پیش فرض پاسخ : چرا margin-top عمل نمیکند ؟

    توی CSS این مشکل زمانی هست که ، Margin دو یا چند تا Box با هم ترکیب میشه ، margin هایی که به این صورت ترکیب میشن رو collapsed margin میگن.
    این مشکل زمانی به وجود میاد که دو یا چندتا box توی یک block-level باشن و block formatting context اونها هم مثل هم باشه و هیچ جداد کننده یا ، line boxes ، clearance ، padding یا border این Box ها رو از هم جدا نکنه.

    برای حل این مشکل کافیه ، block formatting context یا block-level رو تغییر بدید.

    راحل زیادی هست ، میتونی از float:left برای هر کدوم از المنت ها استفاده کنی ( هیچ وقت Margin بین floated box ها با هم collapse نمیشه)
    استفاده از inline-block و overflow (تمام حالاتش به جز visible) یک block formatting context ایجاد میکنه و مانع collapse شدن میشه.
    استفاده از position: relative و position: absolute یا استفاده از border هم اثر بالا رو داره و مانع collapse شدن میشه.

    تمام این روش ها درست هستن ، انتخاب اینکه کدوم بهتره ، بستگی به خودتون داره ، از نظر پیشتیبانی مرورگرها هم، تمام این ها جزور CSS 2.1 هستن که ، از IE6 بالا ساپورت میشن و مشکلی ندارن (الان همه طراح ها ،‌ از جمله خودم، IE11 رو به عنوان بیس برای پشتیبانی ها اتنخاب میکنن)

    پ.ن : اگر میخواهید ایجاد layout با CSS رو خیلی آسون تر انجام بدید ، پیشنهاد میکنم از Flex-box استفاده کنید.
    این همین مثال شما با استفاده از flex-box هست.
    https://jsfiddle.net/guyjh7u4/4/
    ویرایش توسط firebox : January 12th, 2018 در ساعت 13:48

  6. تعداد تشکر ها ازfirebox به دلیل پست مفید


  7. #4
    عضو انجمن
    تاریخ عضویت
    Aug 2011
    نوشته ها
    146
    تشکر تشکر کرده 
    36
    تشکر تشکر شده 
    264
    تشکر شده در
    167 پست

    پیش فرض پاسخ : چرا margin-top عمل نمیکند ؟

    به main خصوصیت overflow: auto رو بده.
    جشنواره وب ایران یا جشنواره معرفی دوستان!!!

  8. تعداد تشکر ها از MJmoonwalk به دلیل پست مفید


  9. #5
    عضو جدید topwebhost آواتار ها
    تاریخ عضویت
    Dec 2016
    نوشته ها
    56
    تشکر تشکر کرده 
    8
    تشکر تشکر شده 
    52
    تشکر شده در
    44 پست

    پیش فرض پاسخ : چرا margin-top عمل نمیکند ؟

    نقل قول نوشته اصلی توسط <?php?> نمایش پست ها
    این لینک رو ببینید :
    https://jsfiddle.net/mohammadhttp/guyjh7u4/

    همانطور که میبینید من میخوام تنها تگ div فاصله از بالا 50 بگیره . اما رفته تگ main رو فاصله داده .



    بابت راهنمایی تشکر دوستان

    - - - Updated - - -

    به main دستور زیر را دادم . ایا این روش در مرورگر ها ساپورت خوبی دارد :
    overflow:hidden
    سلام
    برای اینکار شما باید ابتدا برای main مربوط float تعیین کنید پس میاییم به main میگیم که float: right;
    حالا فاصله div نسبت به main سنجیده میشه و margin-top رو هرچه قدر خواستید میتونید ست کنید.
    طرح کار | طراحی و فروش انواع قالب ، افزونه و سورس

    www.tarhkar.ir

  10. تعداد تشکر ها از topwebhost به دلیل پست مفید


  11. #6
    عضو جدید
    تاریخ عضویت
    Apr 2016
    نوشته ها
    27
    تشکر تشکر کرده 
    19
    تشکر تشکر شده 
    76
    تشکر شده در
    27 پست

    پیش فرض پاسخ : چرا margin-top عمل نمیکند ؟

    به main
    خاصیت : display: inline-block;
    بدهید حل میشه

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. عملکرد auto در خاصیت margin css
    توسط <?php?> در انجمن HTML-XHTML
    پاسخ ها: 1
    آخرين نوشته: September 4th, 2015, 11:50

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •