اليوم، نظرًا لأن شاشات المستخدمين أصبحت أكبر وأكبر، أصبح التصميم السابق ذو العرض الصلب 1024*768 قديمًا أكثر فأكثر بالنسبة للمستخدمين ذوي الشاشات الكبيرة، فإن المساحة الفارغة على كلا الجانبين تعطي الناس انطباعًا جادًا للوهلة الأولى هدرًا، كمصمم ويب، تقع على عاتقك مسؤولية منح هذه المجموعة من المستخدمين واجهة مستخدم جيدة.
بالطبع، من أجل تقليل إهدار الشاشة، يعد استخدام التخطيط المرن المرن هو الحل الأفضل، حيث يمكنه الاستفادة الكاملة من مساحة الشاشة وعرض المحتوى على الشاشة الكاملة بغض النظر عن الدقة التي تستخدمها. ومع ذلك، ونظرًا للقيود المختلفة، فإن صفحات الويب الحالية ليست جاهزة بعد لتبني التصميم المرن المرن بشكل كامل (خاصة الدوس الوحشي للمعايير من قبل الشركات المصنعة للمتصفح والدعم غير الكامل لمعايير CSS، وما إلى ذلك). باعتبارنا وسيطًا بين المستخدمين والمصنعين، لا يمكننا التكيف مع الفجوة بين الاثنين إلا بعقلية متوافقة. لذلك، كحل انتقالي، يوجد مثل هذا التخطيط: تخطيط مرن + عرض ثابت.
تعني المرونة المذكورة هنا أن الخلفية تتكيف مع عرض الشاشة، بينما يعني العرض الثابت أنه يمكن توسيط محتوى النص تلقائيًا في الشاشة العريضة أو الضيقة. البقاء على قيد الحياة في الشقوق لتلبية احتياجات المستخدمين بدقة مختلفة الحجم. التصميم الموضح أدناه هو مثال نموذجي.
دون مزيد من اللغط، دعونا نبدأ في إنشاء هيكل تخطيط مثل هذا.
قم أولاً ببناء طبقة الهيكل:
<div معرف = "المجمع"> <div id="main" class="clearfix"> <div معرف = "رأس"> <div id="inheader"></div> </div> <div id="content"></div> </div> </div> <div معرف = "تذييل"> <div id="infoot"></div> </div> |
تحليل الطبقة الهيكلية. تتضمن صفحة الويب بشكل عام ثلاثة أجزاء: الرأس ومنطقة المحتوى والتذييل. نضع الرأس والمحتوى في طبقة حاوية، تسمى غلافًا، ونفصل التذييل، يسمى غلافًا. لماذا تم تصميمه على هذا النحو؟ نريد أن يكون هذا التذييل في الأسفل تمامًا حتى عندما تكون مساحة المحتوى أقل من شاشة واحدة.
لقد قمنا بتعيين عرض الحاويتين، الغلاف والتذييل، على 100% بحيث تتكيفان تلقائيًا مع عرض الشاشة. وقم أيضًا بتعيين منطقة الرأس على عرض 100٪. بهذه الطريقة، يمكننا إدراج صورة يمكن تجانبها أفقيًا في الرأس والتذييل، بحيث يمكن لخلفية الرأس والتذييل ملء مساحة الشاشة بأكملها أفقيًا على شاشة كبيرة.
أما بالنسبة لمحتوى النص الرئيسي، فإن منهجنا العام هو عرضه في المنتصف عندما تصبح الدقة أكبر، مع ترك مساحة فارغة على كلا الجانبين. نظرًا لأنه تم ضبط منطقة الرأس على عرض 100%، فإننا نضيف طبقة حاوية أخرى إلى الرأس، والتي تعمل كحامل لمحتوى نص الرأس الحقيقي، ثم نقوم بتعيين قيمة عرض ثابتة لها، مثل عرض 960 بكسل واتركها تركز على نفسها.
#inheader{width:960px;height:110px; هامش:0 auto; } |
بهذه الطريقة، يمكن تعيين النص الرئيسي لرأس الصفحة على الطبقة العليا من هاتين الطبقتين بصور خلفية مختلفة لتشكيل تراكب تأثير الرأس، والذي يمكن أن يتكيف تلقائيًا مع دقة الشاشة الأكبر.
وبنفس الطريقة، يمكن أيضًا تنفيذ التذييل باستخدام هذه الطريقة.
في الطبقة الهيكلية أعلاه، لم أستخدم هذه الطريقة في منطقة المحتوى الوسطى، لكنني أجريت تغييرًا طفيفًا، يمكننا أن نرى أنه في منطقة المحتوى، لا توجد حاوية مضمنة، ولكن حاوية واحدة فقط. ماذا يجب أن نفعل إذا أردنا منع ظهور وجهي النص فارغًا بدقة عالية؟ بالطبع، يمكنك استخدام أساليب الرأس والتذييل وإضافة div إلى محتواه. بالطبع، من أجل تقليل التداخل، يمكننا استخدام الحلول البديلة. يمكننا إضافة صورة كبيرة جدًا إلى خلفية الجسم واستخدام وضع الخلفية لتحديد موضع الصورة وتوسيطها بحيث يتم عرض الصور على جانبي منطقة المحتوى.
هذه المدونة هي حالة محددة. إذا نظرت إلى الصور الموجودة على جانبي هذه المدونة بدقة عالية ثم قمت بتصغير النافذة، يمكنك أن ترى أنه يتم عرض مساحة صغيرة فقط من الصور على كلا الجانبين بدقة 1024*. 768، بينما يتم عرض النص الرئيسي دائمًا في المنتصف.
لتوضيح التأثير، نضيف بعض التعديلات اللونية الأخرى، ويكون النمط النهائي كما يلي:
*{الهامش:0;الحشو:0;} html، body، #wrapper {height: 100%;font-size:12px;} #المجمع{العرض:100%;الخلفية:#777;} الجسم > #التفاف {الارتفاع: تلقائي؛ الحد الأدنى للارتفاع: 100%؛} #main {padding-bottom: 54px;min-width:960px;}/* يجب استخدام نفس ارتفاع التذييل، ويمكن حل الحد الأدنى للعرض عن طريق إضافة JS في ie6*/ #header{text-align:center;color:#fff;الخلفية:#333;} #inheader{width:960px;height:110px;line-height:110px;margin:0 auto;background:#CC9933;} h3 {حجم الخط: 14 بكسل؛ ارتفاع الخط: 50 بكسل؛} #inheader p{font-size:12px;line-height:30px;} #تذييل { الموقف: نسبي؛ الهامش العلوي: -54 بكسل؛ /* القيمة السالبة لارتفاع التذييل*/ الارتفاع: 54 بكسل;/* ارتفاع التذييل*/ العرض: 100%؛ min-width:960px;/*تم حل الحد الأدنى للعرض عن طريق إضافة JS في ie6*/ واضح:كلاهما؛ الخلفية:#666; محاذاة النص:مركز؛ اللون: #ففف؛ } #infoot{الارتفاع:54px;ارتفاع الخط:54px;العرض:960px;الهامش:0 تلقائي;الخلفية:#CC9966;} #تذييل ص{ارتفاع الخط:26px;} #content{background:#999;width:960px;margin:0 auto;height:692px;} #content p{line-height:30px;padding:0 30px;color:#fff;} /*ملاحظة: ما يجب ملاحظته هو أن قيمة الحشو #main وارتفاع التذييل وقيمة الهامش السالبة يجب أن تكون متسقة. فيما يلي إغلاق التعويم العالمي الشهير Clearfix Hack*/ .مسح الإصلاح: بعد { محتوى: "."؛ عرض: كتلة؛ الارتفاع: 0; واضح: كلاهما؛ الرؤية: مخفية؛} .clearfix {العرض: مضمنة كتلة؛} /* إخفاء من IE-mac */ * أتش تي أم أل .clearfix { الارتفاع: 1٪؛} .مسح الإصلاح {العرض: كتلة؛} /* إنهاء الإخفاء من IE-mac */ |