PDA

توجه ! این یک نسخه آرشیو شده می باشد و در این حالت شما عکسی را مشاهده نمی کنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : آشنايي كامل با استاندارد هاي وب



TAHA
10-06-2009, 04:14 PM
وقتي نامي از استاندارد وب مي شنويم ، نا خود آگاه نام w3c (كنسرسيوم‌ شبكه جهاني وب) در ذهن جاي مي گيرد ، چون مخترع و تعيين كننده ي استاندارد هاي وب اين شرکت و موسس آن تيم برنرس لي مي باشد .

در ابتدا لازم مي دونم در مورد چندي از سوالات احتمالي ، توضيحات اجمالي ارائه كنم :

استاندارد وب چيست ؟
پس از متداول شدن صفحات وب و بالطبع مرورگرهاي مختلف ، به قوانيني خاص جهت سازماندهي نگارش و كدنويسي وب نياز شد تا همه ي مرورگرها و كدنويسان از آن پيروي كنند كه با تلاش w3c اين امر به مرحله ي اجرا رسيد . در طي چندين سال قوانيني با سطوح مختلف ( انواع سهل يا سخت گير و نسخه هاي مختلف) و براي انواع مايحتاج يك صفحه وب (HTML و CSS و XML و اسكريپت ها و ...) وضع گرديد تا به عنوان يك استاندارد يكتا در سراسر شبكه جهاني وب مورد استفاده قرار گيرد . در حقيقت استاندارد وب نحوه ي نگارش قانوني كد سورس يك سند وب مي باشد .

مزاياي استاندارد سازي چيست؟
از آنجائي كه يك صفحه ي وب استاندارد از قوانين يكپارچه تبعيت مي كند ، استاندارد سازي آن باعث مرور بهينه توسط انواع مرورگر ها و سيستم عامل ها شده و سرعت دسترسي و تعداد بازديدكنندگان وب ساييتتان را افزايش مي دهد ؛ دستوراتي چون اسكريپت هاي Javascript به طور مطلوبي اجرا شده و تبديل سند استاندارد وب به ديگر فرمت ها بسيار ساده تر و مطلوب تر خواهد بود.
از ديگر مزيت هاي استاندارد بودن صفحه وب مي توان به فهرست شدن مطلوب صفحات وب شما توسط موتورهاي جستجوگر نام برد . گذشته از همه ي اينها استاندارد بودن صفحات وب شما باعث اعتبار بخشيدن به سايت خودتان خواهد بود .

زبان نشانه گذاري چيست‌؟
زبان هاي نشانه گذار در حقيقت زبان برنامه نويسي نيستند ، اما با استفاده از تگ هائي كه اسامي با معني دارند و حاوي اطلاعات خاص مي باشند ، در يك مجموعه ي واحد گرد هم مي آيند . منظور از نشانه ، همان تگ (برچسب) مي باشد ؛ مانند <p> در HTML .

چگونه صفحه وب خود را استاندارد كنيم؟
استاندارد يك صفحه وب شامل استاندارد بودن زبان هاي نشانه گذاري آن ، شيوه نامه (CSS) ، فيد ها (Atom و RSS) و فاكتور هاي ديگر (RDF و ...) مي باشد . در صورتي كه تمامي فاكتور ها روي اصول باشند ، مي گوئيم صفحه وب ما "استاندارد" است .

DOCTYPE چيست ؟
اعلان نوع سند و نسخه ي آن مي باشد . جهت مطابقت با نحوه ي نگارش صحيح سند مربوطه (استاندارد بودن) به اعلان آن صفحه رجوع مي شود ؛ همچنين مرورگرها با توجه به اعلان سند ، صفحات را مرور كرده و نمايش مي دهند .
اعلان يك سند وب معمولا" در اولين خط (بالاترين قسمت سورس) قرار مي گيرد .

DTD چيست ؟
DTD مخفف Document Type Declaration و نحوه ي نگارش يك سند است . سندي كه شامل تگ ها ، ويژگي هاي آن ، توضيحات و محتويات مي باشد .

XML چيست ؟
XML مخفف eXtensible Markup Language و يكي از زبان هاي نشانه گذاري قوي و مادر (پايه) بوده كه خيلي از زبانهاي نشانه با اقتباس از آن شكل گرفته اند . در XML تمام تگ ها و ويژگي هاشان توسط برنامه نويس ايجاد ، نامگذاري و طبقه بندي مي شود.

1 - زبان هاي نشانه گذاري :
HTML مخفف HyperText Markup Language كه همان زبان نشانه گذار پايه صفحات وب مي باشد :


<img src="happy.gif">

XHTML مخفف Extensible HyperText Markup Language كه HTML بسط يافته مي باشد و از قوانين XML پيروي مي كند :



