استفاده از CSS در برنامه های وب
• استفاده از CSS . از تکنولوژی CSS)Cascading style sheet) ، بمنظور کنترل شکل ظاهری عناصر موجود بر روی يک فرم وب استفاده می گردد . از امکانات CSS ، می توان در جهت تنظيم رنگ ، اندازه ، فونت و رفتار عناصر HTML موجود بر روی يک صفحه وب استفاده نمود .
• استفاده از XSLT . از تکنولوژی XSLT)Extensible Stylesheet Language Transformation ) ، بمنظور تبديل اطلاعات يک فايل XML به خروجی HTML و استقرار اطلاعات فوق بر روی يک فرم وب ، استفاده می گردد . XSLT ، داده مورد نياز را از فايل XML دريافت و پس از تبديل آنان به عناصر HTML ، سبک های ( Styles ) مشخص شده را در رابطه با هر يک از عناصر بکار می گيرد .
در اين مقاله قصد داريم به بررسی نحوه استفاده از CSS ، بمنظور تعريف فرمت خروجی برنامه های وب پرداخته و در مقاله ای جداگانه با نحوه استفاده از XSLT ، آشنا شويم .
CSS ، مسئوليت جمع آوری و سازماندهی تمامی اطلاعات مرتبط با فرمت بکارگرفته شده در ارتباط با عناصر HTML موجود بر روی يک فرم وب را برعهده دارد . با توجه به ذخيره سازی اطلاعات فوق در يک مکان ، مديريت و اعمال سياست های جديد در رابطه با شکل ظاهری يک برنامه وب ، بسادگی انجام خواهد شد . ويژوال استوديو دات نت ، ابزارهای لازم بمنظور ايجاد و ويرايش Style را ارائه نموده است. در زمان ايجاد يک برنامه وب با استفاده از ويژوال استوديو دات نت ، يک Style sheet پيش فرض نيز ايجاد می گردد .( بعنوان بخشی از يک پروژه جديد برنامه وب ، ) . لازم است به اين نکته اشاره گردد که فقط برای پروژه های ويژوال بيسک دات نت ، بصورت اتوماتيک يک Style sheet پيش فرض ، ايجاد می گردد. برای پروژه های ويژوال سی شارپ ، می بايست يک style sheet ، ايجاد نمود.
بمنظور اعمال فرمت دلخواه در رابطه با خروجی يک برنامه وب ، می توان در سه سطح متفاوت اين کار راا انجام داد :
• Global . سبک های تعريف شده دريک فايل جداگانه ذخيره و تمامی صفحات می توانند از آن استفاده نمايند .
• Page . سبک های موردنظر در بخش Head يک صفحه تعريف و تمامی عناصر موجود بر روی صفحه قادر به استفاده از آنان خواهند بود.
• Inline . سبک های مورد نظربعنوان خصلت يک عنصر HTML تعريف و صرفا" همان عنصر قادربه استفاده از آنان خواهد بود .
اولويت هر يک از سطوح فوق ، مشابه تعريف يک متغير و محدوده ( Scoping ) استفاده از آن می باشد. سبک های تعريف شده Inline دارای اولويت بيشتر نسبت به Page بوده و سبک های Page دارای اولويت بيشتری نسبت به Global می باشند . مثلا" در صورتيکه با استفاده از هر يک از روش های فوق ، سبک خاصی بمنظورنحوه نمايش يک پاراگراف ، تعريف شده باشد ، سبک تعريف شده inline دارای اولويت بيشتری خواهد بود.با توجه به اولويت مجموعه قوانين تعريف شده مربوط به سبک نمايش ، از Style Sheet ها ، بعنوان Cascading نيز ياد می گردد . کد زير ، نحوه استفاده از سه روش فوق را بمنظور تعريف Style ، نشان می دهد .
Style types definition |
<HTML> |
Test.css file |
<!-- (1) From Styles.css sheet referenced in HEAD element . --> |
در مثال فوق ، نحوه نسبت دهی خصلت Style به يک عنصر و در سه سطح متفاوت نشان داده شده است . برای خصلت font-size ، در سه سطح متفاوت ، style تعريف شده است .در موارديکه خصلت فوق ، بصورت Inline بهمراه يک عنصر HTML ، استفاده شده است ، تمامی تعاريف موجود ( در سطح Page و يا بصورت Reference ) ناديده گرفته می شود و اولويت با سبک تعريف شده بصورت Inline ، خواهد بود . تعريف انجام شده در رابطه با اندازه فونت در فايل Test.css ، عملا" در صفحه فوق ، استفاده نخواهد شد ، چراکه در صفحه وب نيز برای خصلت فوق و در سطح Page ، سبک لازم تعريف و دارای اولويت بيشتری نسبت به سبک تعريف شده در فايل Test.css ، می باشد . خصلت های text-align , font-family و font-style صرفا" يک مرتبه تعريف شده اند، بنابراين هر يک از آنان دارای تاثير خاص خود می باشند .
تعريف و ذخيره سازی Style در يک فايل Style sheet ( فايلی با انشعاب css ) دارای مزايای عمده ای نسبت به تعريف و استفاده از آنان بصورت محلی در هر يک از فرم های وب و يا استفاده از آنان بصورت Inline بهمراه عناصر HTML ، است :
• پشتيبانی و نگهداری مجموعه قوانين تعريف شده ، صرفا" از طريق يک محل انجام خواهد شد . بنابراين ، تغييرات مورد نياز صرفا" از يک نقطه اعمال و تمامی برنامه متاثر از آن می گردد.
• امکان استفاده از چندين style جداگانه که هريک مجموعه قوانين خاصی را تعريف می نمايند ، فراهم می گردد . در چنين مواردی ، می توان با توجه به شرايط و اهداف برنامه از يکی از سبک های تعريف شده بصورت پويا ، استفاده نمود .مثلا" می توان با استفاده از سبک های تعريف شده ، فرمت خروجی مورد نظر را در ارتباط با يک دستگاه خاص ( نمايشگر، چاپگر) ، ايجاد نمود. بعنوان نمونه ، يک برنامه می تواند سه نوع سبک شامل : استاندارد ، Enlarged type و Printer friendly را تعريف نمايد که يکی از آنان با توجه به خواسته کاربر ، انتخاب و بکار گرفته شود.
استفاده از Style Sheet در فرم های وب
Using Global style |
<HEAD> |
تغيير Style
• فعال نمودن Style Sheet در ويژوال استوديو دات نت . پس از فعال نمودن Style sheet ، ويژوال استوديو دات نت ، تعاريف مرتبط با Style را در پنجره Document نمايش و يک Outline از Style sheet را در پنجره Tool ، نمايش خواهد داد.
Style مورد نظر بمنظور اعمال تغييرات را از طريق پنجره Tool ، انتخاب می نمائيم . در ادامه ، ويژوال استوديو تعاريف مرتبط با Style را در پنجره Document نشان می دهد
• بر روی Style definition ، کليک راست نموده (يا کليک راست بر روی Style از طريق پنجره Tool ) و از طريق منوی مربوطه گزينه Build Style را انتخاب می نمائيم .ويژوال استوديو دات نت ، ويزارد Style Builder را فعال می نمايد .
• با استفاده از Style Builder می توان فرمت دلخواه را در ارتباط با يک Style تعريف نمود .
افزودن Style
• فعال نمودن Style Sheet ، کليک راست بر روی پنجره Style sheet و يا Tool و انتخاب Add Rule از طريق منوی pop up . ويژوال استوديو دات نت در ادامه ويزارد Add Style Rule را فعال می نمايد.
• انتخاب نوع Style موردنظر که قصد ايجاد آن وجود دارد . در اين رابطه می توان اقدام به ايجاد Style در رابطه با عناصر HTML ، کلاس ها و يا عناصری با ID خاص ، نمود. نام آيتم مورد نظر را تايپ نموده و در ادامه با انتخاب گزينه "<" ( افزودن )، آيتم انتخابی به مجموعه قوانين ، اضافه گردد .
• مراحل فوق ، برای هر يک از آيتم هائی که می خواهيم style در رابطه با آنان بکارگرفته شود ، تکرار می گردد.
استفاده از Style بهمراه کلاس ها
style class |
.emphasis |
Style class |
<P> This paragraph is test <Span Class="emphasis"> some text</span></p> |
ايجاد Style برای عناصر خاص
Style by element ID |
#Inserted |
Style های تعريف شده در ويژوال استوديو ، اغلب بصورت صحيح در بخش form designer نشان داده نمی شوند . در صورتيکه خروجی مورد نظر در ارتباط با يک فرمت خاص مشاهده نمی گردد، می توان عمليات زير را دنبال نمود:
• اطميان از ذخيره سازی صحيح Style sheet تعريف شده
• فرم وب را در حالت HTML view و Design view مشاهده و بين آنان سوئيچ نمائيد .
• برروی فرم وب کليک سمت راست نموده و گزينه View In Browser را بمنظور نمايش فرم وب در مرورگر ، انتخاب نمائيد.
ايجاد Style تودرتو
Nested Style |
UL LI { |
بمنظور ايجاد Style های تودرتو ، می توان با استفاده از جعبه محاوره ای Add Style Rule ، چندين آيتم را به ساختار سلسله مراتبی Style rule اضافه نمود.
تغيير Style Sheet در زمان اجراء
Two style sheets for one web form |
<LINK REL="stylesheet" TYPE="text/css" HREF="styles.css" media="screen" > |
Changing style sheets at run time |
<HTML> |