Advanced Search

المحرر موضوع: كتاب لغة HTLM  (زيارة 778 مرات)

0 الأعضاء و 1 ضيف يشاهدون هذا الموضوع.

يناير 07, 2007, 01:12:16 صباحاً
زيارة 778 مرات

المجمعي

  • عضو مبتدى

  • *

  • 82
    مشاركة

    • مشاهدة الملف الشخصي
    • www.mustafa1986.jeeran.com
كتاب لغة HTLM
« في: يناير 07, 2007, 01:12:16 صباحاً »
بسم اللة الرحمن الرحيم
السلام عليكم ورحمة اللة وبركاتة


مقدمة
 
إنها اللغة المستخدمة لإنشاء صفحات الإنترنت. (والكلمة إختصار لـ Hyper Text Markup Language). وهي ليست لغة برمجة بالمعنى والشكل المتعارف عليه للغات البرمجة الأخرى كلغة C . فهي مثلاً لا تحتوي على جمل التحكم والدوران، وعند الحاجة لاستخدام هذه الجمل يجب تضمين شيفرات من لغات أخرى كـ Java, JavaScript, CGI . كذلك فهي لا تحتاج إلى مترجم خاص به Compiler . وهي غير مرتبطة بنظام تشغيل معين، لأنه يتم تفسيرها وتنفيذ تعليماتها مباشرة من قبل متصفح الإنترنت وبغض النظر عن النظام المستخدم. لذلك فهي لغة بسيطة جداً، وسهلة الفهم والتعلم ولا تحتاج لمعرفة مسبقة بلغات البرمجة والهيكلية المستخدمة فيها. بل ربما كل ما تحتاجه هو القليل من التفكير المنطقي وترتيب الأفكار.
تتكون مفردات لغة Html من شيفرات تسمى TAGS أي الوسوم. وهي تستخدم بشكل أزواج وتكتب بالصيغة التالية (من اليسار إلى اليمين) :-
 
 
 
فعلى سبيل المثال الوسم يستخدم لكتابة الكلمات بخط أسود عريض Bold وذلك بالشكل التالي:
Text <‎/B>
وهناك بعض الوسوم الخاصة التي تستخدم بصورة مفردة مثل وسم نهاية السطر
أو قد تستخدم بكلتا الحالتين مثل وسم الفقرة

.
وسوف نناقش هذه الوسوم وغيرها بالتفصيل في حينه إن شاء الله
  
كيف نبدأ...
 
لا يتطلب كتابة ملف HTML أية برامج خاصة فهي كما قلنا لغة لا تحتوي على برنامج مترجم. بل نحتاج فقط إلى برنامج لتحرير النصوص البسيطة ومعالجتها، وبرنامج المفكرة الموجود في Windows يفي بهذا الغرض. وكذلك إلى أحد متصفحات الإنترنت Netscape Navigator أو MS Internet Explorer لمعاينة الصفحات التي نقوم بتصميمها. وعليك فقط أن نقوم بحفظ النص المكتوب بملف يحمل الاسم الممتد ‎.html أو ‎.htm
والجدير ذكره أنه يوجد العديد من البرامج التي تستخدم لإنشاء صفحات Html. دون الحاجة لمعرفة هذه اللغة حيث يقوم المستخدم من خلالها بكتابة الصفحات وتصميمها بما تحويه من نصوص ورسومات وجداول ثم يقوم البرنامج بتخليق الوسوم المناسبة وتحويل هذه الصفحات من وراء الكواليس تلقائياً وحفظها بتنسيق html. أي أن دور المستخدم ينحصر في الكتابة والتصميم فقط، دون معرفته للشيفرة التي استخدمت. وبالتالي عدم قدرته على التحكم بأي وسم أو تعديل الشيفرة حسب الحاجة، إلا من خلال إعادته للتصميم الأساسي ثم إعادة التحويل والحفظ من قبل البرنامج. وهذه الطريقة على سهولتها وسرعتها نسبياً، إلا أني لا أنصح باستخدامها لمن يريد معرفة هذه اللغة والتمكن منها.
 
قبل أن نبدأ
 
حسناً، لديك محرر نصوص ممتاز لكتابة ملفات HTML ولديك متصفح إنترنت لمعاينتها، ولديك هذه الدروس التي ستنطلق معها إلى عالم تصميم صفحات الويب. هل هذا يكفي؟ برأيي المتواضع، لا.
تحتاج دائماً وأبداً إلى تطبيق ما تتعلمه بصورة عملية أكثر من مجرد الأمثلة المدرجة في الدروس. ما رأيك في أن تفكر بموضوع ما يستهويك وتحب أن تتعاطى به؟ وتخيل أنك ستقوم بإنشاء موقع ويب عنه بصورة واقعية. ومع تقدمك في الدروس قم بتطبيق ما فيها على صفحاتك. ستجد الكثير من المتعة في هذا، وستسر جداً عندما ترى صفحتك تتبلور أمام عينيك يوماً بعد يوم، والأهم من هذا كله هو أنك ستكتشف أي ثغرات في استيعابك لهذه الدروس (وعندها من المؤكد أنك ستقوم بتلافيها) وقد تكتشف كذلك ثغرات ارتكبها كاتب هذه الدروس. (وفي هذه الحالة أرجو أن لا تتردد أبداً في الكتابة لي لكي أعمل على تلافيها).






الدرس الأول
الأساسيات

أهلاً وسهلاً بك إلى الدرس الأول من دروس HTML. سوف أقوم في هذا الدرس بسرد الوسوم الأساسية لصفحة الويب ومناقشتها معك واحداً تلو الآخر. لنصل في النهاية إلى إنشاء صفحة ويب بسيطة.
 
لنأخذ الوسوم التالية:
وسم البداية   وسم النهاية
   <‎/HTML>
>   <‎/HEAD>
   <‎/TITLE><br />>   <‎/BODY><br />ماذا تلاحظ؟ أن كل منها يتألف من زوج من الوسوم أحدهما وسم البداية، والآخر وسم النهاية. ويتميز وسم النهاية بوجود الرمز / . تأمل الرسم التالي، فهو يعطي فكرة عن تركيب ملف Html <br /><br /> إذن فملف Html يبدأ دائماً بالوسم <HTML> وينتهي بالوسم <‎/HTML>. لا تنسى ذلك! <br />أما الوسم > فيحدد بداية المقطع الذي يحتوي على المعلومات الخاصة بتعريف الصفحة. كالعنوان الظاهر على شريط عنوان المتصفح. وهذا العنوان بدوره يحتاج لأن يوضع بين الوسمين: <TITLE> … <‎/TITLE> وبالطبع يجب كتابة الوسم <‎/HEAD> لكي ننهي هذا المقطع. <br />نأتي إلى الوسم > والذي يتم كتابة نصوص صفحة الويب ضمنه، بالإضافة إلى إدراج الصور والجداول وباقي محتويات الصفحة. وهو أيضاً يحتاج إلى وسم الإنهاء <‎/BODY> <br />ما رأيك لو نبدأ بتطبيق هذه المعلومات بصورة عمليه؟ هيا… قم بفتح برنامج المفكرة واكتب ما يلي: <br /><HTML><br />><br /><TITLE><br />This is a test Webpage<br /><‎/TITLE><br /><‎/HEAD><br /> <br />><br />Wow, I'm writing my first webpage<br /><‎/BODY><br /><‎/HTML> <br />والآن قم بحفظ ما كتبته في ملف وبأي اسم تختاره. ولا تنسى أن الامتداد المستخدم في أسماء ملفات HTML هو htm. أو html. مثلاً أنا اخترت الاسم ‎1st_file.htm ومن الأفضل أن تقوم بإنشاء مجلد مستقل على القرص الصلب لكي تحفظ به ملفاتك فهذا يسهل عليك عملية استرجاعها للعرض أو التحديث وليكن هذا المجلد مثلاً بالاسم C:\htmfiles (أو بأي اسم يحلو لك). <br />حان وقت العرض، لكي نشاهد نتيجة ما كتبناه. قم بتشغيل متصفح الإنترنت الذي تستخدمه. فإذا كان Netscape Navigator اختر الأمر Open File… من قائمة File. أما في MS Internet Explorer فاختر الأمر Open… من قائمة File. ثم حدد المسار الذي يوجد به الملف. أنا شخصياً قمت بتحديد المسار التالي: <br />C:\htmfiles\1st_file.htm <br />وذلك طبعاً حسب الافتراضات السابقة التي اتبعتها عند تخزين الملف. وهذا ما حصلت عليه: <br /><br />وماذا عنك؟ هل حصلت على نفس النتيجة؟ إذن مبروك  لقد قمت بإنشاء أول صفحة ويب خاصة بك. (وإلا، إذا لم تحصل على نفس النتيجة قم بالنقر هنا) <br />وقبل أن نستمر أريد أن أنبهك إلى بعض الملاحظات عند كتابة صفحات الويب: <br />•   لا يوجد فرق بين كتابة الوسوم بالأحرف الإنجليزية الكبيرة UPPERCASE أو الأحرف الصغيرة lowercase. لذلك تستطيع الكتابة بأي شكل منهما أو حتى الكتابة بكليهما. <br />•   إن المتصفحات لا تأخذ بعين الاعتبار الفراغات الزائدة أو إشارات نهاية الفقرات (أي عندما تقوم بضغط مفتاح Enter) التي تجدها هذه المتصفحات في ملف Html. وبعبارة أخرى فإن باستطاعتك كتابة ملفك السابق بالشكل التالي: <br /><HTML>><TITLE> This is a test Webpage >