<img src="happy.gif" alt="Happy face" />

MathML مخفف Mathematical Markup Language كه زير شاخه اي از XML بوده و جهت توصيف نماد هاي رياضيات مورد استفاده قرار مي گيرد :



x={-b +- sqrt{b sup 2 - 4ac}} over 2a

SVG مخفف Scalable Vector Graphics كه گرافیک برداری مقیاس‌پذیر و مبتني بر XML مي باشد:



<line x1="70" y1="50" x2="300" y2="400" style="stroke: red" />


SMIL مخفف Synchronized Multimedia Integration Language كه يك زبان نشانه مشتق شده از XML بوده و جهت تنظيم ، صفحه آرايى و نمايش چند رسانه اي كاربرد دارد :



<root-layout background-color="black" height=" 315" width=" 325"/>

تشريح قوانين هر يك از اسناد فوق در اين مقاله نمي گنجند ، همچنين همه ي موارد بالا فراگير نيستند ؛ بنابراين در ادامه به نحوه ي تعريف و توضيح اجمالي انواع اسناد (Doctype) متداول و نحوه ي صحيح اعلان آنها مي پردازيم :

انواع HTML : بسته به نوع استاندارد شامل 3 نوع Strict ، Transitional و Frameset مي باشد . قوانين نگارش HTML نسبت به XHTML سخت گير نيست:

HTML 2.0 و HTML 3.2 : نسخه 2.0 HTML ديگر منسوخ شده ! و نسخه ي 3.2 از نسخ HTML مي باشد كه جزو پايه ي HTML بوده و توسط مرور گرهاي جديد به خوبي حمايت نمي شود . بهتر است از HTML نسخه ي 3.2 جهت نمايش جداول ساده استفاده كنيد .
اعلان HTML 3.2 به صورت زير مي باشد :



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">

HTML 4.01 Transitional : اين نسخه از HTML براي اغلب مرورگرها مناسب مي باشد ؛ اعلان اين نسخه به مرورگرها اعلام مي كند كه شما از HTML به روز شده استفاده مي كنيد . نوشتن اسناد به اين سبك بسيار ساده و متداول است و بهتر است اسناد نسخه هاي قديمي از اين نسخه پيروي كنند .
اعلان HTML 4.01 Transitional به صورت زير مي باشد :



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

HTML 4.01 Strict : اين سبك از نظر اجرائي سخت گيرتر از نسخه ي پيشين بوده و در آن تگ هاي اضافي حذف شده است .
اعلان HTML 4.01 Strict به صورت زير مي باشد :



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

HTML 4.01 Frameset : اين نوع HTML مخصوص اسنادي است كه در آن از تگ Frameset استفاده شده است .
اعلان HTML 4.01 Frameset به صورت زير مي باشد :



<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">

HTML 5.0 : اين نوع HTML توسط مرورگرهاي معدودي پشتيباني شده و از آنجائي كه اهداف خاصي را دنبال مي كند به هيچ وجه متداول نمي باشد .
اعلان HTML 5.0 به صورت زير مي باشد :

<!DOCTYPE html>



انواع XHTML : سبك XHTML گونه ي بازسازي شده ي 4.01 HTML و آميخته با XML بوده و همانند HTML شامل 3 نوع Strict ، Transitional و Frameset مي باشد . XHTML نسبت به HTML قابليت بيشتري در پويائي صفحات وب دارد ؛ اما قوانين آن به مراتب سخت تر از انواع HTML مي باشد.

از آنجائي كه XHTML مشتقي از XML بوده ، بنابراين درج اعلان XML نيز در بالاي اعلان XHTML صفحه ضروري است :



<?xml version="1.0" encoding="UTF-8"?>
در XHTML همه ي تگ ها (دستورات يا برچسب ها) مي بايست بسته شوند (</ br>) ، ويژگي هاي تگ ها حتما" درون كوتيشن باشند ("%width="25) و تمام تگ ها به حروف كوچك نوشته شوند (<font>) . چنانچه صفحات وب شما دايناميك (برنامه نويسي شده يا پويا) مي باشد ، شايسته است كه از XHTML استفاده كنيد .

XHTML 1.0 Transitional : اين نوع XHTML همانند همتاي HTML خود بوده ؛ با اين تفاوت كه از خواص مربوط به XHTML ارث مي برد.
اعلان XHTML 1.0 Transitional به صورت زير مي باشد :



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

XHTML 1.0 Strict : اين نوع XHTML همانند نسخه ي قبلي بوده ، اما با سختگيري بيشتري اعمال مي شود .
اعلان XHTML 1.0 Strict به صورت زير مي باشد :



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

