تتكون أي صفحة ويب من عناصر موجودة فيها، ويكون تخطيط كتلة div مسؤولاً دائمًا عن موضعها. بالطبع، هناك أيضًا تخطيط جدول باستخدام العلامات
، وهناك جدل حول النظام الأفضل للاستخدام - القائم على الكتلة أم القائم على الجدول. ومع ذلك، في الواقع، لن تجد حاليًا أيًا من المواقع الحديثة والشعبية والمريحة التي تستخدم التخطيط الجدولي فقط. في أحسن الأحوال، يتم استخدامه فقط للغرض المقصود منه - أي إنشاء الجداول، ولكن ليس لتشكيل بنية الموقع نفسها.
الحقيقة هي أن تخطيط div للموقع يسمح لك بتعيين العديد من خصائص CSS غير المتوفرة للجداول. بالإضافة إلى ذلك، فإن أكبر عيب في نظام الجدول هو أن الجدول لن يظهر على الشاشة حتى يتم تحميله بالكامل بواسطة المتصفح. إذا تم إنشاء الموقع بأكمله في جدول، فلن يظهر على الشاشة إلا بعد تحميل كود html الخاص بالصفحة بالكامل. علامة DIV والممتلكات العائمةأساس نظام الكتلة هو العلامة ، وهي الحاوية للمحتوى. وقد تحتوي أيضًا على حاويات أخرى بداخلها .استخدام علامة DIV ليس أكثر صعوبة من . كقاعدة عامة، يتم تشكيل هيكل الموقع القياسي على النحو التالي: هناك حاوية رئيسية (غالبًا ما يتم تعيين فئة تسمى المجمع، والحاوية، والرئيسية، وما إلى ذلك). يوجد داخل هذه الحاوية كتل من القائمة وجزء المحتوى والشريط الجانبي.
بشكل افتراضي، يقع كل كتلة جديدة مع خط جديد. من أجل وضع كتلة على يسار أو يمين كتلة أخرى (على سبيل المثال، لوضع شريط جانبي على اليمين)، استخدم خاصية تعويم. بشكل افتراضي، تحتوي على القيمة "لا شيء"، ولكن يمكنك أيضًا تعيين القيم "يسار" و"يمين". دعونا نفكر في هذه الخاصية باستخدام مثال مكون من كتلتين.
كتلة المحتوى
كتلة الشريط الجانبي
هذا الكود سيعطي النتيجة التالية: خاصية واضحةمن المهم أن نأخذ في الاعتبار أن الخاصية float لا تنطبق فقط على الكتلة نفسها التي تم تسجيلها فيها، ولكن أيضًا على العنصر اللاحق الذي سيتبع هذه الكتلة. أي أنه إذا أضفنا كتلة أخرى إلى الكتلتين الموصوفتين أعلاه دون تحديد أي خصائص لها، فلن يتم تحديد موقعها على سطر جديد، بل ستبدأ على يمين الكتلة الثانية. لتجنب ذلك، يستخدم تخطيط block div الخاصية Clear، والتي يجب تعيينها للكتلة التي نريد وضعها على سطر جديد. في أغلب الأحيان، يتم ضبطه على "كلاهما" لهذا الغرض، ولكن يمكننا أيضًا ضبطه على "يسار" أو "يمين" إذا أردنا ليس فقط وضع الكتلة على سطر جديد، ولكن أيضًا ضبط محاذاتها. دعونا نضيف عنصرا جديدا إلى المثال أعلاه:
كتلة المحتوى
كتلة الشريط الجانبي
كتلة جديدة تقع أدناه
نتيجة: المسافة البادئة في تخطيط الكتلةبالإضافة إلى موقع الكتل، من المهم تعيين مسافات بادئة بين الكتل وداخلها. لهذا، يتم استخدام خصائص الهامش والحشو، على التوالي. يتم تعيين المسافات البادئة بشكل منفصل للأجزاء العلوية واليمنى والسفلية واليسرى من العنصر. ويمكن تحديدها في سطر واحد من خلال إدراج أربع قيم: الهامش: 20 بكسل 10 بكسل 0 40 بكسل سيتم وضع الكتلة التي تحتوي على هذه المعلمات على مسافة 20 بكسل أسفل العنصر الأصلي، وعشر بكسل من العنصر الأيمن، ولن تحتوي على حشوة في الأسفل، وستحتوي على 40 بكسل من الحشو على اليسار. إذا تم تحديد جميع المؤشرات نفسها في خاصية الحشو، فستكون هذه هي الحشو الداخلي للمحتوى فيما يتعلق بحدود الكتلة التي يقع فيها. يمكنك أيضًا تعيين خصائص منفصلة للحواف الفردية باستخدام الهامش العلوي، والهامش السفلي، والهامش الأيسر، والهامش الأيمن (وبالمثل للحشو). في هذه الحالة، إذا لم يتم تحديد أي من الحواف، فستكون المسافة البادئة على جانبها صفرًا أو سيتم تحديدها بواسطة خصائص CSS العامة المحددة للكتل الموجودة على الصفحة.
غالبًا ما يتم استخدام تخطيط الكتلة عند إنشاء موقع ويب أو مدونة. ونتيجة لذلك، غالبًا ما يكون من الضروري وضع مسافة بادئة للكتل. لهذا السبب، حول كيفية وضع مسافة بادئة في CSSالموصوفة بالتفصيل في هذا الدرس. بالنسبة للمتصفح، كل علامة عبارة عن حاوية تحتوي على محتوى وحشوة وهوامش خارجية وحدود. في هذا الدرس سوف نتعلم كيفية عمل مسافات بادئة داخلية وخارجية، ونأخذ في الاعتبار معالمها الرئيسية. يوضح الشكل أدناه بوضوح معلمات المسافة البادئة للكتلة: كما ترون، يمكن عمل مسافة بادئة في أربعة اتجاهات: مسافة بادئة علوية (أعلى)، مسافة بادئة سفلية (أسفل)، مسافة بادئة يسرى (يسار) ومسافة بادئة يمنى (يمين). يمكن أن تكون وحدات القياس عبارة عن بكسلات ونسب مئوية ووحدات CSS أخرى - تعرف على المزيد عنها. يستخدم هذا البرنامج التعليمي وحدات البكسل. حشوة الكتلةالخاصية المسؤولة عن الحشو في CSS هي حشوة. لذلك، دعونا نلقي نظرة على مثال لإعداد الحشو الداخلي لكتلة: الحشو العلوي: 5 بكسل؛ /*الحشوة العلوية*/ الحشوة اليسرى: 8px; /*الحشوة اليسرى*/ الحشوة اليمنى: 8px; /*الحشوة اليمنى*/ الحشوة السفلية: 5px; /*الحشوة السفلية*/ في هذا المثال، يتم تعيين الحشو بشكل منفصل لكل جانب من الكتلة. بالإضافة إلى ذلك، هناك عدة طرق لتعيين المسافة البادئة في CSS: الهامش: 5px 8px 5px 8px؛ /*الهوامش العلوية، اليمنى، السفلية، اليسرى*/ هامش: 5px 8px 5px; /*يصف الهوامش العلوية، اليسرى، اليمنى، السفلية*/ هامش: 5px 8px; /*يصف الهوامش العلوية والسفلية، اليمنى واليسرى*/ هامش: 7px; /*يصف جميع الحشوات الداخلية بحجم 7 بكسل*/ من الأسهل أن تتذكر الأول و الطرق الأخيرة. في الحالة الأولى، يتم وضع المسافات البادئة في اتجاه عقارب الساعة (أعلى، يمين، أسفل، يسار) - يمكننا تحديد أي مقدار من المسافة البادئة في الحالة الأخيرة، ستكون المسافات البادئة على جميع الجوانب هي نفسها. حظر الهوامشالخاصية المسؤولة عن الهوامش في CSS هي هامِش. أمثلة على الهوامش في CSS: الهامش العلوي: 5 بكسل؛ /*الهامش العلوي*/ الهامش الأيسر: 10px; /*الهامش الأيسر*/ الهامش الأيمن: 10px; /*الهامش الأيمن*/ Margin-bottom: 5px; /*الهامش السفلي*/ الحشو: 5px 10px 5px 10px؛ /*الهوامش العلوية، اليمنى، السفلية، اليسرى*/ الحشو: 5px 10px 5px; /*يصف الحشو العلوي واليسار واليمين والسفلي*/ الحشو: 5px 10px; /*يصف الحشو العلوي والسفلي واليمين واليسار*/ الحشو: 7px; /*يصف جميع الهوامش التي يبلغ حجمها 7 بكسل*/ هكذا، كيفية وضع مسافة بادئة في CSS- السؤال ليس صعبا، ولكنه وثيق الصلة بالموضوع. لفهم المعلومات الموضحة أعلاه بشكل أفضل، يجب أن تتذكر أن هناك خاصيتين: الحشو - المسافات البادئة الداخلية والهامش - المسافات البادئة الخارجية. كما تعلم أيضًا، هناك عدة طرق لتعيين المسافات البادئة، يمكنك استخدامها. في كثير من الأحيان، يواجه مصممو التخطيط مشاكل في وضع العناصر على الصفحة بسبب وجود مسافات بادئة إضافية في مواقف معينة. ستنظر المقالة في الحالة التي يتم فيها وضع صورة داخل كتلة، مما يؤدي إلى مسافة بادئة غير معروفة. ستجد هنا شرح وحل لهذه المشكلة. كما هو الحال في الحياة العادية، هناك مواقف شاذة في التخطيط يصعب تفسيرها. هذا هو بالضبط الموقف الذي يمكن أن ينشأ عند إدراج علامة إدراج صورة (img) في حاوية تحتوي على الخصائص عنصر الكتلةأو كائن عائم. يكمن الارتباك في هذا الموقف في المسافة البادئة غير المفهومة التي تظهر أسفل الصورة. دعونا نلقي نظرة على مثال عمليلذلك، من أجل الوضوح وتصور أفضل للمشكلة، أقترح أن ننظر إلى كل شيء، وإذا جاز التعبير، "لمسها" في الممارسة العملية. نحن نأخذ أي صورة ونضعها في div. أدناه يمكنك رؤية رمز المثال: HTML < div> < img src= "img.png" width= "250px" alt= "" /> div> عند إنشاء الأنماط، املأ الخلفية الداخلية للكتلة باللون الأحمر. في الظروف العادية، ستشغل الصورة كامل المساحة داخل الكتلة وستغطي الخلفية الحمراء. نكتب رمز التسجيل div ( العرض: كتلة؛ العرض: 250 بكسل؛ الهامش: 0 بكسل تلقائي؛ /*توسيط الكتلة*/ الخلفية: #ff0000;/*املأ الكتلة باللون الأحمر،لتصور الحشو*/ ) الجسم ( الخلفية: #eee; ) ونتيجة لذلك، سيظهر لنا المتصفح الصورة التالية انطلاقا من الشريط الأحمر في الجزء السفلي من الحاوية، يمكن القول أن هناك مسافة بادئة غير مفهومة. باستخدام لوحة مشرف الموقع في المتصفح، أصبح من المعروف أن المسافة البادئة كانت 5511 بكسل. من المضحك جدًا أن جميع المتصفحات الشائعة بها هذا الخطأ، لكن برنامج Internet Explorer المفضل لدى الجميع يعمل بشكل لا تشوبه شائبة في هذه الحالة. سبب المسافة البادئةكشخص حاصل على تعليم تقني عالي، يمكنني أن أؤكد لكم أنه لا شيء يحدث عبثًا، كل شيء له سبب. بعد أن نظرت في هذه المسألة، كنت مقتنعا بذلك مرة أخرى. يكمن الارتباك كله في الخصائص القياسية للعناصر. بشكل افتراضي، تحتوي علامة img على خصائص العنصر المضمنة، وهذا بدوره يعني أنه سيتم محاذاة العنصر مع الخط الأساسي للنص. يقع هذا الخط أعلى الحافة السفلية للكتلة مباشرةً، حيث يوجد هامش إلزامي للنص - مساحة لـ "ذيول" الحروف. حل المشكلةلتصحيح هذا العيب البسيط، يكفي تعيين خصائص عنصر الكتلة للصورة. ستساعدنا خاصية العرض في ذلك؛ حيث سنخصصها للصورة عرض: كتلة؛ والتخلص من المشاكل غير الضرورية. يمكنك أيضًا تمكين المحاذاة الرأسية عبر خاصية المحاذاة الرأسية. سيساعد هذا أيضًا في التخلص من المسافة البادئة غير المرغوب فيها. ما هي المتصفحات التي تعمل فيها؟
يتكون أي عنصر كتلة من مجموعة من الخصائص، مثل أوراق الملفوف المتراكبة فوق بعضها البعض. أساس الكتلة هو محتواها (يمكن أن يكون نصًا أو صورة أو ما إلى ذلك)، ويتم تحديد عرضها بواسطة خاصية العرض، والارتفاع بواسطة الارتفاع؛ توجد حشوات حول المحتوى، مما يؤدي إلى إنشاء مساحة فارغة من المحتوى إلى الحافة الداخلية للحدود؛ ثم تأتي الحدود نفسها (الحدود) وتكتمل الكتلة بالهوامش (الهامش)، المساحة الفارغة غير المرئية من الحافة الخارجية للحدود. ترتيب تأثير هذه الخصائص على الكتلة محدد بوضوح ولا يمكن انتهاكه. في الشكل. ويبين الشكل 3.1 الكتلة كمجموعة من هذه الخصائص. أرز. 3.1. الخصائص التي تشكل عنصر الكتلة من أجل الوضوح، يمكن تمثيل خصائص الكتلة في شكل دمى متداخلة (الشكل 3.2). يمكن إدخال أي دمية تعشيش صغيرة في دمية ماتريوشكا أكبر حجمًا، ولكن ليس العكس. أرز. 3.2. دمى ماتريوشكا في الواقع، ليست هناك حاجة لأي من هذه الخصائص، بما في ذلك المحتوى، لذا يمكنك تشكيل أي كتل تحتوي على مجموعات من خصائص الحشو والحدود والهامش، أو الاستغناء عنها على الإطلاق. الحقولسيكون الهامش هو المسافة من الحافة الداخلية للحد أو حافة الكتلة إلى المستطيل الوهمي الذي يحد محتويات الكتلة. ولأن قيم الهامش قد تختلف من كل جانب، يتم استخدام تعبيرات "الهامش العلوي" أو "الهامش العلوي" وما شابه ذلك للأوجه الأخرى. ينبغي فهم تسمية "الهامش" على أنها نفس قيمة الهامش لجميع الأطراف. الغرض الرئيسي من الهوامش هو إنشاء مساحة بيضاء حول محتوى عنصر الكتلة، مثل النص، بحيث لا تتناسب مع حافة العنصر. يؤدي استخدام الهوامش إلى زيادة سهولة قراءة النص وتحسينه مظهرالصفحات. يوضح المثال 3.1 استخدام الحقول لتنسيق النص. مثال 3.1: استخدام خاصية الحشو
لقد جاؤوا ليهزمونا، ليعذبونا ويحرقونا أحياء، وجاءوا ليفعلوا بنا، نحن الإنجليز الأحرار، نفس الشيء الذي فعله كورتيز بهنود أناهواك.
وتظهر نتيجة المثال في الشكل. 3.3. أرز. 3.3. الهوامش حول النص لا يمكن أن تكون قيم الحقل سالبة. الحدودالحدود عبارة عن خطوط حول هوامش عنصر ما على جانب واحد أو اثنين أو ثلاثة أو أربعة جوانب من العنصر. كل سطر له سمك ونمط ولون. لإنشاء حدود، استخدم خاصية الحدود العامة، التي تقوم بتعيين كل هذه المعلمات في وقت واحد، ولإنشاء خطوط على الجوانب الفردية لعنصر ما، يمكنك استخدام خصائص border-left و border-top و border-right و border-bottom، على التوالي تعيين الحدود إلى اليسار والأعلى واليمين والأسفل. يوضح المثال 3.2 إضافة خط إلى يسار العنصر. مثال 3.2. خط منقط أحمر XHTML 1.0 CSS 2.1 IE Cr Op Sa Fx
نتيجة هذا المثاليظهر في الشكل. 3.4. أرز. 3.4. السطر بجوار النص يتم التحكم في المسافة من السطر إلى النص بواسطة قيمة الحشو. المسافات البادئةالمسافة البادئة هي المساحة الفارغة من الحافة الخارجية للحد أو الهوامش أو محتويات الكتلة. كما ذكرنا سابقًا، الحدود ذات الهوامش اختيارية وقد تكون غائبة، لذا فإن كيفية إنشاء الحشو تعتمد على الموقف. كما هو الحال مع الهوامش، يتم استخدام تعبيرات "الهامش العلوي" أو "الهامش العلوي"، وما شابه ذلك للأطراف الأخرى. ينبغي فهم تسمية "المسافات البادئة" على أنها نفس قيمة المسافة البادئة لجميع الجوانب. الميزات التالية هي سمة من المسافات البادئة.
يوضح المثال 3.3 طي الحشو وجعله شفافًا. مثال 3.3. باستخدام المسافة البادئة XHTML 1.0 CSS 2.1 IE Cr Op Sa Fx
يزأر الأسد فقط عندما يعلن أن الأرض ملك له أو يعلن نفسه ملك الطبيعة.
وتظهر نتيجة هذا المثال في الشكل. 3.5. يرجى ملاحظة أن المسافة بين الكتل هي 20 بكسل، وليس 40، والتي يتم الحصول عليها عن طريق جمع الحشو العلوي والسفلي للكتل. يحدث هذا بسبب تأثير الانهيار، حيث يتم دمج الهوامش القريبة. أرز. 3.5. حشوة العنصر يوضح الشكل بوضوح أن اللون الذي تم تعيينه من خلال خاصية الخلفية لا يتجاوز حدود العنصر ولا يؤثر على الحشو. عرض الكتلة هو قيمة معقدة ويتكون من عدة قيم للخصائص:
كما ذكرنا من قبل، قد تكون بعض الخصائص مفقودة، وفي هذه الحالة لن يتأثر العرض. يظهر العرض الإجمالي في الشكل. 3.6 على شكل خط منقط باللون الأسود. أرز. 3.6. عرض الكتلة إذا لم يتم تحديد العرض، فسيتم تعيينه افتراضيًا على تلقائي. في هذه الحالة، سيشغل عرض الكتلة كامل العرض المتاح مع الحفاظ على قيم الهوامش والحدود والحشو. تحت العرض المتاح في في هذه الحالةوهذا يعني عرض محتوى الكتلة الأصلية، وإذا لم يكن هناك أصل، فسيتم عرض محتوى المتصفح. لنفترض أن النمط التالي مكتوب لطبقة. العرض: 300 بكسل؛ /* عرض المحتوى */ هامش: 7px; /* قيمة الحشو */ الحدود: 4 بكسل أسود خالص؛ /* خيارات الحدود */ الحشو: 10 بكسل; /* الهوامش حول النص */ سيكون عرض الكتلة وفقًا لهذا الإدخال مساويًا لـ 342 بكسل، ويتم الحصول على هذه القيمة عن طريق إضافة قيمة عرض المحتوى بالإضافة إلى الحشو الأيسر والحد الأيسر والهامش الأيسر، بالإضافة إلى الهامش الأيمن والحد الأيمن والحشو الأيمن. دعونا نلخص كل الأرقام. العرض = 300 + 7 + 7 + 4 + 4 + 10 + 10 = 342 تجدر الإشارة إلى أن نموذج الكتلة مع تشكيل العرض يحمل في طياته الكثير من المضايقات. يتعين عليك دائمًا إجراء العمليات الحسابية عندما تحتاج إلى تعيين عرض كتلة معين. تبدأ المشاكل أيضًا عند الجمع وحدات مختلفةالقياسات، وخاصة النسب المئوية والبكسل. لنفترض أنه تم ضبط عرض المحتوى على 90%، وإذا أضفنا الهوامش والحدود المحددة بالبكسل، فمن المستحيل حساب العرض الإجمالي للكتلة، نظرًا لأن النسب المئوية لا تتم ترجمتها مباشرة إلى بكسلات (في CSS3 يمكن تلخيص ذلك ، ولكن هذه الميزة غير مدعومة في جميع المتصفحات). ونتيجة لذلك، قد يتجاوز العرض الإجمالي للكتلة عرض صفحة الويب، الأمر الذي سيؤدي إلى ظهور شريط تمرير أفقي. هناك طريقتان للخروج من هذا الموقف - تغيير خوارزمية نموذج الكتلة واستخدام الطبقات المتداخلة. خوارزمية نموذج الكتلةكما ذكرنا سابقًا، يتم تشكيل عرض الكتلة من عرض المحتوى وقيم الهوامش والحدود والحشو. في المتصفح إنترنت إكسبلوررفي وضع التوافق (بمعنى آخر، عندما لا يتم تحديد نوع مستند)، تتغير الخوارزمية تلقائيًا ويتم ضبط عرض الكتلة بأكملها على width . لا تغير المتصفحات الأخرى الخوارزمية بهذه السهولة، بالإضافة إلى أنك تعلم أن وضع التوافق شرير. يحتوي CSS3 على خاصية رائعة لحجم الصندوق والتي ستكون مفيدة لنا. عند التعيين على border-box، يبدأ العرض في تضمين الهوامش والحدود، ولكن ليس الحشو. وبالتالي، من خلال ربط تغيير حجم المربع بقيمة مربع الحدود بنمطنا، يمكننا ضبط العرض كنسبة مئوية وتحديد الحدود والحشو بأمان دون خوف من تغيير عرض الكتلة. لسوء الحظ، هناك مشكلة صغيرة في هذه الخاصية، كما هو الحال عادة مع المتصفحات - لا تفهمها جميع المتصفحات. أنا سعيد لأن المتصفحات تدعم على الأقل الخصائص الخاصة بالمتصفح. في الجدول 3.1 يظهر دعم المتصفح.
كما ترون من الجدول، هناك ارتباك وتذبذب في الخصائص، لذلك سيتعين عليك عمل هجين والإشارة إلى الخصائص الثلاثة في نفس الوقت (المثال 3.4). مثال 3.4. عرض الكتلة XHTML 1.0 CSS 3 IE 7 IE 8+ Cr Op Sa Fx
عرض الكتلة 100%
سيعمل هذا المثال في جميع المتصفحات المدرجة في الجدول. ومع ذلك، فإن الإصدار 3.1 غير صالح في CSS3 بسبب استخدام خصائص غير قياسية تبدأ بـ -moz و -webkit. عرض الكتلة هو 100% بما في ذلك قيم الحشو. بدون خاصية تغيير حجم الصندوق، سيظهر شريط تمرير أفقي في المتصفح. طبقات متداخلةيعد استخدام خاصية تغيير حجم الصندوق مفيدًا للجميع، إلا أنها لا تعمل في الإصدارات القديمة من IE. إذا كنت تصمم موقع ويب يعتمد على IE7 وIE6، فإن الطريقة القديمة المثبتة لتداخل الطبقات مناسبة لك. الفكرة بسيطة - بالنسبة لعنصر الكتلة الخارجية يتم تعيين العرض المطلوب فقط، وبالنسبة للكتلة المتداخلة يتم تعيين كل شيء آخر - الهوامش والحدود والحشو. نظرًا لأن العرض الافتراضي للكتل يساوي العرض المتاح للعنصر الأصلي، فسوف تتداخل الكتل إلى حد ما مع بعضها البعض، ولكن سيتم تحديد العرض الفعلي للعنصر المدمج بوضوح. يوضح المثال 3.5 استخدام الطبقات المتداخلة. مثال 3.5. طبقات متداخلة XHTML 1.0 CSS 2.1 IE Cr Op Sa Fx
عرض الطبقة 100%
وتظهر نتيجة هذا المثال في الشكل. 3.7. أرز. 3.7. عرض الكتلة بالنسبة المئوية تتمثل ميزة الطبقات المتداخلة في استخدام المسافات البادئة (لا يأخذها حجم المربع في الاعتبار)، وتعدد استخدامات الطريقة، وحقيقة أنه يمكن إضافة الخلفية إلى طبقة أو أخرى إذا رغبت في ذلك. يؤدي هذا إلى تغيير مظهر العناصر إلى حد ما، وهذا صحيح بشكل خاص عند تضمين صور الخلفية. ومن بين عيوب الطريقة، يمكننا ملاحظة إضافة كتلة إضافية، مما يؤدي إلى تعقيد بنية التعليمات البرمجية، خاصة عند استخدام الطريقة بشكل متكرر. ولكن يمكن اعتبار هذا شيئًا صغيرًا مقارنة بالفوائد. تنطبق نفس القواعد على ارتفاع الكتلة كما تنطبق على عرض الكتلة. أي أن الارتفاع يتكون من قيم ارتفاع المحتوى (الارتفاع) والحقول (الحشوة) والحدود (الحدود) والهوامش (الهامش). إذا لم يتم تحديد خاصية الارتفاع، فسيتم التعامل معها على أنها تلقائية، وفي هذه الحالة يتم حساب ارتفاع المحتوى تلقائيًا بناءً على المحتوى. في الشكل. يوضح الشكل 3.8 الخصائص التي تعطي الارتفاع النهائي، والذي يشار إليه بالخط الأسود المنقط. أرز. 3.8. ارتفاع الكتلة وفي الوقت نفسه، على الرغم من التشابه في مبادئ بناء العرض والارتفاع، إلا أن لديهم اختلافات كبيرة. ينطبق هذا على الحالة التي لم يتم فيها تحديد العرض والارتفاع، ثم يتم ضبطهما افتراضيًا على auto . بالنسبة لعرض الكتلة، هذا هو الحد الأقصى لعرض المحتوى المتاح، وبالنسبة لارتفاع الكتلة، هذا هو ارتفاع المحتوى. أيضًا، بالنسبة لعرض الكتلة، يكون عرض الأصل معروفًا، حتى لو لم يتم تحديده بشكل صريح. يتيح لك ذلك ضبط العرض كنسبة مئوية. إن استخدام النسب المئوية للارتفاع لن يؤدي إلى شيء، لأن ارتفاع الوالد غير محسوب ويجب تحديده. يوضح المثال 3.6 كيفية ضبط ارتفاع الكتلة كنسبة مئوية. مثال 3.6. ارتفاع الكتلة XHTML 1.0 CSS 2.1 IE Cr Op Sa Fx
ارتفاع الطبقة 100%
وتظهر نتيجة هذا المثال في الشكل. 3.9. أرز. 3.9. ارتفاع الكتلة بالنسبة المئوية للعلامة في المثال، الأصل هو العلامة ، لذا قمنا بتعيين قيمة ارتفاعه على 100%. في نفس الوقت على تنطبق نفس القواعد على لذلك لن يتم حساب قيمة النسبة المئوية من ارتفاع الصفحة، بل من ارتفاع المحتوى. لذلك بالنسبة للوالد ، وهي العلامة ، تحتاج أيضًا إلى ضبط قيمة الارتفاع على 100%. فقط في هذه الحالة، سيعتمد ارتفاع الكتلة كنسبة مئوية على ارتفاع الصفحة.
نظرًا لأن الارتفاع يتأثر بالهوامش والحدود والحشو، فسيظهر المثال شريط عموديانتقل. يمكنك التخلص من هذا التأثير باستخدام نفس الطرق المستخدمة في العرض، أي استخدام خاصية تغيير حجم الصندوق، أو استخدام الطبقات المتداخلة. هناك ميزة أخرى مرتبطة بالارتفاع - عندما يتجاوز محتوى الكتلة أبعادها عند ارتفاع معين، يبدأ عرض المحتوى أعلى الكتلة (الشكل 3.10). أرز. 3.10. تجاوز حجم الكتلة يظهر الكود الذي ينتج نتيجة مماثلة في المثال 3.7. مثال 3.7. تجاوز حجم الكتلة XHTML 1.0 CSS 2.1 IE Cr Op Sa Fx
يزأر الأسد فقط عندما يعلن أن الأرض ملك له أو يعلن نفسه ملك الطبيعة. يمكن أن يصل طول نطاق صيد الأسد إلى ثلاثين كيلومترًا وعرضه. لتجنب مثل هذه المشاكل، من الأفضل عدم ضبط ارتفاع المحتوى، ثم سيتم حساب ارتفاع الكتلة تلقائيًا. ومع ذلك، هناك حالات يجب فيها الإشارة إلى الارتفاع بوضوح، فمن المستحسن إضافة خاصية التجاوز إلى النمط بالقيمة auto أو Hidden . نتائجها مختلفة، وتضيف أشرطة التمرير تلقائيًا عند الحاجة إليها (الشكل 11 أ)، ويخفي المخفي كل شيء لا يتناسب مع الأبعاد المحددة (الشكل 11 ب). أ. القيمة التلقائية ب. المعنى الخفي أرز. 11. استخدام خاصية التجاوز خلفيةإذا قمت بتعيين لون الخلفية والحد المنقط للكتلة في نفس الوقت، يصبح ملحوظًا أن الحد يمتد داخل المنطقة الملونة. الحقيقة في متصفحات مختلفةتوجد اختلافات، خاصة أن Internet Explorer حتى الإصدار 7.0 يتضمن خطأً يتم فيه عرض الخلفية على طول الحافة الداخلية للحدود (الشكل 12 ج). بدءًا من الإصدار 8.0، تم تصحيح هذا الخطأ، ويتم عرض الخلفية وفقًا للمعايير (الشكل 12 د). تعرض المتصفحات Opera (الشكل 12أ) وFirefox (12b) وSafari وChrome (الشكل 12e) الخلفية بشكل صحيح. يتم ملاحظة اختلافات طفيفة عند عرض المربع المنقط، ولكنها لا تؤثر على نموذج الصندوق. د. سفاري، كروم أرز. 12. عرض الخلفية في المتصفح يوضح المثال 3.8 كيفية إنشاء تعليمات برمجية للحصول على مثل هذا الحد. مثال 3.8. الخلفية والحدود XHTML 1.0 CSS 2.1 IE 7 IE 8+ Cr Op Sa Fx
أُووبس...
لا يمكن ملاحظة الاختلافات في طريقة رسم المتصفحات للحدود إلا على الخلفيات الملونة والخطوط المنقطة. بالنسبة للإطار الصلب، سيكون مظهر الكتلة في المتصفحات هو نفسه تقريبًا. نموذج مربع CSS إنجليزييسمى نموذج الصندوق (الصندوق عبارة عن صندوق). تساعد هذه الترجمة قليلاً على فهم جوهر نموذج الكتلة. خلاصة القول هي أنه عند تشكيل صفحة على الشاشة، يتم استخدام الكتل - مناطق مستطيلة من الشاشة. يعد نموذج مربع CSS أحد أسس فهم CSS، وهو نموذج تنسيق المستندات. قبل أن تتعلم CSS، يجب أن تكون قد تعلمت HTML، مما يعني أنه يجب عليك معرفة ذلك علامات HTMLوتنقسم إلى عناصر كتلة وعناصر مضمنة.
|