Professional Documents
Culture Documents
Books Library - Online - Noo847205279c916172951391 21679 PDF
Books Library - Online - Noo847205279c916172951391 21679 PDF
.مfadinoh@hotmail.com
1'st Bootstrap
إعداد :م .فادي نوح
fadinoh@hotmail.comم.
مقدمة
تعرفت منذ فترة على مكتبة Twitter Bootstrapلبناء واجهات االستخدام ،وكان الحب من الصفحة األولى ،فقد وجدت فيها من الميزات ما يساعدني على
إنجاز األعمال بشكل أسرع وبمعايير عالية وبقلق أقل حيال دعم المستعرضات.
فأول ما يجب ان يقوم به المصمم المحترف بعد االنتهاء مما يسمى تقطيع الموقع إلى صفحات HTMLهو ان يقوم بتجريبه على كافة أنواع المتصفحات
ليضمن أكبر وصول سليم لمحتوى موقعه دون أي مشاكل في العرض ...وطبعا من المؤكد انه بعد تجريب الموقع على عدة متصفحات ستبدأ المشاكل بالظهور
وهذا ما يسبب فوضى كبيرة في الكود الخاص بموقعك وقد تضطر أحيانا إلى إعادة تقطيع الموقع من جديد .
أضع بين أيديكم شرحا ً تفصيليا متقدما عن هذه التقنية التي قام فريق Twitterموقع التواصل االجتماعي الشهير بعد مواجهة العديد من المشاكل المزمنة
التي يتعرض لها مصمم ال HTMLأثناء مقارنته للموقع المنتج على عدة متصفحات وعدة احجام وقياسات من اجهزة العرض كاألجهزة اللوحية والهاتف
المحمول وحتى اجهزة الكمبيوتر بأنواعها ..
قام فريق مبرمجي تويتر بتطوير هذه البنية والمكتبة لتشتمل ايضا على:
-مجموعة من مؤثرات ما يسمى بمكتبة JQueryوالتي سيتم عرضها بالتفصيل في هذا الكتاب ان شاء هللا
تاريخ البوتستراب
معنى الكلمة بالعربية "التمهيد" ،أصل إنشاء هذه المكتبة لمطورين ومصممين في موقع تويتر الشهير ،وتم انشاؤها من أشهر المشاريع المفتوحة المصدر
في العالم.
تم إنشاء البوتستراب في تويتر عام 0202من قبل مبرمجي شركة تويتر.
بعد عدة أشهر في التطوير وانطلق المشروع بقوة على كل المستويات وبدون توجيه وبسرعة كبيرة وكانت هذه بمثابة القاعدة االساسية لبناء أساسات المكتبة
قبل إطالقها لعامة المطوريين.
1'st Bootstrap
إعداد :م .فادي نوح
fadinoh@hotmail.comم.
وفي 0200-20-01قامت تويتر باصدار النسخة األولى لهذه المكتبة للمطورين والمصممين والجميل أنه تم اإلعالن عنها بتغريدة لمطور البوتستراب نفسه.
اآلن يوجد أكثر من عشرين اصدار لهذه المكتبة ,وتمت إعادة كتابتها من البداية في اإلصدارين V2و .V3
بوتستراب : 0في هذا االصدار تمت اضافة الـ Responsiveوجعله خيار للمطريون يقوم باضافته عند الحاجة.
بوت ستراب : 3فيه تمت إعادة كتابة المكتبة مرة أخرى لجعلها Responsiveبشكل إفتراضي ,وعلى متصفحات الجواالت بشكل أساسي.
1'st Bootstrap
إعداد :م .فادي نوح
fadinoh@hotmail.comم.
البساطة يمكن الحصول على مجموعة من الميزات بسهولة مثل التداخل في الكود ,العمليات وتوظيف األلوان باإلضافة لذلك بنية البوتستراب المبنية على الـ
CSSبشكل أساسي عند العرض ستكون سريعة وأهم ميزات البوتستراب :
.0سهلة في التضمين :فقط ضعها في الكود الخاص بمشروعك وابدأ العمل بها.
.0التجميع لمرة واحدة :البوتستراب التحوي أي شيء إضافي على الـ cssأي الصور وال ملفات جافا سكربت غير ضرورية كل ماتبقى فقط األمور البسيطة
والقوية لعمل موقعك بشكل مثالي.
.4الجافا سكربت المطورة مع هذه المكتبة أيضا ً يوجد فيها الكثير من الخيارات وهي سهلة في االستخدام والتطوير عليها.
الخالصة
البوتستراب أداة سهلة جميلة وتوفر الوقت والجهد ويجب أن تبدأ بالتعامل معها.
متطلبات العمل
قبل أن تبدأ أنت بحاجة أوال إلى:
يمكن البدء بالبوتستراب بخطوات بسيطة وسهلة جدا ,كل خطوة يمكن تطويرها واإلضافة عليها بحسب خبرة المصمم ,بإمكانك القراءة والمتابعة لتحصل من
البوتستراب على ما يناسب تصميم موقعك .أي انها عمليا مفتوحة المصدر تستطيع إضافة وحذف وتعديل محتوياتها بما يناسب موقعك .
الخطوة األولى للبدء هي تحميل مكتبة البوتستراب من خالل الرابط التالي :انقر هنا
وقد حصلت هذه المكتبة على عدة اصدارات واخر اصدار حاليا هو V.3.1.1
1'st Bootstrap
فادي نوح. م: إعداد
.مfadinoh@hotmail.com
: موزعة بالشكل التاليJavascript و الcss تتألف هذه المكتبة من مجموعة الملفات منها ال
: تعليمات تضمين المكتبات ضمن الصفحة التي تريد استخدام مكتبة البوتستراب فيها
.مfadinoh@hotmail.com
<!DOCTYPE html>
<html>
<head>
<title>Bootstrap 101 Template</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Bootstrap -->
<link href="css/bootstrap.min.css" rel="stylesheet">
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
<![endif]-->
</head>
<body>
<h1>Hello, world!</h1>
.طبعا ً هنا يجب حفظ هذا الملف بنفس المجلد الذي توجد فيه ملفات المكتبة التي سبق تحميلها
1'st Bootstrap
إعداد :م .فادي نوح
fadinoh@hotmail.comم.
أمثلة عن البوتستراب
على هذا المثال البسيط الذي كتبته سابقا ً ستتمكن من انشاء أي موقع تريد وإليك بعض األمثلة عن مواقع بسيطة تم انشاءها بكود البوتستراب البسيط هذا
المثال التالي يوضح كيفية استخدام احد عناصر البوتستراب وهي القائمة الرئيسية (الحظ كيف يتم تغير شكلها بمجرد تصغير شاشة المستعرض أي التصفح
على شاشة الجوال على سبيل المثال)
كما نالحظ فإن هذه الصفحة تحتوي على قائمة رئيسية مع عنوان الموقع وعنوان محتوى في الصفحة ونص عشوائي...
1'st Bootstrap
فادي نوح. م: إعداد
.مfadinoh@hotmail.com
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="">
</head>
<body>
<div class="container">
<div class="starter-template">
<h1>Bootstrap starter template</h1>
<p class="lead">Use this document as a way to quickly start any new project.<br> All you get is this text and a
mostly barebones HTML document.</p>
</div>
) هذا المثال هو لتوضيح قوة البوتسترابclasses( لن نهتم حاليا بالتفاصيل الموجودة داخل هذا الكود وخصوصا ً اسما الصفوف
ان نفس الصفحة السابقة وعن عرضها على شاشة الجوال على سبيل المثال ( قم بتصغير شاشة المتصفح لديك بعد تشغيل الكود السابق) لتحصل على الشكل
) التالي (الحظ كيف تحولت القائمة الرئيسية لتالئم عرض شاشة الجوال مثال
1'st Bootstrap
إعداد :م .فادي نوح
fadinoh@hotmail.comم.
وهناك امثلة أخرى سيتم عرضها ضمن هذا الكتاب بشيء من التفصيل .
دعم المتصفحات
البوتستراب بنيت لتالئم العمل على كل المتصفحات الجديدة سوا ًء كانت المتصفحات العادية أو متصفحات الجوال ,بمعنى أنه سيكون هناك فرق في ستايل
الموقع في المتصفحات القديمة.
إذا كان هناك اختالف بشكل الكود على متصفحات IEيمكنك كتابة هذا السطر في الكود الخاص بموقعك
بهذا السطر ستحصل على تالئم في المتصفح لموقعك بشكل جيد ويبقى هناك بعض الفروقات الصغيرة( .الفروقات الصغيرة موضحة ضمن الجدول بإشارة ×(
1'st Bootstrap
إعداد :م .فادي نوح
fadinoh@hotmail.comم.
تخصيص الستايل
اذا كنت تريد أن تقوم بالتعديل على عناصر البوتستراب فاألمر بسيط جدا ً فقط بإعادة الكتابة على اسم العنصر بملفك الـ cssستحصل على ستايل جديد خاص
بك.
أيضا ً إذا لم تكن بحاجة لكل العناصر أو تريد تخصيص بعض االعدادات يمكنك اختيار العناصر التي ستتضمنها مكتبة البوتستراب وإعادة إعدادها من جديد من
“مركز تخصيص وتحميل”
في النهاية أود أن أقول الموضوع جدا ً بسيط فقط ابدأ
1'st Bootstrap
إعداد :م .فادي نوح
fadinoh@hotmail.comم.
هناك في البداية بعض أمور التهيئة يجب ان تقوم بها قبل ان تكتب أي كود في صفحتك وهي مهمة جدا جدا وخاصة ضمن موضوع (التالؤم مع المتصفحات):
: HTML5 doctype -0وهي اعتماد لغة ال HTML 5ضمن صفحتك وهو امر مهم اليأخده متصفح Internet Explorerبعين االعتبار لذلك وجب
تنفيذه
><!DOCTYPE html
>"<html lang="en
...
></html
Mobile first -0الجهاز اللوحي او الموبايل هو األهم :في اصدار بوتستراب 3تمت أضافة ستايالت خاصة من اجل عرض الموقع على أجهزة
الموبايل بشكل جيد وفعال على شاشة الجوال ويستطيع المستخدم من عمل Zoomلتكبير محتوى الموقع دون ان يؤثر على قالب الصفحة .ومن اجل
تفعيل هذه الميزة الرائعة يجب ان نضع األمر التالي ضمن ال Headالخاص بصفحتك:
اما إذا أردنا ان نلغي هذه الميزة ونجبر الشخص على عدم القيام ب Zoomويستطيع فقط عمل Scrollكما هو الحال في Facebook mobile
دون تكبير الصفحة (حيث ان الموقع على شاشة الجوال سوف يتالءم افتراضيا ً معها) نقوم بإضافة األمر user-scalable=noإلى الوسم
السابق كما يلي:
Normalize.css -3وهو من أهم الملفات التي يجب تضمينها ضمن صفحات موقعك وذلك ألنه يحتوي على اهم أوامر التهيئة الخاصة بوسوم HTML
على سبيل المثال ان الوسم > <bodyبحاجة إلى تهئية افتراضية هامة وهي :
{ .body
;margin:0
;padding:0
}
وكذلك جميع وسوم لغة ال HTMLبحاجة إلى هذه التهيئة ألن ال paddingاالفتراضي في متصفح firefoxيختلف عنه في متصفح chromeلذلك فإن
تهيئته بالقيمة صفر هو من افضل الحلول
يمكنك مراجعة محتوى normalize.cssمن اجل فهم اكبر للفكرة ويمكنك تحميل هذا الملف من خالل الرابط انقر هنا
: Containers -4محتوى الصفحة الرئيسي وضمنه يوجد ما يسمى نظام الشبكة الوهمية ) ، (grid systemإن هذا المحتوى يحمل صفة
.containerوالتي تحتوي على صفات مايسمى mediaالتي من خاللها يتم تنسيق محتوى الموقع ضمن عرض معين للشاشة على سبيل المثال
ان يعرض القائمة الرئيسية بشكل افقي عند عرض شاشة 022بيكسل وان يقوم بعرضها بشكل عمودي عند عرض شاشة 422بيكسل .كل هذه
األوامر يتم التحكم بها من خالل التحكم بعرض هذا العنصر البسيط .containerوسيتم الغوص في هذا الموضوع الحقا.
fadinoh@hotmail.comم.
بهذه الخطوات الخمسة السابقة اصبحنا جاهزين للبدء بصفحة ويب تعمل على كافة المتصفحات دون أي مشاكل.
قبل البدء في الكورس المخصص للبوتستراب يجب توضيح ملف مهم مرفق مع مكتبة البوتستراب وهو config.json :
هذا الملف يحتوي على متحوالت مهمة تعد افتراضية من اجل تهيئتها بحسب حاجة المصمم مثال :
fadinoh@hotmail.comم.
Grid System
نظام الشبكة او الجدولة لصفحة الويب
من اجل ضمان تنسيق الموقع تقوم البوتستراب على مبدأ الشبكة الوهمية على اعتبار صفحة الويب مقسمة الى مجموعة من األسطر واألعمدة هذه األسطر
واألعمدة تمثل بمجموعها بلوكات للتحكم ببنية الصفحة بشكل عام.
تقسم الصفحة بهذه الحالة إلى 00عمود ويتزايد حجمها بشكل ديناميكي مع زيادة او تناقص حجم الشاشة وتحتوي هذه االعمدة على classesمعرفة مسبقا
ضمن المكتبة.
0 0 3 4 5 6 7 0 1 02 00 00
- - - - - - - - - - - -
- - - - - - - - - - - -
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
0 0 3 4 5 6 7 0 1 02 00 00
األسطر يجب إن توضع ضمن بلوك ( )divيدعى ( .containerبقياس ثابت يتوسط الشاشة) او ضمن بلوك يدعى ( .container-fluidقياس -
بحجم الشاشة) وذلك من اجل تأمين البلوكات وتحديد قياساتها بشكل دقيق
نستخدم هذه األسطر من اجل إنشاء شبكة كاملة على مستوى الصفحة -
من خالل األسطر واألعمدة نحصل على مجموعة من الخاليا وضمن هذه الخاليا نضع محتويات الصفحة الخاصة بنا بحيث ينشأ لدينا (بلوكات) -
إن كل سطر في هذه الصفحة يعرف كـ ( .rowأي ان اسم ال classالخاص بالسطر هو ) .row -
يتم تحديد مساحة البلوك من خالل تحديد عدد الخاليا المحجوزة مثال ( )col-md-4سيحجز أربع خاليا من اصل 00أي %3333من عرض الصفحة -
تستخدم األوامر التالية كشروط للتحكم بشكل الصفحة في حال استعراض الموقع على شاشات مختلفة
(tablets, 768px and up) */أجهزة لوحية صغيرة **/ / sdsdsdsdsdsdsd
} @media (min-width: @screen-sm-min) { ...
fadinoh@hotmail.comم.
إن هذا األمر يعتبر كشرط يمكن استخدامه في الصفحة من اجل قياس عرض محدد مثال االمر األول يمكن توضيحه كما يلي:
اذا اصبح قياس الشاشة بمقدار @screen-sm-minحيث إن هذا المتحول هو عبارة عن قيمة يتم التحكم بها من قبل المصمم في ملف البارامترات الخاص
بالبوتستراب على سبيل المثال أنا سأقوم بوضع هذه القيمة @screen-sm-min: 570pxأي إذا أصبح عرض الشاشة اقل من 572بيكسل فإنه سيتم
تغيير قيم معينة وحاالت معينة للبلوكات ضمن الصفحة.
ان أمر @mediaهو امر مهم جدا في css3وبإمكانك التحكم بالعديد من الشروط غير قياس الشاشة يمكنك االطالع على هذا االمر المهم جدا من خالل لنقر
على الرابط التالي انقر هنا
يستخدم ضمن هذا االمر شروط اضافية اخرى من خالل كتابة andبين الشروط .ففي مثالنا بإمكاننا إضافة شرط آخر من اجل التقييد األكبر لحجم الصفحة
وتالؤمها مع المحتوى المعروض ليصبح بالشكل:
يوجد اربع حاالت يمكننا تصنيف هذه الشبكة لتالئم العمل على مختلف الشاشات تم تقسيمها كما يلي :
األجهزة الكبيرة ()Desktop األجهزة المتوسطة ()Desktop األجهزة الصغيرة (تابلت) األجهزة الصغيرة جدا
( ) ≥1200px ( ) ≥992px () ≥768px ( ) >768px
أذا اردت ان اليحدث هذا التسلسل (أي عند فتح الصفحة على الجوال التريد ان تترتب الخاليا تحت بعضها البعض بل تحافظ على شكلها الموجود في الشاشة
الكبيرة نقوم باستخدام ااألمر * .col-xs-* .col-md-كما يلي
>"<div class="row
><div class="col-xs-12 col-md-8">.col-xs-12 .col-md-8</div
><div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div
></div
><!-- Columns start at 50% wide on mobile and bump up to 33.3% wide on desktop --
> --االعمدة تبدأ بحجم %05على شاشة الجوال و %3333على الشاشة العادية—!<
>"<div class="row
><div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div
><div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div
><div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div
></div
><!-- Columns are always 50% wide, on mobile and desktop --
>"<div class="row
><div class="col-xs-6">.col-xs-6</div
><div class="col-xs-6">.col-xs-6</div
></div
1'st Bootstrap
إعداد :م .فادي نوح
fadinoh@hotmail.comم.
اذا اردنا إضافة الديناميكية للعمل على التابلت أيضا ً يصبح األمر بالشكل التالي :
>"<div class="row
><div class="col-xs-12 col-sm-6 col-md-8">.col-xs-12 .col-sm-6 .col-md-8</div
><div class="col-xs-6 col-md-4">.col-xs-6 .col-md-4</div
></div
>"<div class="row
><div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div
><div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div
><div class="col-xs-6 col-sm-4">.col-xs-6 .col-sm-4</div
></div
إن استخدام مجموعة من * .col-md-يمكنك من بناء شبكة بإمكانها ان تتالءم مع األجهزة الصغيرة (تابلت او موبايل ) بشكل طوالني وال تتوزع بشكل
عرضاني (أي تصبح الخاليا تحت بعضها البعض ) اما على أجهزة الكمبيوتر المكتبية فتصبح (عرضية) ترتيب خاليا بشكل افقي
تالحظ ترتيب الخاليا بشكل عرضاني على شاشة المتصفح للكمبيوتر الشخصي ..وعند تصغيرها لتصبح بعرض شاشة الجوال نالحظ أن هذه الخاليا قد ترتبت
تحت بعضها البعض كما في الشكل التالي :
1'st Bootstrap
فادي نوح. م: إعداد
.مfadinoh@hotmail.com
<div class="row">
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
</div>
<div class="row">
<div class="col-md-8">.col-md-8</div>
<div class="col-md-4">.col-md-4</div>
</div>
<div class="row">
<div class="col-md-4">.col-md-4</div>
<div class="col-md-4">.col-md-4</div>
<div class="col-md-4">.col-md-4</div>
</div>
<div class="row">
<div class="col-md-6">.col-md-6</div>
<div class="col-md-6">.col-md-6</div>
</div>
1'st Bootstrap
فادي نوح. م: إعداد
.مfadinoh@hotmail.com
)*** قم بتجربة هذه األكواد بنفسك لتالحظ الفرق في النتائج (وقم بتكبير وتصغير حجم المتصفح لترى الفرق
قد توجهنا مشكلة إضافية وقد تواجه العديد من المصممين وهي ان نحصل على خلية أطول من الخاليا المجاورة لها وخاصة اذا اختلف حجم المحتوى
<div class="row">
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3 Resize your viewport or check it out
on your phone for an example. </div>
<div class="col-xs-6 col-sm-3">.col-xs-6 .col-sm-3</div>
<!-- Add the extra clearfix for only the required viewport -->
<div class="clearfix visible-xs"></div>
: والناتج هو
: قابلة للتطبيق على سبيل المثال.col-md-offset-* كما ان عمليات االزاحات في الخاليا نستخدم
<div class="row">
<div class="col-md-4">.col-md-4</div>
<div class="col-md-4 col-md-offset-4">.col-md-4 .col-md-offset-4</div>
</div>
<div class="row">
<div class="col-md-3 col-md-offset-3">.col-md-3 .col-md-offset-3</div>
<div class="col-md-3 col-md-offset-3">.col-md-3 .col-md-offset-3</div>
</div>
<div class="row">
<div class="col-md-6 col-md-offset-3">.col-md-6 .col-md-offset-3</div>
</div>
1'st Bootstrap
فادي نوح. م: إعداد
.مfadinoh@hotmail.com
: كما يمكنك استخدام مجموعة من الخاليا ضمن الخلية الواحدة كما يلي
<div class="row">
<div class="col-md-9">
Level 1: .col-md-9
<div class="row">
<div class="col-md-6">
Level 2: .col-md-6
</div>
<div class="col-md-6">
Level 2: .col-md-6
</div>
</div>
</div>
</div>
: مالحظة
. موضوع ضمنيا ضمن مكتبة البوتسترابPadding جميع هذه الخاليا تحتوي على
1'st Bootstrap
إعداد :م .فادي نوح
fadinoh@hotmail.comم.
ان األوامر > <h1إلى > <h6تم تحسينها في البوتستراب ليتم استخدامها بشكل مباشر كما يلي
.مfadinoh@hotmail.com
<p> < وbody> وهي مطبقة على وسم03405 بمقدارline-height مع14px : هي افتراضياfont-size ان حجم الخط االفتراضي في بوتستراب
<p> إلى الوسم.lead ( يتم بإضافةlead body) إن إضافة النص الواضح
: مؤثرات النص
: تموضع النص
: مثال
: نريد وضع عنوان مكان معين او شخص ما ليظهر كما في الشكل التالي
1'st Bootstrap
إعداد :م .فادي نوح
fadinoh@hotmail.comم.
><address
><strong>Twitter, Inc.</strong><br
>795 Folsom Ave, Suite 600<br
>San Francisco, CA 94107<br
><abbr title="Phone">P:</abbr> (123) 456-7890 </address
><address> <strong>Full Name</strong><br
><a href="mailto:#">first.last@example.com</a> </address
الجدوال :
كما نعلم وعند بناء الجدول في لغة ال htmlاالعتيادية نحن بحاجة إلى اضافة تعديالت كثيرة ضمن ال cssمثل paddingو marginsوغيرها
في البوتستراب نحن لسنا بحاجة لمثل هذه التعديالت ألنها جاهزة في هذه المكتبة!
فقط عندما تقوم ببناء جدول قم بوضع classباسم .tableكما يلي :
fadinoh@hotmail.comم.
يمكنك استخدام صفات معينة لتعطي الوانا لسطور الجدول بحسب محتواه كما يلي:
fadinoh@hotmail.comم.
ويطلق عليها Responsive tablesوهي الجداول التي التتغير ابعادها عند التصغير للمتصفح في الحجم كما هو الحال في شاشات الجوال .أي عند عرض
هذه الجداول على شاشة مستعرض صغيرة يتم الحفاظ على ابعادها مع ظهور scroll barلتصفح كامل الجدول كما في الشكل التالي:
1'st Bootstrap
فادي نوح. م: إعداد
.مfadinoh@hotmail.com
<div class="table-responsive">
<table class="table">
...
</table>
</div>
)Forms( النماذج
سنستعرض معا هذه العناصر وكيف قامت. وغيرها من العناصرcheckbox وradio boxكلنا يعلم ماهي النماذج وهي بالطبع مايشمل من حقول نصية و
.البوتستراب بإعادة تنسيقها لتبدو بشكل أجمل وافضل ومتكاملة مع كافة المتصفحات
<form role="form">
<div class="form-group">
<label for="exampleInputEmail1">Email address</label>
<input type="email" class="form-control" id="exampleInputEmail1" placeholder="Enter
email">
</div>
<div class="form-group">
<label for="exampleInputPassword1">Password</label>
<input type="password" class="form-control" id="exampleInputPassword1"
placeholder="Password">
</div>
<div class="form-group">
<label for="exampleInputFile">File input</label>
<input type="file" id="exampleInputFile">
<p class="help-block">Example block-level help text here.</p>
</div>
<div class="checkbox">
<label>
<input type="checkbox"> Check me out
</label>
</div>
<button type="submit" class="btn btn-default">Submit</button>
</form>
1'st Bootstrap
فادي نوح. م: إعداد
.مfadinoh@hotmail.com
: حاالت خاصة
Inline form -0
: يعد هذا التنسيق من أجل وضع عناصر الفورم ضمن سطر واحد كما في الشكل التالي
.مfadinoh@hotmail.com
Horizontal form -0
form النموذج المعروف للفورم اصبح تنفيذه سهال لتبعد نفسك عن عمليات التنسيق الصعبة لعناصر ال
.مfadinoh@hotmail.com
<div class="checkbox">
<label>
<input type="checkbox" value="">
Option one is this and that—be sure to include why it's great
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="optionsRadios" id="optionsRadios1" value="option1"
checked>
Option one is this and that—be sure to include why it's great
</label>
</div>
<div class="radio">
<label>
<input type="radio" name="optionsRadios" id="optionsRadios2" value="option2">
Option two can be something else and selecting it will deselect option one
</label>
</div>
<label class="checkbox-inline">
<input type="checkbox" id="inlineCheckbox1" value="option1"> 1
</label>
<label class="checkbox-inline">
<input type="checkbox" id="inlineCheckbox2" value="option2"> 2
</label>
<label class="checkbox-inline">
<input type="checkbox" id="inlineCheckbox3" value="option3"> 3
</label>
1'st Bootstrap
فادي نوح. م: إعداد
.مfadinoh@hotmail.com
: قوائم اإلختيار-4
أيضا لقوائم اإلختيار تنسيق خاص في البوتستراب كما يلي
<select class="form-control">
<option>1</option> <option>2</option> <option>3</option> <option>4</option> <option>5</option>
</select>
<form role="form">
<fieldset disabled>
<div class="form-group">
<label for="disabledTextInput">Disabled input</label>
<input type="text" id="disabledTextInput" class="form-control" placeholder="Disabled input">
</div>
<div class="form-group">
<label for="disabledSelect">Disabled select menu</label>
<select id="disabledSelect" class="form-control">
<option>Disabled select</option>
</select>
</div>
<div class="checkbox">
<label>
<input type="checkbox"> Can't check this
</label>
</div>
<button type="submit" class="btn btn-primary">Submit</button>
</fieldset>
</form>
1'st Bootstrap
فادي نوح. م: إعداد
.مfadinoh@hotmail.com
: حاالت التصحيح-6
) وهي ظهور العناصر النصية بألوان مختلفة تعبر عن حاالت معينة مثل (خطأ – قيمة صحيحة – انذار
........ . has-success . has-warning : معينة مثلclasses وذلك بإضافة
: أحجام الفورم
: يمكننا التحكم بحجم عنصر الفورم من خالل قياسات قامت مكتبة البوتستراب بتحديدها وتم تقسيمها على ثالثة أصناف
. حجم كبير لمربع النص: input-lg -0
) حجم متوسط (االفتراضي: input-md -0
حجم صغير:input-sm -3
.مfadinoh@hotmail.com
: مثال
: كمثال على ذلك يمكننا ترتيب عناصر مربعات النص ضمن الشبكة الوهمية المعرفة ضمن البوتستراب
<div class="row">
<div class="col-xs-2">
<input type="text" class="form-control" placeholder=".col-xs-2">
</div>
<div class="col-xs-3">
<input type="text" class="form-control" placeholder=".col-xs-3">
</div>
<div class="col-xs-4">
<input type="text" class="form-control" placeholder=".col-xs-4">
</div>
</div>
: نموذج المساعدة
) كما في الشكل التاليtext box( كثيرا مانرى في بعض النماذج التي يقوم المستخدم بتعبئتها بعض المساعدة والتي تكون عادة تحت مربعات النص
:
<span class="help-block">A block of help text that breaks onto a new line and may extend beyond one line.</span>
1'st Bootstrap
فادي نوح. م: إعداد
.مfadinoh@hotmail.com
:األزرار
: توفر مكاتب البوتستراب تصاميما جاهزة لالزرار بشكل جذاب وانيق كما في الشكل التالي
: تشتمل المكتبة على أربعة احجام قياسية لألزرار كما يلي:أحجام األزرار
.btn-lg : كبير-0
.btn-sm: متوسط-0
.btn-xs: صغير-3
افتراضي-4
<p>
<button type="button" class="btn btn-primary btn-lg">Large button</button>
<button type="button" class="btn btn-default btn-lg">Large button</button>
</p>
<p>
<button type="button" class="btn btn-primary">Default button</button>
<button type="button" class="btn btn-default">Default button</button>
</p>
<p>
<button type="button" class="btn btn-primary btn-sm">Small button</button>
<button type="button" class="btn btn-default btn-sm">Small button</button>
</p>
<p>
<button type="button" class="btn btn-primary btn-xs">Extra small button</button>
<button type="button" class="btn btn-default btn-xs">Extra small button</button>
</p>
1'st Bootstrap
إعداد :م .فادي نوح
fadinoh@hotmail.comم.
من اجل إعطاء حجم اختياري للزر نقوم بوضع الكود :
الصور:
ان التعامل مع الصور في البوتسراب يهدف أيضا التكامل مع كافة المتصفحات وقياسات الشاشات من موبايل حتى شاشة عرض كبيرة
من أجل تفعيل ميزة القياس التلقائي للصورة بحسب حجم الشاشة نقوم باستخدام األمر : img-responsive
كما انه يمكننا التحكم بشكل اطار الصور حيث يمكن ان نجعلها صورة دائرية او مستطيلة او مستطيلة منحنية الزوايا كما في الشكل التالي :
.مfadinoh@hotmail.com
Helper Classes
: شريط المالحظات-0
: إليك تفاصيل هذه األشرطة، هناك عدة الوان الشرطة المالحظات تظهر للمستخدم اثناء قيامه بتفاعل ما على الصفحة
<p class="bg-primary">...</p>
<p class="bg-success">...</p>
<p class="bg-info">...</p>
<p class="bg-warning">...</p>
<p class="bg-danger">...</p>
<div class="pull-left">...</div>
<div class="pull-right">...</div>
// Classes
.pull-left { float: left !important; }
.pull-right { float: right !important; }
// Usage as mixins
.element { .pull-left(); }
.another-element { .pull-right(); }
.navbar-left or .navbar-right وانما تستخدم األصناف التاليةnav-bar التستخدم هذه الميزة في القائمة الرئيسية: مالحظة
<div class="show">...</div>
<div class="hidden">...</div>
fadinoh@hotmail.comم.
سيتم نشر الجزء الثاني قريبا ً حتى يتم تحضير كامل لألمثلة وسنتحدث في الجزء الثاني عن قوة البوتستراب في استخدام السكريبتاتJQuery ..