প্রস্থ / উচ্চতা প্রভাবিত না করে ডিআইভি প্যাডিং কীভাবে পরিবর্তন করবেন?


95

আমার একটি ডিভ রয়েছে যা আমি একটি ফিক্সড প্রস্থ এবং উচ্চতা নির্দিষ্ট করতে চাই এবং এছাড়াও একটি প্যাডিং যা মূল ডিআইভি প্রস্থ / উচ্চতা হ্রাস না করে বা এটি বৃদ্ধি না করে পরিবর্তন করা যায়, সেটির জন্য কোনও সিএসএস কৌশল আছে, বা প্যাডিং ব্যবহার করে বিকল্প আছে?

উত্তর:


73

সমাধানটি আপনার প্যাডড ডিভটি স্থির প্রস্থের বাইরের ডিভের সাথে মোড়ানো

এইচটিএমএল

<div class="outer">
    <div class="inner">

        <!-- your content -->

    </div><!-- end .inner -->
</div><!-- end .outer -->

সিএসএস

.outer, .inner {
    display: block;
}

.outer {
    /* specify fixed width */
    width: 300px;
    padding: 0;
}

.inner {
    /* specify padding, can be changed while remaining fixed width of .outer */
    padding: 5px;
}

শুধু পরিষ্কার করতে চাই না, আমি নিশ্চিত নই, তবে এটি কেবল অনুভূমিক প্যাডিংয়ের জন্যই কাজ করবে? উচ্চতা হিসাবে: অটো প্রস্থের মতো পিতামাতাকে পূরণ করে না: স্বয়ংক্রিয়ভাবে করে।
জোনাথন

203

আপনার সিএসএসে এটি ঘোষণা করুন এবং আপনার ভাল হওয়া উচিত:

* { 
    -moz-box-sizing: border-box; 
    -webkit-box-sizing: border-box; 
     box-sizing: border-box; 
}

এই অতিরিক্ত সমাধানটি ব্যবহার না করে সমাধানটি কার্যকর করা যেতে পারে।

এটি ব্রাউজারকে ডিভের "বাহ্যিক"-প্রস্থ অনুসারে প্রস্থ গণনা করতে বাধ্য করবে, এর অর্থ প্যাডিং প্রস্থ থেকে বিয়োগ করা হবে।


এটি একটি মোহন মত কাজ করে আমি নবাগত শুধু এই সম্পত্তি অনুসন্ধান এবং এটি গ্রেট ম্যান কাজ করে .....
নিদা

4
এমন কোনও পার্শ্ব প্রতিক্রিয়া আছে যা ব্যবহার করার সময় আমার মনে রাখা উচিত?
রাদি

16
এই সমাধানটি গৃহীত হওয়াগুলির
fgblomqvist

@ অ্যাডস ওয়েব ওয়ার্ক আপনি আমার প্রচুর সময় সাশ্রয় করেছেন। ধন্যবাদ.
হার্ডিক চৌধুরী চৌধুরী

17

আপনি আই 6 বাক্সের মডেলটি অনুকরণ করতে চাইছেন বলে মনে হচ্ছে। এটি অর্জনের জন্য আপনি সিএসএস 3 বৈশিষ্ট্য বক্স-সাইজিং: বর্ডার-বক্স ব্যবহার করতে পারেন । এই IE8 দ্বারা সমর্থিত নয়, তবে ফায়ারফক্স জন্য আপনাকে ব্যবহার করতে হবে -moz-box-sizingএবং সাফারি / ক্রোম, ব্যবহারের জন্য -webkit-box-sizing

আইই already ইতিমধ্যে উচ্চতার হিসাব ভুল করেছে, সুতরাং আপনি সেই ব্রাউজারে ভাল তবে আমি আই 7 সম্পর্কে নিশ্চিত নই, আমি মনে করি এটি উচ্চতাটিকে কুইর্কস মোডে একইভাবে গণনা করবে।


CSS3 এখনও আইপ্যাড মত খুব নতুন :)
রায়ান

10

এই কৌশল চেষ্টা করুন

div{
 -webkit-box-sizing: border-box; 
 -moz-box-sizing: border-box;    
 box-sizing: border-box;      
}

এটি ব্রাউজারকে ডিভের "বাহ্যিক"-প্রস্থের সাথে প্রস্থের হিসাব করতে বাধ্য করবে, এর অর্থ প্যাডিং প্রস্থ থেকে বাদ দেওয়া হবে।


4
এটি @ বিজ্ঞাপনউইবওয়ার্কের উত্তর হিসাবে একই, তাই না? এটি কীভাবে কাজ করে তার ব্যাখ্যাটির জন্য আমি প্রশংসা করি, তবে মন্তব্য হিসাবে এটি সম্ভবত আরও ভাল
ক্রাক

4
কেন অভিন্ন উত্তর পোস্ট করুন
অ্যান্ড্রু

4

ধারাবাহিক ফলাফল ক্রস ব্রাউজারটি অর্জন করতে, আপনি সাধারণত এর divঅভ্যন্তরে অন্যটি যুক্ত করে divযে কোনও প্রস্থের প্রস্থ নয়, এবং একটি marginmarginভান করবে paddingবাইরের DIV আছে জন্য।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.