XHTML 1.0 Frameset : اين نوع مخصوص اسنادي است كه Frameset در آن به كار برده شده و از قوانين XHTML پيروي مي كند.
اعلان XHTML 1.0 Frameset به صورت زير مي باشد :



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

XHTML 1.1 : نسخه اي جديدتر از نسخه ي قبلي مي باشد كه بسيار شبيه XHTML 1.0 Strict است . چنانچه اين نوع نگارش به خوبي پياده شود نقش زيادي در ارائه توسط موتورهاي جستجو و دسته بندي محتويات متني صفحه وب دارد .
اعلان XHTML 1.1 به صورت زير مي باشد :



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

XHTML 2.0 : جديد ترين نسخه از XHTML مي باشد كه هنوز مرسوم نشده و استفاده از آن توصيه نمي گردد .
اعلان XHTML 2.0 به صورت زير مي باشد :



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 2.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml2.dtd">

ديگر نسخ HTML و XHTML خيلي متداول نيستند ، بنابراين از تشريح آنها صرفنظر مي كنم.

2 - شيوه نامه :
CSS مخفف Cascading Style Sheets بوده كه در 3 نوع Embede ، Inline و Exernal مي باشد و جهت چيدمان بهينه و بهبود شمائل اجزاء نمايشي صفحه وب به كار مي رود :






.p1 {
border: 3px #ffd324 double;
}
انواع CSS : نسخ CSS محدود به 1.0 و 2.0 و 2.1 و 3.0 بوده و متداول ترين آن نسخه 3.0 مي باشد و همانطور كه گفته شد از لحاظ نگارشي به 3 دسته تقسيم مي شود :

الف) CSS ميان تگ ها (Inline) : اين نوع با انتساب ويژگي ها درون تگ ها ميسر است :



<span style="float:right;">

ب) CSS داخلي (Embeded) : اين نوع از CSS بين <style> و بين <head> سند وب قرار مي گيرد :






<style type="text/css" rel="stylesheet">
.p1 {
border: 3px #ffd324 double;
}
</style>

ج) CSS خارجي (External) : اين نوع به صورت فايلي با پسوند css درون <head> به سند وب پيوست مي شود :



<link rel="stylesheet" type="text/css" href="style.css" />
بديهي است جهت حفظ استاندارد سند خود تمام انواع CSS مذكور مي بايست روي اصول نوشته شده باشند .
جهت پيگيري وضعيت CSS صفحات وب خود ، مي توانيد به آدرس [ جهت مشاهده لينك عضو شويد ! (http://forum.farsweb.ir/member.php?action=register) ] مراجعه نمائيد .

3 - فيد ها:
RSS و Atom نام 2 فرمت كه خروجي چكيده محتويات وب به همراه تگ هاي حاوي اطلاعات و بر مبناي XML مي باشد :



<pubDate>Mon, 26 Nov 2007 07:32:38 +0330</pubDate>

طريقه اعلان اين 2 خروجي به ترتيب شبيه فرم زير مي باشند كه مي بايست درون تگ <head> به كار برده شوند :






<link rel="alternate" type="application/rss+xml" title="RSS Feeds" href="http://forum.farsweb.ir/syndication.php" />

<link rel="alternate" type="application/atom+xml" title="Atom Feeds" href="http://forum.farsweb.ir/syndication.php?type=atom1.0" />

4 - فاكتورهاي ديگر :
RDF مخفف Resource Description Framework كه بر مبناي XML بوده و جهت توصیف منابع اینترنتی (نظیر صفحات وب و پیام‌های ای‌میل) و نیز چگونگی ارتباط این منابع با یکدیگر كاربرد دارد:



<rdf:Description about="http://farsweb.ir/thisarticle">

وضعيت پيوندها : چنانچه يك پيوند (لينك) در سند وب نا معتبر و مرجع آن (href) اشتباه يا گسيخته باشد و يا اينكه مرجع برخي از آنها تكراري باشد ، استاندارد وب شما زير سوال مي رود .

به عنوان مربي طراحي وب به شما توصيه مي كنم زماني كه وب خود را با استاندارد ها هماهنگ نموديد خيلي خوشحال نباشيد ! چون فقط قوانين وب رو رعايت كرديد ؛ در صورتي كه وب شما استاندارد نيست ، مرتكب خلاف شده و تحت تعقيب ما قرار خواهيد گرفت !


تا كنون توضيحاتي كه مطرح شد مربوط به انواع فاكتورهاي مشمول استاندارد وب بوده و در بخش زبان هاي نشانه گذاري ، فقط نوع زبان نشانه گذاري رو اعلان كرديم ؛ با اجازه ي دوستان اين مطلب رو قفل مي كنم تا در آينده به نكات ريز گرامري زبان هاي نشانه بپردازيم .