Wow, I'm writing my first webpage ‎
أو بالشكل التالي:

>
<br />This <br />is a <br />test <br />Webpage<br /><‎/TITLE><br /><‎/HEAD><br />><br />Wow, <br />I'm <br />writing <br />my <br />first <br />webpage<br /><‎/BODY><br /><‎/HTML> <br />أو حتى بهذا الشكل: <br /><HTML> > <TITLE> <br />This is a test Webpage<br /><‎/TITLE><br /><‎/HEAD><br />><br />Wow, I'm writing my first webpage<br /><‎/BODY><br /><‎/HTML><br />وفي كل الحالات ستحصل على نفس النتيجة. وإذا كنت من تلك النوعية من الناس التي لا تصدق كل ما يقال… تستطيع أن تجرب ذلك بنفسك!!! هيا جرب.<br /> <br />لكن هذا لا يعني أن الفقرة المكونة مثلاً من عشرة أسطر ستمتد إلى عدة أمتار بعرض الشاشة. كلا بالطبع لأن المتصفح سيقوم بعمل التفاف تلقائي لها بحسب عرض الشاشة، مهما كان مقدار هذا العرض. <br /> <br />والآن قد تتساءل، إذن كيف يمكن التحكم بمقدار النص المكتوب في كل سطر وكيف يمكن تحديد نهاية الفقرة وبداية الفقرة التي تليها؟ سؤال وجيه!!! والإجابة عليه هي: <br />سوف نستخدم الوسم <BR> لتحديد النهاية للسطر. والبدء بسطر جديد (لاحظ أن هذا الوسم مفرد، أي ليس له وسم نهاية). <br />ونعود إلى المثال السابق، قم بتعديل الملف لكي يصبح بالشكل التالي <br /><HTML><br />><br /><TITLE> <br />This is a test Webpage<br /><‎/TITLE><br /><‎/HEAD><br />><br />Wow, <BR> I'm writing my <BR>‎<br />first webpage<br /><‎/BODY><br /><‎/HTML> <br /><br />وهناك أيضا الوسم <P> الذي يقوم تقريباً بنفس عمل الوسم السابق أي أنه ينهي السطر أو الفقرة ويبدأ بسطر جديد لكن مع إضافة سطر إضافي فارغ بين الفقرات.<br />المزيد عن هذا الوسم في الدرس الرابع الفقرات <br /><HTML><br />><br /><TITLE> <br />This is a test Webpage<br /><‎/TITLE><br /><‎/HEAD><br />><br />Wow, <P> I'm writing my <P>‎<br />first webpage<br /><‎/BODY><br /><‎/HTML> <br /><br />أما الفراغات فتعتبر رموزاً خاصة لذلك لا نستطيع التحكم بها وبعددها إلا باستخدام الوسم ‎ ‎ (والأحرف هي اختصار للعبارة Non Breakable Space). وإذا أردت إدخال عدة فراغات بين نص وآخر ما عليك إلا كتابة هذا الوسم بنفس عدد الفراغات المطلوب. كما يجب عليك التقيد بالأحرف الصغيرة هنا. <br />إذن لنعد إلى المفكرة ونكتب ملفنا بالشكل التالي: <br /><HTML><br />><br /><TITLE> <br />This is a test Webpage<br /><‎/TITLE><br /><‎/HEAD><br />><br />Wow,      ‎<br />I'm      writing    ‎<br />‎  my       first       webpage<br /><‎/BODY><br /><‎/HTML> <br /><br />  <br />وبمناسبة الحديث عن الرموز الخاصة فهناك العديد من هذه الرموز والتي يجب أن تكتب بصورة معينة وباستخدام الوسوم وليس مباشرة بصورتها العادية. خذ مثلا إشارتي أكبر من وأصغر من وإشارة الاقتباس ". كل هذه الإشارات تستخدم أصلاً مع الوسوم فهي محجوزه ضمن مفردات لغة HTML ومن الخطأ استخدامها بصورتها الصريحة لئلا يؤدي ذلك إلى حدوث مشاكل في طريقة عرض الصفحة. كذلك فإن هناك رموزاً غير موجودة أساساً على لوحة المفاتيح كرمز حقوق الطبع © ورمز العلامة المسجلة ® ونحتاج إلى هذه الطريقة(طريقة الوسوم) لكتابتها. وإليك جدول ببعض هذه الرموز ووسومها المكافئة. وألفت نظرك إلى أنها تكتب كما هي في الجدول وبدون إشارتي <> <br /><br /><br /><br /><br /><br /><br />الدرس الثاني<br />الألوان - أضف لصفحتك بعض الحيوية<br />أهلاً وسهلاً بك إلى الدرس الثاني من دروس HTML. سوف نقوم في هذا الدرس بالتعرف على الخصائص التي يمكن إضافتها إلى الوسم > من أجل التحكم بالشكل العام للصفحة، وخصوصا فيما يتعلق بالألوان. <br />طبعاً أنت لا زلت تذكر الصفحة التي قمنا بكتابتها في الدرس الأول. صفحة بسيطة بخلفية رمادية وخط صغير نسبياً لونه أسود. وهذه هي الإعدادات الإفتراضية التي يعتمدها المتصفح عندما لا نقوم نحن بتحديد إعدادات أخرى. (ربما تقول: أهذه صفحة إنترنت! أين الألوان والرسومات والخطوط الجميلة والتنسيقات التي نراها في صفحات الإنترنت؟ معك حق لكن مهلاً فما زلنا في البداية). <br />سوف نستمر باستخدام صفحتنا هذه لتوضيح أمثلة هذا الدرس أيضاً، لكن لن أقوم بتكرار كتابة وسوم البداية طالما أن عملنا يتركز في الجزء المخصص لمحتويات الصفحة نفسها أي ضمن الوسمين > ... <‎/BODY>.<br />إذن لنبدأ العمل! <br />نطلق كلمة خاصية (Attribute) على التعابير التي تضاف إلى الوسوم، من أجل تحديد الكيفية أو الشكل الذي تعمل بها هذه الوسوم. وبعبارة أخرى فإن الوسم يقوم بإخبار المتصفح عن العمل الذي يجب القيام به أما الخاصية فتحدد الكيفية التي سيتم بها أداء هذا العمل. <br />تأمل الشيفرة التالية: <br />‎ BGCOLOR="FFFFFF">‎<br />...<br /><‎/BODY> <br />لقد قمت بإضافة الخاصية BGCOLOR إلى الوسم > ، وهي تقوم بتحديد لون الخلفية للصفحة. أما FFFFFF فهي القيمة التي تمثل اللون المختار وهو هنا اللون الأبيض، (لاحظ أنها مكتوبه بين إشارتي " " ) ولو أردت تمثيل اللون الأسود لكتبت الرمز 000000. أو الرمز 6699CC للون الأزرق الفاتح......<br />فمن أين جاءت هذه القيم، وكيف؟... تابع القراءة وسوف تعرف <br /> <br /><br /> <br />القليل عن الألوان... <br />  <br />تلاحظ أن القيم السابقة مكونة من ستة رموز، وهي مكتوبة بالصيغة التالية:- <br /><br />هناك ثلاثة ألوان أساسية هي الأحمر والأخضر والأزرق، ولكل منها يوجد 256 درجة لونية ويعبر عن هذه الدرجات بالأرقام من 000 وحتى 255. ومن خلال مزج هذه الألوان بدرجاتها اللونية المختلفة نحصل على الألوان الأخرى. <br />* إن أي لون هو مزيج -وبنسبة معينة من الدرجات- من هذه الألوان الثلاثة * <br />فمثلا اللون الأسود مكون من الدرجة 000 من كل من اللون الأحمر والأخضر والأزرق. واللون الأبيض مكون من الدرجة 255 من هذه الألوان. أما اللون الأصفر فهو مكون من الدرجة 255 للون الأحمر، والدرجة 255 للون الأخضر، والدرجة 000 من اللون الأزرق... وهكذا بنفس الطريقة يتم تكوين باقي الألوان. <br />وبعملية حسابية بسيطة 256×256×256 ينتج لدينا أن عدد الألوان التي يمكن الحصول عليها بمزج الألوان الثلاثة السابقة هو 16777216 بالضبط. <br />حسنا، لكن من أي جاءت الرموز FFFFFF والتي عبرت عن اللون الأبيض بها. إنها ببساطة أرقام… مكتوبة بالنظام السداس عشري (نظام عددي أساسه الرقم 16 ويعبر عنه باستخدام الأرقام العادية من 0 إلى 9 والرموز A,B,C,D,E,F ). فالرقم 255 بالنظام العشري العادي يكافئه الرقم FF بالنظام السداس عشري.<br />إذن فالرقم السداس عشري FF على اليسار يمثل الدرجة 255 للون الأحمر. والرقم FF في الوسط يمثل الدرجة 255 من اللون الأخضر. والرقم FF على اليمين يمثل الدرجة 255 من اللون الأزرق. <br />وعلى هذا المنوال يعبر عن اللون الأزرق الفاتح بالرقم السداس عشري: 6699CC أما اللون الأسود فرقمه هو 000000. <br /> <br />وهذا جدول ببعض الألوان ورموزها المكافئة بالنظام السداس عشري. <br />    ABCDEF       FFFF00<br />    FEDCBA       336699<br />    773466       112233<br />    FF1122       666666<br />    0033FF       663333<br />    AABBAA       00FF00<br />    800800       FF6600<br />    008008       993366<br />    020769       123456<br />    111111       654321<br /><br /> <br />أما كيف تعرف الرمز الخاص باللون الذي تريد اختياره، فيوجد برامج خاصة تستطيع من خلالها دمج الألوان الثلاثة بنسب مختلفة، ومن ثم يقوم البرنامج بتوليد الرمز السداس عشري المكافئ للون الناتج.<br />ملاحظة مهمة:<br />بعض المتصفحات لا تتعرف على رموز الألوان إلا بوضع إشارة # قبل هذه الرموز، لذلك من الأفضل استخدامها دائماً.<br />وبالنسبة لبعض الألوان الأساسية والدارجة، من الممكن استخدام أسماء هذه الألوان مباشرة بدلاً من الأرقام السداس عشرية. وهذا جدول يوضح هذه الألوان ومسمياتها: <br />    Black       White<br />    Red       Green<br />    Marron       Purple<br />    Navy       Blue<br />    Teal       Lime<br />    Gray       Silver<br />    Olive       Aqua<br />    Fuchsia       Yellow<br /> <br /> <br /><br /> <br />ونعود إلى الوسوم و خصائصها ... <br /> <br />‎ BGCOLOR="#FFFFFF" BACKGROUND="image.jpg">‎<br />...<br /><‎/BODY> <br />تقوم الخاصية BACKGROUND بتحديد صورة كخلفية (ورق جدران) للصفحة وقد استخدمت الصورة التالية:<br /> <br />والمسماة image.jpg في صفحتي وكانت هذه النتيجة <br /><br /> <br />تلاحظ أن المتصفح قد قام بتكرار عرض الصورة بطريقة التجانب وأنها أصبحت تغطي كل الشاشة. بحيث حجبت أيضاً اللون الأبيض الذي حددناه كلون الخلفية (من خلال الخاصية BGCOLOR) والحقيقة أن اللون يظهر فقط عندما لا نقوم باستخدام صورة ما كخلفية. ومع ذلك يفضل تحديده إحتياطاً خاصة وأن بعض المتصفحات القديمة توصف بأنها متصفحات نصية Text-Based Browsers (أي ليس بإمكانها عرض الصور). أو ربما هناك بعض المستخدمين الذين قاموا بإلغاء خيار عرض الصور تلقائياً من متصفحاتهم. إذن لنعطهم على الأقل فرصة مشاهدة بعض الألوان إن لم يستطيعوا مشاهدة الصور. <br />إننا نستطيع استخدام الصور بأحجام مختلفة طولياً أو عرضياً كخلفيات للصفحة، والمتصفح نفسه هو الذي يقوم تلقائياً بعرضها في وضع التجانب مما يعطي الانطباع بأنها صورة كبيرة. <br /> <br />  <br />ولنكمل مع باقي الخصائص في وسم >: ربما لاحظت خلال استخدامك للإنترنت أن معظم الوصلات التشعبية (Links) التي تنقر عليها لتنقلك إلى صفحات أو مواقع أخرى على الشبكة هي دائماً مميزة باللون الأزرق، وأن الوصلات التي قمت بزيارتها فعلاً قد تحول لونها إلى القرمزي. حسناً، هذه هي الألوان الإفتراضية التي تعتمدها المتصفحات. لكن قد لا يعجبك ذلك وتريد تغيير هذا النظام. أو ببساطة ربما تريد استخدام لون أو صورة غامقة لخلفية الصفحة بما سيؤدي إلى اختفاء هذه الوصلات أو حتى اختفاء نص الصفحة نفسها. فما العمل؟ <br />إليك هذه الخصائص التي تقوم بالتحكم في ألوان النصوص: <br />‎TEXT="#rrggbb"‎    تحديد لون النص الأساسي للصفحة <br />‎LINK="#rrggbb"‎    تحديد لون الوصلات التشعبية <br />‎VLINK="#rrggbb"‎    تحديد لون الوصلات التشعبية التي تمت زيارتها visited links <br />‎ALINK="#rrggbb"‎    تحديد لون الوصلة التشعبية الفعالة أي عندما يتم النقر عليها active links <br />والآن، دعنا نجمل الخصائص السابقة في عبارة واحدة. وسوف أكتب الرموز الخاصة بالألوان بنفس تلك الألوان التي تمثلها. وألفت نظرك إلى أنه لا أهمية للترتيب في كتابة هذه الخصائص داخل العبارة. <br />‎ BACKGROUND="backimag.jpg"‎<br />BGCOLOR="#ffff00"‎<br />TEXT="#000066"‎<br />LINK="#00ff00"‎<br />VLINK="#ff0000"‎<br />ALINK="#999999">‎<br />حاول أن تحللها! هل استنتجت أنني قد حددت الصورة backimag.jpg كخلفية للصفحة؟ وأنني اخترت اللون الأصفر للخلفية (في حالة عدم عرض الصورة السابقة كخلفية)؟ وان النص سيظهر باللون الأزرق الغامق؟ أما الوصلات التشعبية فلونها أخضر، والوصلات التي تمت زيارتها ستظهر باللون الأحمر. أما تلك الوصلة الفعالة فستظهر باللون الرمادي في لحظة النقر عليها بالفأرة.<br /> <br />إذا كانت هذه هي استنتاجاتك... فمبروك، لقد نجحت. وكل ما أتمناه أن تكون قد قضيت وقتاً ملوناً وزاهياً مع هذا الدرس. <br /> <br /><br /><br /><br /><br /><br /><br /><br />الدرس الثالث<br />الخطوط<br />أهلاً وسهلاً بك إلى الدرس الثالث من دروس HTML. لا زلنا نناقش معاً أساسيات تنسيق صفحات الإنترنت والتحكم بخصائصها. وسوف نتابع ذلك في هذا الدرس من خلال التعرف على الوسوم الخاصة بالخطوط.<br />سوف تلاحظ في هذا الدرس والدروس اللاحقة أن هناك أكثر من طريقة لأداء نفس العمل، أو إعطاء نفس الخصائص لصفحات الإنترنت. وبالمقابل قد يبدو لك أن بعض الوسوم والخصائص متشابهة في تأثيرها، لكن بالقليل من التدقيق والتجربة ستكتشف أن لكل وسم خصوصيته. <br /> <br />ولنبدأ <br /> <br />راجع صفحتنا البسيطة التي عملنا فيها في الدرسين السابقين. إننا لم نقم بالتعامل مع الخطوط فيها ولا بأي شكل من الأشكال. أي أننا تركناها على إعداداتها الافتراضية.<br />وبالمناسبة فإن هذه الإعدادات هي خط عادي، نوعه Times New Roman وحجمه 3 (بمقياس متصفحات الإنترنت). <br />الوسم الأول الخاص بالخطوط هو <FONT> ... </FONT><br />وهو يقوم بالتحكم بالخطوط من حيث النوع واللون والحجم. أما الخصائص التي نستخدمها مع هذا الوسم والوسوم الأخرى للخطوط فهي كالتالي: <br />Face    تقوم هذه الخاصية بتحديد نوع الخط الذي نريده، وقد نقوم بتحديد أكثر من نوع معاً. وفي هذه الحالة إذا لم يتواجد الخط المحدد أولاً على جهاز الشخص الذي يتصفح الموقع يتم إعتماد الخط الثاني ... وهكذا <br />‎<FONT FACE="Traditional Arabic, Arabic Transparent, Simplified Arabic">‎<br />... Text ...<br /><‎/FONT> <br />طبعاً لا تنس أن تتأكد من كتابة أسماء الخطوط بالصورة الصحيحة هجائياً. <br />Color    أما هذه الخاصية فتحدد لون الخط، وذلك بنفس مبادئ تحديد الألوان التي تحدثنا في الدرس السابق <br />‎<FONT COLOR="#FF0000">‎<br />... Text ...<br /><‎/FONT><br />Size    ولتحديد حجم الخط نستخدم هذه الخاصية. وفقط هناك سبعة أحجام لأي خط تستطيع المتصفحات التعرف عليها.<br />ونقوم بتحديد الحجم المطلوب بأسلوبين: أولهما المباشر. حيث يتم كتابة رقم يتراوح ما بين 1-7. أي أننا نختار الحجم الذي نريده مباشرة. <br />‎<FONT SIZE="4">‎<br />... Text ...<br /><‎/FONT><br />وإليك نماذج بأحجام الخطوط<br /> <br />خط بحجم 1<br />خط بحجم 2<br />خط بحجم 3    (الخط الافتراضي)<br />خط بحجم 4<br />خط بحجم 5<br />خط بحجم 6<br />خط بحجم 7<br /> <br /> <br />أما الأسلوب الثاني فهو النسبي: حيث تكتب الأرقام من 1 إلى 6 مرفقة إما بإشارة + أو بإشارة -. <br />‎<FONT SIZE="+4">‎<br />... Text ...<br /><‎/FONT><br />وفي هذه الطريقة فإن الأرقام 1-6 تمثل درجات التكبير (+) أو التصغير (-) للخط وذلك نسبةً إلى الحجم الافتراضي. فمثلا الرقم +4 يعني تكبير الخط أربع درجات عن الحجم الافتراضي وهو 3، أي أنه يصبح بالحجم 7. بالمقابل فأن الرقم -1 يعني تصغير الخط درجة واحدة أي يصبح بالحجم 2.  <br />ولتوضيح هذا الأسلوب، إليك هذه النماذج:<br /> <br />خط بحجم -3<br />خط بحجم -2<br />خط بحجم -1<br />خط بحجم +0   (أو -0 وهو الافتراضي)<br />خط بحجم +1<br />خط بحجم +2<br />خط بحجم +3<br />خط بحجم +4<br />خط بحجم +5<br /> <br />لاحظ أنه حتى في الأسلوب النسبي لا نستطيع الحصول على أكثر من سبعة أحجام للخطوط. حتى وإن حاولنا كتابة أرقام أكبر أو أصغر كما فعلت هنا بكتابة الحجم -3 أو +5. <br /> <br />والآن أعرف ماذا تريد أن تسأل، ستقول لقد ثبت حجم الخط على حده الأدنى عند الدرجة -2 وعلى حده الأعلى عند الدرجة +4. إذن ما الفائدة من وجود الدرجات الأخرى الأقل من -2 والأكبر من +4؟<br />حسنا وأنا أجيبك بسؤال آخر: ماذا لو قمنا بتغيير الحجم الافتراضي للخط في كل الصفحة إلى 1 بدلاً من 3؟ (وسوف نقوم بذلك فعلاً بعد قليل)، ألا نحتاج في هذه الحالة إلى الدرجات من +1 إلى +6 لتمثيل الأحجام الأكبر منه؟ وإذا قمنا بتحديد 7 كحجم إفتراضي ألا نحتاج إلى الدرجات من -1 إلى -6 لتمثيل الأحجام الأصغر منه؟ إذن نحن نحتاج فعلاً إلى هذه الدرجات لكي نغطي جميع الإحتمالات الواردة.<br />أرجو أن يكون هذا الجواب قد أقنعك :-)<br /> <br />وهذه بعض الأمثلة لتوضح لك كيفية استخدام هذا الوسم، وسوف أرفق نتيجة كل مثال بعده مباشرة. <br /> <br />‎‎<FONT FACE="arial" SIZE="6" COLOR="#FF0000">‎<br />This font is Arial, Size is 6, Color is Red<br /><‎/FONT> <br />This font is Arial, Size is 6, Color is Red <br /> <br />  <br />‎<FONT FACE="arial" SIZE="+3" COLOR="#FF0000">‎<br />This font is Arial, Size is +3, Color is Red<br /><‎/FONT> <br />This font is Arial, Size is +3, Color is Red <br /> <br /> <br />‎‎<FONT FACE="Times New Roman" SIZE="5" COLOR="#0000FF">‎<br />This font is Times New Roman, Size is 5, Color is Blue<br /><‎/FONT> <br />This font is Times New Roman, Size is 5, Color is Blue <br /> <br /> <br />‎<FONT FACE="courier" SIZE="2" COLOR="#800000">‎<br />This font is Courier, Size is 2, Color is Maroon<br /><‎/FONT> <br />This font is Courier, Size is 2, Color is Maroon <br /> <br /> <br /><FONT FACE="Arial" SIZE="5" COLOR="#00FF00"> This <‎/FONT><br /><FONT FACE="Times New Roman" SIZE="7" COLOR="#FF00FF"> is <‎/FONT><br /><FONT FACE="Arial" SIZE="2" COLOR="#FF0000"> multi <‎/FONT><br /><FONT FACE="Impact" SIZE="4" COLOR="#000000"> colors, <‎/FONT><br /><FONT FACE="Courier" SIZE="2" COLOR="#0000FF"> multi <‎/FONT><br /><FONT FACE="Times New Roman" SIZE="3" COLOR="#008080"> faces, <‎/FONT><br /><FONT FACE="Courier" SIZE="6" COLOR="#FFFF00"> and <‎/FONT><br /><FONT FACE="Arial" SIZE="5" COLOR="#808080"> multi <‎/FONT><br /><FONT FACE="Impact" SIZE="2" COLOR="#800000"> sizes <‎/FONT><br /><FONT FACE="Times New Roman" SIZE="7" COLOR="#00FFFF"> text <‎/FONT> <br />This is multi colors, multi faces, and multi sizes text <br /> <br /> <br /><FONT FACE="Impact" SIZE="6" COLOR="#000000">C <‎/FONT><br /><FONT FACE="Impact" SIZE="6" COLOR="#008080">O<‎/FONT><br /><FONT FACE="Impact" SIZE="6" COLOR="#FF0000">L<‎/FONT><br /><FONT FACE="Impact" SIZE="6" COLOR="#0000FF">O<‎/FONT><br /><FONT FACE="Impact" SIZE="6" COLOR="#800000">R<‎/FONT><br /><FONT FACE="Impact" SIZE="6" COLOR="#FF00FF">S<‎/FONT><br />C O L O R S <br /> <br /> <br />ننتقل الآن إلى الوسم الثاني من الوسوم الخاصة بالخطوط وهو <BASEFONT>.<br />وعمله هو تحديد نوع الخط وخصائصه بالنسبة للصفحة كلها . أي أنه يقوم بتعريف نوع الخط الأساسي الذي سيستخدم في الصفحة من بدايتها إلى نهايتها ويحدد لونه وحجمه.<br />هل لاحظت انه وسم مفرد ولا يحتوي على وسم للنهاية؟ بالطبع ما الحاجة إلى وسم النهاية طالما أنه يتعامل مع الصفحة ككل ومع الإعدادات الأساسية لها، وليس مع كلمة أو سطر أو فقرة بذاتها. لذلك فإن هذا الوسم يكتب عادة في أول الملف، ويفضل مباشرة بعد وسم >. أما الخصائص المستخدمة معه فهي نفس الخصائص سالفة الذكر مع <FONT> ، (نستطيع استخدام الخاصية Name معه بدلاً من Face). وبنفس الطريقة وبدون أي اختلافات. وإليك هذه الشيفرة كمثال: <br />‎<BASEFONT Name="Arial" COLOR="#FF0000" SIZE="5">‎ <br />وبدراسة هذا المثال نستنتج أنه يقوم بتعديل الخط الافتراضي للصفحة بحيث يصبح نوعه Arial وحجمه 5 ولونه أحمر. وبالتالي فإن كل النصوص المكتوبة في تلك الصفحة سيطبق عليها هذا النمط من الخط. ما لم نقم طبعا باستخدام الوسوم <Font> ... </‎Font> لتعديلها والتحكم بمظهرها كما فعلنا في الأمثلة السابقة، فهي أكثر تحديداً وأكثر مرونة من الوسم <BASEFONT> <br />وبمناسبة الحديث عن الألوان وتغيير اللون الأساسي لنص الصفحة. ألا تذكر أننا في الدرس السابق تكلمنا عن الخاصية Text التي تكتب مع الوسم > والتي استخدمناها لتحديد لون نص الصفحة... أنا لا زلت أذكر ذلك.<br />لا يوجد تعارض بين هذه الخاصية وخاصية Color في الوسم <BASEFONT> فأنت بكل بساطة تستطيع استخدام أي منهما في صفحتك. وإذا حدث واستخدمت كلاهما فإن اللون المحدد مع الوسم <BASEFONT> هو الذي سيطبقه المتصفح ويعتمده.  <br />وهنا أريد أن أذكرك بما قلته في بداية هذا الدرس: <br />يوجد دائماً أكثر من طريقة لأداء نفس العمل <br /> <br /><br /> <br />هناك وسوم خاصة تستخدم لتمييز العناوين Headings في صفحات الإنترنت وهي: <br /><Hn> ... <‎/Hn><br />وحرف n هو رقم بين 1-6 يمثل مستوى العنوان.<br /><H1> Heading 1 <‎/H1><br /><H2> Heading 2 <‎/H2><br /><H3> Heading 3 <‎/H3><br /><H4> Heading 4 <‎/H4><br /><H5> Heading 5 <‎/H5><br /><H6> Heading 6 <‎/H6><br />Heading 1 <br />Heading 2 <br />Heading 3 <br />Heading 4 <br />Heading 5 <br />Heading 6 <br /> <br /><br /> <br />ونأتي الآن إلى التنسيقات والتأثيرات التي يمكن إضافتها إلى النصوص. وفيما يلي الوسوم الخاصة بها متبوعة بمثال ونتيجته: <br /> <br />* الخط الغامق (الأسود العريض)، ونستخدم له الوسوم التالية: <br /><B> ... <‎/B><br /><STRONG> ... <‎/STRONG><br /><B> Bold Text <‎/B>   This is Bold Text <br /><STRONG> Strong Text <‎/STRONG>   This is Strong Text <br /> <br />* الخط المائل <br /><I> ... <‎/I><br /><EM> ... <‎/EM><br /><I> Italic Text <‎/I>   This is Italic Text <br /><EM> Emphasized Text <‎/EM>   This is Emphasized Text <br /> <br />* الخط المسطر <br /><U> ... <‎/U><br /><U> Undelined Text <‎/U>   This is Undelined Text <br /> <br />* الخط المرتفع <br /><SUP> ... <‎/SUP><br /><SUP> Superscript Text <‎/SUP>   This is Superscript Text <br /> <br />* الخط المنخفض <br /><SUB> ... <‎/SUB><br /><SUB> Subscript Text <‎/SUB>   This is Subscript Text <br /> <br />* خط كبير <br /><BIG> ... <‎/BIG><br /><BIG> Big Text </BIG>   This is Big Text <br /> <br />* خط صغير <br /><SMALL> ... <‎/SMALL><br /><SMALL> Small Text <‎/SMALL>   This is Small Text <br /> <br />* نص يعترضه خط <br /><STRIKE> ... <‎/STRIKE><br /><S> ... <‎/S><br /><STRIKE> Striked Text <‎/SRTIKE>   This is Striked Text <br /><S> Striked Text <‎/S>   This is Striked Text too<br /> <br />* نص الآلة الطابعة TeleType <br /><TT> ... <‎/TT><br /><TT> TeleType Text <‎/TT>   This is TeleType Text <br /><br />وهذا النص يعرف أيضاً بالنص موحَد المسافات Monospaced Text. ولتوضيح هذا المفهوم إليك المثال التالي:<br />إذا أخذنا الحرفين m,i وكتبنا كل منهما عشر مرات متتالية نلاحظ أن المساحة التي شغلها الحرف m هي أضعاف المساحة التي شغلها الحرف i <br />iiiiiiiiii<br />mmmmmmmmmm <br />أما عند استخدام الوسم <TT> ... <‎/TT> فإن المساحة التي يشغلها كلا الحرفين تصبح موحدة<br />iiiiiiiiii<br />mmmmmmmmmm<br /> <br />وهذه أمثلة تجمع بين عدة تنسيقات معاً: <br /> <br /><B><I><U><br />This is a Bold, Italic and Underlined Text<br /><‎/U> <‎/I> <‎/B> <br />This is a Bold, Italic and Underlined Text <br /> <br /><FONT COLOR="#FF0000" SIZE="+3"><U><I><br />This text is red, size +3, Italic, and Underlined <br /><‎/I> <‎/U> <‎/FONT> <br />This text is red, size +3, Italic, and Underlined <br /> <br />وقد أردت من هذه الأمثلة توضيح مسائل معينة أولها: أن بإمكاننا استخدام عدة وسوم وتنسيقات معاً في نفس الوقت ولنفس المقطع من النص. (وذلك لجميع الوسوم وليس فقط لوسوم الخطوط). وكما ذكرت سابقاً، لا أهمية لترتيب هذه الوسوم ولا أيها ورد أولاً... لكن <br />عند استخدام الوسوم المتعددة في مقطع واحد يجب مراعاة عدم التداخل بينها!... كيف؟ أنظر إلى الرسم التالي:<br /> <br /> <br /><br /> <br />فكتابة الوسوم السابقة بالطرق التالية هو خطأ: <br /><B><I><U><br />This is a Bold, Italic and Underlined Text<br /><‎/B> <‎/I> <‎/U> <br /> <br /><B><I><U><br />This is a Bold, Italic and Underlined Text<br /><‎/B> <‎/U> <‎/I> <br />أعرف أنك لم تصدقني وأنك قمت بتجربة هذه الوسوم وربما حصلت على نتيجة صحيحة. حسناً العبرة ليست في عبارة واحدة مكونة من وسمين أو ثلاثة تكتبها في ملف صغير بل في صفحة إنترنت كاملة قد تتألف من مئات أو حتى آلاف الوسوم مكتوبة في ملف خالٍ من الأخطاء المنطقية والتداخلات التي قد تسبب الإرباك للمتصفحات، وتؤدي إلى عدم عرض هذه الصفحة بالشكل المناسب والمطلوب.<br />لذلك فأهمية أن تتجنب وجود الوسوم المتداخلة في صفحتك هو بنفس الأهمية التي يجب أن توليها لكتابة هذه الوسوم بالصورة الصحيحة إملائياً. وإلا فالمتصفحات لا ترحم. وكثيرة هي المرات التي حصل فيها المصممون على صفحات منهارة بسبب نسيان حرف واحد أو إشارة مثل < أو > أو " <br />بإختصار شديد... وكقاعدة أساسية، الصفحة المصممة جيداً هي الصفحة ذات الوسوم الصحيحة وغير المتداخلة.<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />الدرس الرابع<br />الفقرات والقوائم<br /> <br />أهلاً وسهلاً بك إلى الدرس الرابع من دروس HTML. في هذا الدرس سوف نناقش الوسوم الخاصة بالفقرات بشكل خاص وترتيب الصفحات وتنسيقها بشكل عام.<br />صحيح أن استخدامك للألوان والرسومات في الصفحة يضفي عليها نوعاً من الحيوية، وأن الخطوط تعطي صفحتك رونقاً وجمالاً. لكنك إن لم تهتم بترتيب صفحتك أو تقضي بعض الوقت في تنسيق هيكلها العام وتنظيم فقراتها وقوائمها، فإنه من الصعب عليك الحصول على صفحة ويب ناجحة. فالترتيب هو الخطوة الأولى لجذب اهتمام الزائر أو القارئ لصفحتك وتسهل عليه فهم الخطوط العريضة للصفحة. <br />لقد قمت في الدرس الأول بإيضاح بعض الوسوم الخاصة بالفقرات. ولا بأس من تذكيرك بها. فالوسم <P> يقوم بإنهاء الفقرة. والوسم <BR> ينهي السطر الحالي وينقل النص إلى سطر جديد. والوسم ‎ ‎ يقوم بإضافة الفراغات، ويجب تكرار كتابته بنفس عدد الفراغات المطلوب.<br />ونتابع في هذا الدرس مع هذه الوسوم وغيرها. <br />لقد قلت إن الوسم <P> هو وسم مفرد لكنه يستخدم أيضاً كوسم مزدوج <P> ... <‎/P> وفي هذه الحالة يمكّننا من تحديد إتجاه الفقرة وإتجاه النص فيها حيث يستخدم معه الخصائص ALIGN, DIR. <br />فالخاصية ALIGN تحدد محاذاة الفقرة وهي تأخذ القيم Left, Center, Right وأوضحها بالأمثلة التالية:<br /><P Align="left"> This is a left-aligned paragraph <‎/P> <br />This is left-aligned paragraph<br /> <br /><P Align="right"> This is right-aligned paragraph</P> <br />This is a right-aligned paragraph<br /> <br /><P Align="center"> This is a centered paragraph</P><br />This is a centered paragraph<br /> <br />كذلك لتوسيط الفقرات أو الكائنات بشكل عام في الصفحة نستطيع استخدام الوسوم <CENTER> ... </CENTER> <br /><CENTER> This is a centered text </CENTER> <br />This is a centered text <br /><br /> <br />أما الخاصية DIR والتي نستخدمها أيضاً مع <P> فتقوم بتحديد إتجاه قراءة النص وتأخذ القيم <br />LTR    إتجاه النص من اليسار إلى اليمين (Left To Right) <br />RTL    إتجاه النص من اليمين إلى اليسار (Right To Left) <br />(تذكر هذه الخاصية جيداً فهي مهمة عند كتابة صفحات باللغة العربية) <br /> <br />ولتنسيق الفقرات أيضاً يوجد الوسوم<br /><BLOCKQUOTE> ... <‎/BLOCKQUOTE> أي وسوم الفقرات المقتبسة. ووظيفتها تمييز الفقرة من خلال إدراج مسافة إضافية على الهامشين الأيمن والأيسر لها. أنظر إلى الفقرة التالية التي قمت (باقتباسها) من إحدى صفحات هذا الموقع. ومن ثم وضعتها ضمن <BLOCKQUOTE> ... <‎/BLOCKQUOTE> <br />وفكرة هذه الدروس جاءت نتيجة لما لمسته خلال استخدامي لشبكة الإنترنت بشكل عام، والبحث عن المواقع العربية فيها بشكل خاص. فعندما بدأت بتعلم تصميم صفحات الإنترنت، لم يكن هناك مشكلة في الحصول على المصادر أو المواقع التعليمية التي أحتاجها ومن خلال الإنترنت نفسها. لكن المشكلة هي دائماً في الحصول على تلك المصادر بالصورة التي تتناسب واحتياجاتنا كمستخدمين عرب .... <br />والحقيقة أنك تستطيع وضع عدة وسوم معاً إذا أردت إدراج هوامش أكبر. كما في المثال التالي: <br /><BLOCKQUOTE><br /><BLOCKQUOTE><br />وفكرة هذه الدروس جاءت نتيجة لما لمسته خلال استخدامي لشبكة الإنترنت بشكل عام، والبحث عن المواقع العربية فيها بشكل خاص. فعندما بدأت بتعلم تصميم صفحات الإنترنت، لم يكن هناك مشكلة في الحصول على المصادر أو المواقع التعليمية التي أحتاجها ومن خلال الإنترنت نفسها. لكن المشكلة هي دائماً في الحصول على تلك المصادر بالصورة التي تتناسب واحتياجاتنا كمستخدمين عرب .... <br /><‎/BLOCKQUOTE><br /><‎/BLOCKQUOTE><br />وتكون النتيجة:<br />وفكرة هذه الدروس جاءت نتيجة لما لمسته خلال استخدامي لشبكة الإنترنت بشكل عام، والبحث عن المواقع العربية فيها بشكل خاص. فعندما بدأت بتعلم تصميم صفحات الإنترنت، لم يكن هناك مشكلة في الحصول على المصادر أو المواقع التعليمية التي أحتاجها ومن خلال الإنترنت نفسها. لكن المشكلة هي دائماً في الحصول على تلك المصادر بالصورة التي تتناسب واحتياجاتنا كمستخدمين عرب .... <br />وبالطبع ليس شرطاً أن تستخدم هذا الوسوم مع الفقرات المقتبسة فقط. فأنا مثلاً أضعها في بداية ونهاية كل صفحة من صفحات هذا الموقع. وبالتالي يظهر النص بعيداً قليلاً عن حاشية الصفحة فهذا أفضل من أن يكون ملاصقاً لها وأجمل. (مجرد وجهة نظر) <br /> <br />والآن تأمل هذا الشكل وحاول أن تستنتج كيف قمت بإعداده...!؟ <br />A      B      C      D<br />E      F      G      H<br />I      J      K      L<br />M      N      O      P<br />Q      R      S      T<br />ربما توصلت إلى أني استخدمت عدداً كبيراً من وسوم الفراغات ‎ ‎ ونهاية السطر <BR>. حسناً، إستنتاجك لا بأس به ولكنه ليس دقيقاً فأنا لم أستخدم أياً من هذه الوسوم هنا. بل كل ما فعلته بعد إعداد هذا الشكل هو وضعه ضمن: <br /><PRE> ... </PRE> <br />وهما اختصار لكلمة Preformated أي المنسق مسبقاً. وبالفعل فقد احتفظ هذا الشكل بالتنسيق المسبق الذي تم إعداده به. لكن تم تحويل الخط إلى خط موحد المسافات (راجع الدرس السابق) ولو لم أقم بوضعه ضمن هذه الوسوم لكانت النتيجة كالتالي:<br /> <br />A B C D E F G H I J K L M N O P Q R S T <br />لاحظ أن هذا الوسم يستخدم مع الفقرات التي لا نحتاج فيها إلى تنسيقات متعددة للخطوط أو الألوان. بل فقط مع الفقرات العادية موحدة الخط والتنسيقات.<br /> <br />القوائم<br />تحتوي لغة HTML على مجموعة من الوسوم الخاصة بتنظيم البيانات في قوائم وباستخدام عدة خيارات. وهناك نوعين من القوائم:<br />أولهما المتسلسلة Ordered Lists. واليك المثال التالي عليها <br />أسماء بعض المدن الفلسطينية<br />1.   القدس <br />2.   نابلس <br />3.   رام الله <br />4.   الخليل <br />5.   جنين <br />6.   طولكرم <br />وثانيهما القوائم غير المتسلسلة Unordered Lists وهذا مثال عليها <br />أسماء بعض الجامعات الفلسطينية <br />•   جامعة النجاح <br />•   جامعة القدس المفتوحة <br />•   جامعة بيرزيت <br />•   جامعة الخليل <br />عند التعامل مع القوائم بنوعيهما نحتاج إلى وسوم خاصة بتحديد بداية ونهاية القائمة ووسوم تحدد بنود هذه القائمة.<br />بالنسبة للقوائم المتسلسلة نستخدم الوسوم <br /><OL> ... <‎/OL> <br /><br />أما بالنسبة للقوائم غير المتسلسلة فنستخدم <br /><UL> ... <‎/UL> <br /><br />ولتعيين كل بند من بنود القائمة نستخدم الوسم <LI> وهو وسم مفرد يكتب في بداية السطر الخاص بكل بند List Item. <br />إذن عندما قمت بإنشاء القوائم السابقة استخدمت الشيفرة التالية: <br /><OL><br /><LI>القدس<br /><LI>نابلس<br /><LI>رام الله<br /><LI>الخليل<br /><LI>جنين<br /><LI>طولكرم<br /><‎/OL><br /> <br /><UL><br /><LI>جامعة النجاح<br /><LI>جامعة القدس المفتوحة<br /><LI>جامعة بيرزيت<br /><LI>جامعة الخليل<br /><‎/UL><br />والخاصية الوحيدة التي تستخدم مع هذه الوسوم هي TYPE ووظيفتها تحديد شكل الرمز الظاهر مع بنود القائمة، وعادة تستخدم مع وسوم بداية القوائم <UL> أو <OL> وبذلك نحدد رمزاً واحداً لكل القائمة. ولكن نستطيع استخدامها أيضاً مع وسم البنود <LI> لإعطاء تحكم أكبر في مظهر القائمة من خلال تحديد رمز مختلف لكل بند. <br />فعند وضعها ضمن تعريف القوائم المتسلسلة تأخذ القيم: A, a, I, i التي تغير رموز الترقيم من الأرقام العادية الإفتراضية (والتي رمزها 1) إلى ترقيم باستخدام الأحرف اللاتينية الكبيرة أو الصغيرة، أو باستخدام الأرقام الرومانية كما ترى في الجدول التالي:<br />‎<OL TYPE="A">‎    ‎<OL TYPE="a">‎    ‎<OL TYPE="I">‎    ‎<OL TYPE="i">‎ <br />A.   <br />B.   C.   D.   E.      a.   <br />b.   c.   d.   e.      I.   <br />II.   III.   IV.   V.      i.   <br />ii.   iii.   iv.   v.   <br />والحديث عن هذه الخاصية يقودني إلى الحديث عن مسألة مهمة في لغة HTML وهي مسألة الوسوم والخصائص المحددة بمتصفح معين دون غيره أي التي تعمل مع أحد المتصفحات ولا تعمل مع غيره. <br />والسبب في ذلك أن هذه الخاصية تستخدم أيضاً مع القوائم غير المتسلسلة، لكن ليس بصورة مطلقة...كيف؟ أنت ترى أن الرمز الموجود عند كل بند في القائمة هو عبارة عن نقطة سوداء يطلق عليها اسم Disc وهي المعرفة ضمناً في خاصية TYPE. لكن هناك رموز أخرى يمكن إظهارها وهي المربع square, والدائرة المفرغة circle وتعرف بالشكل التالي: <br />‎<UL TYPE="square">‎<br />‎<UL TYPE="circle">‎ <br />ولكن للأسف هذه الخاصية لا تعمل ولا يظهر تأثيرها إلا مع متصفح نيتسكيب وليس مع مايكروسوفت إكسبلورر الذي يتعامل فقط مع القيمة الإفتراضية للخاصية. (رجاءً لا يغضب مستخدمو إكسبلورر فهناك الكثير من الوسوم والخصائص التي لا يستطيع نيتسكيب عرضها أيضاً).<br />ولإتمام الحديث عن القوائم، أذكر لك أن هناك وسوماً أخرى تستخدم لإنشاء القوائم غير المتسلسلة، وبنفس الطريقة المستخدمة مع <UL>...<‎/UL> وهذه الوسوم هي: <br /><DIR> ... <‎/DIR><br /><MENU> ... <‎/MENU><br /> <br /> <br />هناك نوع خاص من القوائم يدعى قوائم الشرح أو التعريفات Definition Lists وكما يدل الإسم تستخدم عندما نريد إدراج قائمة من المصطلحات يتبع كل واحد منها شرح أو تعليق. <br />  <br />HTML <br />Hyper Text Markup Language <br />WWW <br />World Wide Web <br />FTP <br />File Transfer Protocol <br />GIF <br />Graphical Interchange Format <br />JPG, JPEG <br />Joint Photographic Experts Group <br />ونحتاج لإنشاء هذه القوائم إلى ثلاثة وسوم:<br />الأول <DL> ... <‎/DL> لتعريف بداية ونهاية القائمة.<br />والثاني <DT> ويوضع قبل كل مصطلح لتحديده، وهو وسم مفرد. <br />أما الثالث فهو <DD> وهو وسم الشرح أو التعليق وهو أيضا مفرد. ولنقم الآن بكتابة شيفرة القائمة السابقة <br />‎<DL>‎<br />‎<DT>HTML <DD>Hyper Text Markup Language‎<br />‎<DT>WWW <DD>World Wide Web‎<br />‎<DT>FTP <DD>File Transport Protocol‎<br />‎<DT>GIF <DD>Graphical Interchange Format‎<br />‎<DT>JPG, JPEG <DD>Joint Photographic Experts Group‎<br />‎<‎/DL>‎<br />وصلنا الآن إلى نهاية هذا الدرس، والذي ناقشنا فيه ترتيب الصفحات والفقرات والقوائم. أتمنى لك صفحات مرتبة دائماً. <br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /> الدرس الخامس<br />الصور والرسومات<br /><br /> <br />أهلاً وسهلاً بك في الدرس الخامس من دروس HTML. في هذا الدرس سوف أقوم بالحديث عن الصور والرسومات وما يتعلق بالتعامل معها، بالإضافة إلى التعريف بأنواع الملفات الرسومية الدارجة في الإنترنت. <br />لقد اقتصر حديثنا عن الصور حتى الآن على إضافة خلفيات للصفحات، وكان ذلك في الدرس الثاني أما إدراج الصور ضمن الصفحات نفسها فله حكاية أخرى، أبدأ بروايتها لك الآن. <br />إن الوسم الرئيسي المستخدم لتعريف صورة ما داخل الصفحة هو <IMG> وهو وسم مفرد. لكن هل يكفي هذا لإدراج صورة؟ كلا، بالطبع يجب أن نحدد الصورة التي نريدها. لذلك نضيف الخاصية له SRC لتحديد موقع واسم الصورة.<br />الصورة التالية إسمها thedome.jpg وعندما قمت بإدراجها. كانت الشيفرة الخاصة بذلك هي <br />‎<IMG SRC="thedome.jpg">‎ <br /> <br />والصيغة هذه تفترض أن الصورة موجودة في نفس الدليل الفرعي أو المجلد حيث يتواجد ملف HTML الذي أعمل عليه، وقمت باستدعاء الصورة من خلاله. لكن ماذا لو كانت الصورة في مجلد فرعي آخر؟ حسنا سوف اناقش معك حالتين لهذه المسألة. <br />الحالة الأولى أن تكون الصورة موجودة في مجلد متفرع عن المجلد الموجود به ملف HTML حسب الشكل التالي: <br /> <br /><br />نقوم في هذه الحالة بكتابة إسم هذا المجلد تتبعه إشارة / ثم اسم الصورة. <br />  <br />الحالة الثانية: أن يكون ملف HTML موجوداً في مجلد ما وتكون الصورة موجودة في مجلد آخر بنفس المستوى. أي أنهما مجلدين متجاورين وليسا متفرعين أحدهما عن الآخر. <br /> <br /><br />وفي هذه الحالة نكتب .. (نقطتين) لتوجيه المتصفح للخروج من المجلد الفرعي الحالي (حيث يوجد ملف HT‎ML) ومن ثم الدخول إلى المجلد images حيث توجد الصورة. <br /><br />وبشكل عام، مهما كانت مواقع تواجد الملفات فإن عملية تحديد مواقعها والوصول إليها لا تخرج عن نطاق هذا النمط من الشيفرة. أي كتابة النقطتين للخروج من مجلد فرعي، وكتابة اسم المجلد الذي يجب الدخول إليه. <br /> <br />إن الأبعاد الأساسية لهذه الصورة هي 200×145 بيكسل Pixel (تابع القراءة حتى نهاية هذا الدرس وأعدك أن أوضح لك ما هي وحدة البيكسل إذا كانت هذه أول مرة تتعرف فيها على هذه الوحدة) وكما تلاحظ تم إدراج الصورة مع المحافظة على هذه الأبعاد. ومع ذلك فنحن نستطيع التحكم أيضاً بها وإظهار الصورة بالحجم الذي نريده من خلال هذا الوسم. كيف؟ بإضافة الخصائص HEIGHT, WIDTH متبوعة بأرقام تمثل الإرتفاع والعرض المطلوبين. <br />‎<IMG SRC="thedome.jpg" HEIGHT="70" WIDTH="120">‎ <br /> <br /> <br />‎<IMG SRC="thedome.jpg" HEIGHT="300" WIDTH="500">‎ <br /> <br /> <br />الخاصية التالية التي تستخدم مع <IMG> هي ALT وفيها نحدد نصاً بديلاً يظهر مكان الصورة. وهذا النص يلاحظ خصوصاً عندما يكون خيار "إظهار الصور تلقائياً" غير فعال في المتصفح. كما تستطيع ملاحظته في الفترة التي تسبق تحميل الصور وخاصة في المواقع بطيئة التحميل. <br />‎<IMG SRC="thedome.jpg" ALT="The Dome Of The Rock">‎ <br /> <br />عندما نقوم بإدراج صورة ضمن فقرة فإن موقع ظهورها يتحدد بالطبع حسب ترتيب ورودها في الفقرة، مثلها مثل أي كلمة أو عبارة أخرى. ونستخدم الخاصية ALIGN لتحديد محاذاة الصورة مع النص المرافق لها أو لنقل بعبارة أخرى: تحديد موقع النص الذي يليها بالنسبة لها وهي تأخذ القيم: BOTTOM, TOP, MIDDLE, LEFT, RIGHT وأوضح لك تأثير كل قيمة كما يلي: <br />في الحالة العادية  (مثل هذه) وعندما لا نقوم بتحديد أي محاذاة فإن النص الذي يلي الصورة يظهر بمحاذاة الحافة السفلى لها. وهذه هي الحالة الإفتراضية لظهور الصور والتي تمثلها القيمة BOTTOM <br />‎<IMG SRC="image.jpg" ALIGN="BOTTOM">‎ <br />TOP<br /><br /> وعند تحديد هذه القيمة فإن السطر الأول من النص الذي يلي الصورة يقع بمحاذاة الحافة العليا لها. أما باقي النص فيمتد أسفلها. <br />‎<IMG SRC="image.jpg" ALIGN="TOP">‎ <br />MIDDLE<br /><br /> أما عند تحديد هذه القيمة فإن السطر الأول من النص يقع بمحاذاة منتصف الصورة. كذلك فإن باقي النص يمتد أسفلها. <br />‎<IMG SRC="image.jpg" ALIGN="MIDDLE">‎ <br />LEFT<br /><br />هذه القيمة تؤدي إلى محاذاة الصورة إلى أقصى اليسار. مع التفاف النص الذي يليها على الجهة اليمنى ولعدة أسطر حسب ارتفاع الصورة. <br />‎<IMG SRC="image.jpg" ALIGN="LEFT">‎<br />RIGHT<br /><br />أما هذه القيمة فتؤدي إلى محاذاة الصورة إلى أقصى اليمين. مع التفاف النص الذي يليها على الجهة اليسرى ولعدة أسطر حسب ارتفاع الصورة. <br />‎<IMG SRC="image.jpg" ALIGN="RIGHT">‎<br /> <br />والآن بعد أن قمنا بتحديد محاذاة الصورة نحتاج إلى تحديد المسافة الفاصلة بينها وبين النص الذي يجاورها. ونستخدم لذلك الخصائص التالية:<br />VSPACE: لتحديد المسافة العمودية الفاصلة بين النص والحافتين العليا والسفلى للصورة.<br />HSPACE: لتحديد المسافة الأفقية الفاصلة بين النص والحافتين اليمنى واليسرى للصورة.<br /> <br />مثال:<br />‎<IMG SRC="image.jpg" ALIGN="RIGHT" VSPACE="20" HSPACE="20">‎<br />النتيجة: هذه الشيفرة ستدرج الصورة المسماه image.jpg مع محاذاتها ليمين الصفحة وإضافة مسافة فارغة مقدارها 20 بيكسل على الجهات الأربعة. (قارن بين هذا الإطار والإطار السابق الذي وضحت فيه خاصية ALIGN مع القيمة RIGHT. ولاحظ المسافة بين الصورة والنص المرافق لها.) <br /> <br />الخاصية الأخيرة والتي تستخدم مع الوسم <IMG> هي BORDER ووظيفتها إضافة إطار حول الصور والتحكم بسُمكِه. وهذه الخاصية تستخدم بشكل خاص عند تعيين صورة ما كوصلة تشعبية. (أنظرالدرس السادس) ويتم التحكم بالسُمك من خلال إسناد رقم يمثل السُمك بالبيكسل. والقيمة الإفتراضية له هي 0 أي لا يوجد إطار حول الصورة.<br />مثلاٌ لإضافة إطار سُمكه 5 بيكسل نكتب الشيفرة التالية: <br />‎<IMG SRC="image.jpg" BORDER="5">‎<br /> <br />والآن حان الوقت لكي نناقش معاً بعض الأمور التي تتعلق بالصور والرسومات بشكل عام. <br /> <br />* هل حاولت أن تتعرف على أنواع الملفات الرسومية التي تقوم بتحميلها خلال تصفحك لمواقع الإنترنت؟<br />يزخر عالم الكمبيوتر بالعشرات من أنواع الملفات الرسومية وتنسيقات الصور. وكل منها يختلف عن غيره من عدة نواح، أذكر لك منها: الدقة، وعدد الألوان التي يستوعبها، والحجم التخزيني للملف. لكن هناك نوعين فقط من هذه الملفات يتم تداولهما حالياً في الإنترنت وهما:<br />JPG, JPEG<br />إختصار لـِ Joint Photographic Experts Group. ويدعم هذا التنسيق صوراً بعيار 24 بت (أي 16.7 مليون لون). وميزة هذا التنسيق تتمثل في إمكانية ضغط الصور بنسب مختلفة عند تخزينها وبالتالي الحصول على صور صغيرة الحجم نسبياً.(أعني هنا حجم التخزين بالكيلوبايتات وليس أبعاد الصورة). لكن بالمقابل كلما إزدادت نسبة الضغط وصغر حجم الملف كان ذلك على حساب الجودة والوضوح. <br />GIF<br />إختصار لـِ Graphical Interchange Format وأقصى عدد للألوان في هذا التنسيق هو 265 لون. ومع ذلك فإن أحجام الصور المخزنة به كبير نسبياً مقارنة بتنسيق JPG. لكن هناك مزايا رائعة ينفرد بها تنسيق GIF مما يستدعي استخدامه في صفحات الويب، أولها القدرة على تخزين صور بخلفيات شفافة Transparent Images وثانيها الصور المتحركة Animated Gifs<br />وتجد معلومات وافية ودروساً مفصلة حول هذه المواضيع ضمن دروس Paint Shop Pro. <br />والآن قد تسأل، أي من هذين التنسيقين أستخدم في صفحاتي؟! لا يوجد جواب قطعي لهذا السؤال لكن إليك هاتين المعادلتين: <br />JPG= الصور الحقيقية ذات العدد الكبير من الألوان، وذات الأبعاد الكبيرة <br />GIF= الصور قليلة الألوان وصغيرة الأبعاد مثل الأزرار. <br /> <br />* ما هي درجة إستبانة شاشتك Resolution? إذا كنت لا تعرف الجواب قم بفتح تطبيق لوحة التحكم في ويندوز 95 وإخت</div> </div> </div> <div class="moderatorbar"> <div class="smalltext modified" id="modified_164302"> </div> <div class="smalltext reportlinks"> <img src="http://olom.info/forum/Themes/BlueBird/images/ip.gif" alt="" /> سجل </div> <div class="signature" id="msg_164302_signature"><b>مصطفى المجمعي</b></div> </div> <div class="clear"></div></div> </div> <hr class="post_separator" /> </form> </div> <a id="lastPost"></a> <hr class="last_divisor" /> <div class="pagesection"> <div class="buttonlist floatright"> <ul> <li><a class="button_strip_print" href="http://olom.info/forum/index.php?PHPSESSID=90fprdgpuu8d9a5ea5lvpku4j4&action=printpage;topic=27074.0" rel="new_win nofollow"><span class="last">طباعة</span></a></li> </ul> </div> <div class="pagelinks floatleft">صفحات: [<strong>1</strong>] </div> <div class="nextlinks_bottom"><a href="http://olom.info/forum/index.php?PHPSESSID=90fprdgpuu8d9a5ea5lvpku4j4&topic=27074.0;prev_next=prev#new">« قبل</a> <a href="http://olom.info/forum/index.php?PHPSESSID=90fprdgpuu8d9a5ea5lvpku4j4&topic=27074.0;prev_next=next#new">بعد »</a></div> </div> <div class="navigate_section"> <ul> <li> <a href="http://olom.info/forum/index.php?PHPSESSID=90fprdgpuu8d9a5ea5lvpku4j4&"><span>المنتديات العلمية</span></a> » </li> <li> <a href="http://olom.info/forum/index.php?PHPSESSID=90fprdgpuu8d9a5ea5lvpku4j4&#c15"><span>منتدى التكنولوجيا وعلوم الحاسب</span></a> » </li> <li> <a href="http://olom.info/forum/index.php?PHPSESSID=90fprdgpuu8d9a5ea5lvpku4j4&board=11.0"><span>منتدى علوم الحاسب</span></a> » </li> <li class="last"> <a href="http://olom.info/forum/index.php?PHPSESSID=90fprdgpuu8d9a5ea5lvpku4j4&topic=27074.0"><span>كتاب لغة HTLM</span></a> </li> </ul> </div> <div id="moderationbuttons"></div> <div class="plainbox" id="display_jump_to"> </div> <br class="clear" /> <script type="text/javascript" src="http://olom.info/forum/Themes/default/scripts/topic.js"></script> <script type="text/javascript"><!-- // --><![CDATA[ if ('XMLHttpRequest' in window) { var oQuickModify = new QuickModify({ sScriptUrl: smf_scripturl, bShowModify: true, iTopicId: 27074, sTemplateBodyEdit: '\n\t\t\t\t\t\t\t\t<div id="quick_edit_body_container" style="width: 90%">\n\t\t\t\t\t\t\t\t\t<div id="error_box" style="padding: 4px;" class="error"><' + '/div>\n\t\t\t\t\t\t\t\t\t<textarea class="editor" name="message" rows="12" style="width: 100%; margin-bottom: 10px;" tabindex="1">%body%<' + '/textarea><br />\n\t\t\t\t\t\t\t\t\t<input type="hidden" name="a2630442a8" value="31743f49143a36e1eca065a17ccc4892" />\n\t\t\t\t\t\t\t\t\t<input type="hidden" name="topic" value="27074" />\n\t\t\t\t\t\t\t\t\t<input type="hidden" name="msg" value="%msg_id%" />\n\t\t\t\t\t\t\t\t\t<div class="righttext">\n\t\t\t\t\t\t\t\t\t\t<input type="submit" name="post" value="حفظ" tabindex="2" onclick="return oQuickModify.modifySave(\'31743f49143a36e1eca065a17ccc4892\', \'a2630442a8\');" accesskey="s" class="button_submit" />  <input type="submit" name="cancel" value="إلغاء" tabindex="3" onclick="return oQuickModify.modifyCancel();" class="button_submit" />\n\t\t\t\t\t\t\t\t\t<' + '/div>\n\t\t\t\t\t\t\t\t<' + '/div>', sTemplateSubjectEdit: '<input type="text" style="width: 90%;" name="subject" value="%subject%" size="80" maxlength="80" tabindex="4" class="input_text" />', sTemplateBodyNormal: '%body%', sTemplateSubjectNormal: '<a hr'+'ef="http://olom.info/forum/index.php?PHPSESSID=90fprdgpuu8d9a5ea5lvpku4j4&'+'?topic=27074.msg%msg_id%#msg%msg_id%" rel="nofollow">%subject%<' + '/a>', sTemplateTopSubject: 'موضوع: %subject%  (زيارة 778 مرات)', sErrorBorderStyle: '1px solid red' }); aJumpTo[aJumpTo.length] = new JumpTo({ sContainerId: "display_jump_to", sJumpToTemplate: "<label class=\"smalltext\" for=\"%select_id%\">انتقل إلى:<" + "/label> %dropdown_list%", iCurBoardId: 11, iCurBoardChildLevel: 0, sCurBoardName: "منتدى علوم الحاسب", sBoardChildLevelIndicator: "==", sBoardPrefix: "=> ", sCatSeparator: "-----------------------------", sCatPrefix: "", sGoButtonLabel: "اذهب" }); aIconLists[aIconLists.length] = new IconList({ sBackReference: "aIconLists[" + aIconLists.length + "]", sIconIdPrefix: "msg_icon_", sScriptUrl: smf_scripturl, bShowModify: true, iBoardId: 11, iTopicId: 27074, sSessionId: "31743f49143a36e1eca065a17ccc4892", sSessionVar: "a2630442a8", sLabelIconList: "ايقونة الرسالة", sBoxBackground: "transparent", sBoxBackgroundHover: "#ffffff", iBoxBorderWidthHover: 1, sBoxBorderColorHover: "#adadad" , sContainerBackground: "#ffffff", sContainerBorder: "1px solid #adadad", sItemBorder: "1px solid #ffffff", sItemBorderHover: "1px dotted gray", sItemBackground: "transparent", sItemBackgroundHover: "#e0e0f0" }); } // ]]></script> </div> </div></div> <div id="footer_section"><div class="frame"> <ul class="reset"> <li class="copyright"> <span class="smalltext" style="display: inline; visibility: visible; font-family: Verdana, Arial, sans-serif;"><a href="http://olom.info/forum/index.php?PHPSESSID=90fprdgpuu8d9a5ea5lvpku4j4&action=credits" title="Simple Machines Forum" target="_blank" class="new_win">SMF 2.0.11</a> | <a href="http://www.simplemachines.org/about/smf/license.php" title="License" target="_blank" class="new_win">SMF © 2015</a>, <a href="http://www.simplemachines.org" title="Simple Machines" target="_blank" class="new_win">Simple Machines</a> </span></li> <li class="copyright">BlueBird by <a href="http://smftricks.com">SMF Tricks</a></li> <li><a id="button_xhtml" href="http://validator.w3.org/check?uri=referer" target="_blank" class="new_win" title="XHTML 1.0 صالح!"><span>XHTML</span></a></li> <li class="last"><a id="button_wap2" href="http://olom.info/forum/index.php?PHPSESSID=90fprdgpuu8d9a5ea5lvpku4j4&wap2" class="new_win"><span>نسخة خفيفة</span></a></li> </ul> <p>تم إنشاء الصفحة في 0.186 ثانية مستخدما 22 استفسارات.</p> </div></div> </div> <center> <p> <img src="/counter/wcounter/olom/counter.cgi?W=8" width="162" height="34"> </p> <script src="http://t1.extreme-dm.com/f.js" id="eXF-olom-0" async defer></script> </center> </br> <!-- Start of StatCounter Code for Default Guide --> <script type="text/javascript"> var sc_project=529971; var sc_invisible=1; var sc_security=""; var scJsHost = (("https:" == document.location.protocol) ? "https://secure." : "http://www."); document.write("<sc"+"ript type='text/javascript' src='" + scJsHost+ "statcounter.com/counter/counter.js'></"+"script>"); </script> <noscript><div class="statcounter"><a title="site stats" href="http://statcounter.com/" target="_blank"><img class="statcounter" src="http://c.statcounter.com/529971/0//1/" alt="site stats"></a></div></noscript> <!-- End of StatCounter Code for Default Guide --> <!-- phpmyvisites --> <a href="http://www.phpmyvisites.us/" title="Free web analytics, website statistics" onclick="window.open(this.href);return(false);"><script type="text/javascript"> <!-- var a_vars = Array(); var pagename=''; var phpmyvisitesSite = 1; var phpmyvisitesURL = "http://olom.info/phpmv2/phpmyvisites.php"; //--> </script> <script language="javascript" src="http://olom.info/phpmv2/phpmyvisites.js" type="text/javascript"></script> <object><noscript><p>Free web analytics, website statistics <img src="http://olom.info/phpmv2/phpmyvisites.php" alt="Statistics" style="border:0" /> </p></noscript></object></a> <!-- /phpmyvisites --> <!-- Piwik --> <script type="text/javascript"> var _paq = _paq || []; _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function() { var u="//olom.info/stats/"; _paq.push(['setTrackerUrl', u+'piwik.php']); _paq.push(['setSiteId', 1]); var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s); })(); </script> <noscript><p><img src="//olom.info/stats/piwik.php?idsite=1" style="border:0;" alt="" /></p></noscript> <!-- End Piwik Code --> </body> </html>