یادگیری اصول کدنویسی کار بسیار پیچیده ای نیست اما آشنایی و تسلط بر این قوانین و رعایت اصول استاندارد و صحیح در کدنویسی نیاز به تجربه و کار فراوان دارد . در این مجموعه به بررسی ده اشتباه بزرگ در نوشتن کدهای HTML میپردازیم که رعایت آنها می تواند در استاندارد سازی کدهای HTML شما تاثیر بسیاری داشته باشد . شاید بتوان گفت تفاوت یک طراح وب سایت حرفه ای و آماتور در رعایت همین اصول و قوانین است که در زیر به ده مورد از آنها اشاره میشود .
قرار دادن تگهای Block در بین تگ های Inline
قبلا در مورد تگهای Inline و block مطلبی در این وبلاگ با عنوان آشنایی با عناصر Inline , Block منتشر شده است . عناصر HTML به دو گروه inline و block تقسیم بندی می شوند . هر تگ به صورت پیش فرض دارای خصوصیت inline و یا block است . عناصر block تگهایی مانند div , p و مواردی دیگر را شامل میشند که بیشتر در ایجاد ساختار صفحات مورد استفاده قرار میگیرند . عناصر Inline با توجه به نوع و خصوصیت شان باید در درون عناصر block قرار بگیرند تا بتوانند با استفاده از این نوع از تگها در جریان صفحه قرار بگیرند .
استفاده از عناصر block در بین تگهای inline کار اشتباهیست که هرگز نباید انجام دهید . اما عناصر inline به راحتی درون عناصر block قرار خواهند گرفت .
<a href="http://www.webtarget.ir" > <h1>آموزش طراحی وب سایت</h1> </a> <h1><a href="http://www.webtarget.ir" >آموزش طراحی وب سایت</a></h1>
اضافه نکردن خصوصیت alt به تصاویر
استفاده از خصوصیت alt برای تصاویر یک قانون است . برای استاندارد بودن کدهای HTML خود حتما این نکته را رعایت کنید .استفاده از alt برای تصاویر به بازدیدکنندگان صفحات وب سایت شما و همچنین موتورهای جستجو کمک میکند تا موضوع تصویر منتشر شده در وب سایت شما را تشخیص دهند . این نکته زمانی پر رنگ تر و مهم تر میشود که مخاطبان شما از سرعت اینترنت پایین و یا مرورگرهای متنی ( مانند موتورهای جستجو ) استفاده میکنند و یا به هر دلیلی این تصویر در مرورگر بازدیدکننده وب سایت شما نمایش داده نشده است . از این خصوصیت حتی در هنگامی که توضیحی برای تصویر خود ندارید نیز استفاده نمائید و مقدار آن را خالی بگزارید . میتوانید در مورد اهمیت این خصوصیت برای تصاویر مطلب بهینه سازی تصاویر – آموزش بهینه سازی سایت – #۷ را نیز مطالعه نمائید .
استفاه نکردن از خصوصیت alt برای تصاویر یک اشتباه بزرگ است .
.
<img src="logo.png" /> <img src="logo.png" alt="webtarget.ir logo" /> <img src="logo.png" alt=""/>
استفاده نکردن از لیست ها – ul , ol – در جای لازم
تگهای ul,ol,li برای لیست کردن مطالب ساخته شده اند و کار با آنها بسیار ساده و راحت است و توانایی های بسیاری را برای کنترل لیست به وسیله css ایجاد خواهد نمود . استفاده از تگهای p , br و هر نوع دیگر از کدهای HTML به غیر از تگهای تعریف شده لیست ها ، برای شکل دهی یک لیست کار اشتباهیست که هرگز نباید انجام شود .
<p> طراحی وب سایت <br/> بهینه سازی وب سایت <br/> آموزش طراحی سایت </br> </p>
<ul> <li>طراحی وب سایت </li> <li>بهینه سازی وب سایت </li> <li>آموزش طراحی سایت </li> </ul>
استفاده از تگهای b,I,strong,em برای bold و italic کردن متن بدون در نظر گرفتن موتورهای جستجو
تگهای b و i میتوانند یک متن و یا کلمه را به حالت bold و Italic تغییر دهند . شاید با وجود CSS و توانائیهای فوق العاده در کنترل متن ها به ذهن شما برسد که از این ابزار برای راحتی کار خود استفاده نمائید . توانائیهای font-weight و font-style میتوانند جایگزین خوبی برای b و i باشند اما مشکلاتی را نیز خواهد داشت . در مواردی مخاطبان شما از مرورگرهای متنی بدون استفاده از style ها استفاده خواهند کرد که در اینصورت تفاوتی مابین کلمات bold و italic شده توسط CSS با سایر کلمات نخواهند دید و این مشکل باعث کاهش خوانایی مطالب شما می شود و کلمات با درجه اهمیت بیشتر مورد توجه مخاطب قرار نخواهد گرفت .
اگر شما به بهینه سازی وب سایت خود برای موتورهای جستجو اهمیت می دهید بهتر است از تگهای strong و em به صورت مستقیم در کد HTML به جای تگهای b و i و همچنین style ها استفاده نمائید . به این نکته بسیار مهم توجه داشته باشید که تگ های b و i تگهای نمایشی هستند و تگهای strong و em تگهای مفهومی و نمایشی هستند .
مفهوم این جمله این خواهد بود که متن ها به وسیله b و i فقط یک تغییر حالت ظاهری پیدا کرده اند و به همین دلیل مورد توجه موتورهای جستجو قرار نخواهند گرفت . اما با استفاده از تگهای strong و em شما به همراه تغییرات ظاهری یک شخصیت نیز به متن خود خواهید بخشید و اعلام خواهید کر که این متن در داخل این نوع از تگها از اهمیت بیشتری برخوردار خواهد بود .
بنابراین سعی کنید از این نوع از تگها در جای مناسب خود استفاده نمائید .از b و i در زمانی که نیازی به پر اهمیت کردن متن داخل این تگها نیست و فقط می خواهید شکل ظاهری را تغییر دهید و از strong و em در مواردی که علاوه بر شکل ظاهری می خواهید درجه اهمیت متن داخل آن را نیز نسبت به سایر کلمات افزایش دهید استفاده نمائید .
<b>webtarget.ir</b> <i>webtarget.ir</i> <span style="font-weight:bold"> webtarget.ir </span> <span style="font-style:italic"> webtarget.ir </span> <strong> webtarget.ir </strong> <em> webtarget.ir </em>
استفاده بیش از حد از تگ br
تگ br برای ایجاد فاصله و شکست تنها یک خط در متن مورد استفاده قرار می گیرد . استفاده از تگ br برای ایجاد فاصله هایی بیشتر از یک خط در بین خطوط و یا عناصر دیگر اشتباه است . برای ایجاد فاصله بیشتر از یک خط در بین خطوط می توانید به راحتی از تگهای p و یا خصویت padding و margin و حتی line-height استفاده نمائید .
<p> Webtarget.ir <br/><br/> طراحی هدفمند وب سایت </p>
<p>webtarget.ir</p> <p>طراحی هدفمند وب سایت </p>
استفاده از تگهای s , strike برای نمایش متن های حذف شده
در نسخه های قدیمی تری از HTML از این دو نوع تگ برای نشان دادن کلمات حذف شده ( Strikethrough ) – با ایجاد یک خط بر روی آنها – استفاده می شده است . این نوع از تگ ها با ورود نسخه های جدیدی از HTML دگرگون شده اند و تگهای strike و s که قبلا برای این منظور استفاده می شده اند دیگر کاربردی نخواهند داشت و استفاده از آنها غیر استاندارد خواهد بود .
در نسخه های جدید از تگهای del – برای نشان دادن متن حذف شده – و از تگ ins – برای نشان دادن متن وارد شده به جای متن حذف شده – به همراه هم استفاده می شود .
بنابراین دچار اشتباه نشوید و از strike و s استفاده نکنید .
<s>کلمه حذف شده</s> <stricke> کلمه حذف شده</stricke>
<del>کلمه حذف شده</del><ins>کلمه جایگزین شده</ins>
استفاده از inline style
هر چند که از style ها می توان به سه روش متفاوت استفاده نمود و یکی از این سه روش استفاده از style های inline در داخل هر تگ است . اما توصیه میشود که از inline style استفاده کمتری نمائید . استفاده از style های inline یک کار غیر استاندارد نیست اما دارای مشکلات و معایبی است که میتواند ما را برای استفاده از این نوع از style منصرف کند .
- ویرایش این نوع از style با توجه به خطی بودن آنها بسیار مشکل است و با افزایش تعداد سندهای HTML گاهی به کار غیر ممکنی تبدیل می شود .
- این نوع از style حجم صفحات را به شدت افزایش می دهد و این نکته ای بسیار منفی است .
- کدها را به هم ریخته و ناخوانا خواهند کرد و ویرایش کد ها را – از نظر خوانایی – بسیار سخت خواهد نمود .
- گاهی کدهای CSS خارجی را دچار مشکل می کنند – کدهای inline بر کدهای CSS خارجی تقدم دارند –
با همه این مشکلات در موارد بسیار خاصی استفاده از این تگها می تواند مشکلات شما را برطرف نماید .
اما به صورت عمومی استفاده از inline style توصیه نمی شود .
<h2 style="color:red;">webtarget.ir</h2>
اضافه و حذف کردن border در تگ HTML
Border ها یکی دیگر از خصوصیات تعدادی از عناصر HTML هستند که شما می توانید با استفاده از این خصوصیت به صورت مستقیم در تعدادی از تگهای HTML آنها را حذف ، اضافه و ویرایش نمائید .
در استاندارد های امروزی استفاده از این نوع خصوصیت به صورت مستقیم در تگهای HTML توصیه نمی شود و بهتر است به جای استفاده از این خصوصیت در تگهای HTML چشم پوشی نمائید و تغییرات مورد نظر خود را با استفاده از خصوصیت border در CSS انجام دهید . شما با استفاده از CSS توانایی بیشتری در کنترل این خصوصیت خواهید داشت .
<img src="logo.png" border="0" alt="" />
<img src="logo.png" alt="" /> Img { border:none; }
استفاده نکردن از تگهای Heading
حتما از اهمیت تگ های heading – h1,h2,h3,h4,h5,h6 – با خبر هستید . قبلا مطالبی در مورد اهمیت این تگها در چینش صفحات و همچنین اهمیت آنها برای موتورهای جستجو منتشر شده است .
استفاده مناسب از عنوان ها – آموزش بهینه سازی سایت – #۸
اهمیت تگ های h1,h2,h3,h4,h5,h6 در چینش صفحات وب سایت
از این تگها برای مشخص نمودن سر فصل ها و تیتر ها برای مطالب منتشر شده در وب سایت با توجه به درجه اهمیت آنها استفاده می شود .
استفاده از انواع تگهای دیگر و استفاده از CSS برای تغییر ظاهری عناصری غیر از تگهای heading ، برای ایجاد سرفصل اشتباه بزرگی خواهد بود . سر فصل هایی که با تگهایی غیر از تگهای Heading ایجاد شده اند در مرورگرهای متنی قابل تشخیص نخواهند بود و همچنین از نظر موتورهای جستجو اهمیتی نخواهند داشت .
<p><strong>یک متن برای سر فصل</strong></p>
<h3>یک متن برای سر فصل</h3>
استفاده از تگهای blink و marquee
جدای از غیر استاندارد اعلام شدن این تگ ها توسط سازمان جهانی استانداردهای وب wc3 ، استفاده از این نوع از تگها در طراحی شما میتواند فاجعه ساز شود !!
برای ایجاد حس توجه و نشان دادن اهمیت یک موضوع و جلب توجه مخاطبان خود بهتر است از روشهای دیگری استفاده نمائید . این گونه از تگها بر خلاف تصور شما ممکن است موجب عدم توجه به وب سایت شما شود . میتوانید مطالب بیشتری را در مورد این دو نوع از تگ در دانشنامه ویکی پدیا مطالعه نمائید
<blink> به من نگاه کنید </blink> <marquee width="100%" behavior="alternate" bgcolor="yellow" >This is an example..</ marquee >
V!T0N
22 August 2011
مطالب جالب و به جایی بود امیر جان
موفق و موید باشی
امیر سروری
22 August 2011
v!ton@ ممنون از شما ;-)
حامد
23 August 2011
فوق العاده مفید بود آقا امیر.ممنون بابت انتشار این مطلب
موفق باشی
امیر سروری
23 August 2011
حامد @ ممنون از شما ، موفق و پیروز باشید ;-)
رضوی
23 August 2011
سلام آقای سروری مثل همیشه خوب و عالی بود :) موفق باشید.
خیلی استفاده کردم از مطالب مفید
امیر سروری
23 August 2011
رضوی @ خواهش میکنم ، شما هم موفق باشید ;-)
محسن هاشمی
24 August 2011
سلام.
خیلی مفید بود.
مرسی . . .
امیر سروری
24 August 2011
محسن هاشمی @ ممنون ;-)
امید
25 August 2011
سلام آقای سروری دستتون واقعا درد نکنه خیلی مفید بود فقط اگه میشه بگین برای یادگرفتن طراحی سایت باید از کجا شروع کرد!!!
امیر سروری
25 August 2011
امید @ اول باید نیت کنید ;-) اگه بخواید با مطالعه برید جلو باید از html شروع کنید و بعد از اون css که این خودش به دو سه ماه وقت و تمرین نیاز داره و برای شروع خوبه . و اگر هم بخواید کلاس برید که میتونید در کلاسهای همین مجموعه شرکت کنید ;-) موفق و پیروز باشید
http://www.webtarget.ir/education
آرمان
3 September 2011
عالی بود ممنون
امیر سروری
3 September 2011
آرمان @ خواهش میکنم
رضا
4 September 2011
جالب بود
سعی میکنم رعایت کنم
مخصوصاً اون تگ رو!
من از p تقریباً هیچ وقت استفاده نمیکنم
از این به بعد چشم
امیر سروری
5 September 2011
رضا @ بسیار عالی . موفق باشی ;-)
neda
10 September 2011
خیلی استفاده کردم.موفق باشید
Milad
12 September 2011
مرسی و خسته نباشید برای زحماتتون.
behnoush
19 September 2011
vaghan estfade kardam,merci…montazer mataleb toy hamin dast hastam
kourosh
19 September 2011
خیلی مفید و عالی ;-)
runmehr
26 September 2011
استاد سروری مثل همیشه عالی بود.
امیر سروری
26 September 2011
runmehr @ ممنون شما خودت استادی آقا ;-)
مجید
13 November 2011
عالیه موفق باشید.
محمد مردانی
20 November 2011
لطفا طریقه قرار دادن کد های گوگل پلاس رو هم آموزش بدید ممنون
رحمت الله باهنر
26 November 2011
سلام. به موارد خوبی اشاره کرده اید؛ اما برخی از آن ها چندان مستدل نیست و شاید بهتر بود به منبعی استناد می کردید یا دلیلی برای آن می آوردید. در کل دست مریزاد!
امیر سروری
26 November 2011
رحمت الله باهنر @ ممنون از نظر شما . در ضمن خوشحالم که این وب سایت از کشور افغانستان هم بازدید کننده داره ;-)
میرزایی
17 February 2012
مطالب بسیار مفید بود .از زحمات شما نهایت تشکر رو دارم.
بازارچه تحقیقاتی
25 May 2012
سلام ممنون استفاده کردم
سید مرتضوی
29 May 2012
مقالاتی که شما منتشر می کنید جالبند.میتونم بگم کم نظیرند. ممنون از زحماتتون.
masood
31 May 2012
سلام. خیلی خوب و پرکاربرد بود.
مهدی امینی
10 July 2012
متشکر از مطالب مفیدتون!
aref
13 July 2012
خیلی خوب بود
داریوش
15 August 2012
مطالب تان بسیار زیباست و به من در انجام کار کمک فراوانی کرده است. پرسشی دارم. اگر ممکن است مرجعی یا مقاله ای جامع در خصوص استانداردسازی صفحات (به ویژه در زمینه css و html) برای نمایشگرها و مرورگرهای مختلف به من معرفی کنید. من در ابتدای کار هستم و این می تواند کمک بزرگی در رفع ایراداتی که با آن مواجه شده ام بکند. باز هم سپاس
امیر سروری
16 August 2012
ممنون داریوش عزیز . در زمینه استاندارهای طراحی وب سایت مباحث مختلفی وجود داره . اما اگر منطورتون فقط استاندارد های کد نویسی هست میتونید از وب سایت w3c و داکیومنت هایی که به زبان انگلیسی ارائه میکنه استفاده کنید . این وب سایت ابزارایی هم برای بررسی کدهای وب سایت شما از نظر استاندارد های کد نویس داره که استفاده از اونها هم میتونه کمک باشه .
http://www.w3.org/
http://validator.w3.org/
موفق و پیروز باشید
حمید
15 September 2012
سلام.
ممنون از نکات مفید و باارزشتون.
میلاد
27 September 2012
اولین مورد رو موافق نیستم تو استاندارد های جدید این اشکال به حساب نمیاد.
علیرضا
28 September 2012
برای نسخه 4 اینو ببینید:
https://goo.gl/993h2
برای نسخه 5 نیز ذیل عبارت Cases where the default styles are likely to lead to confusion از این لینک رو ببینید:
https://goo.gl/j4zTg
میلاد
1 October 2012
مرسی :D
مونا
14 October 2012
سلام
من html وCSS بلدم، ولی واقعاً نمی دونم چه جوری باید اینا رو جمع کرد تا سایت ایجاد شه؟
این طور می دونم که باید یه گرافیست base مار رو انجام بده
با php از wampserver استفاده کرد از قسمت localhost ؟ راه ساده تر هم است؟
سامان
10 November 2012
چه خوب حتما به این توصیه های شما عمل میکنم
یوسف
9 December 2012
سلام،
با توجه به اولین موردی که ذکر کردید، یک شبهه برای بنده ایجاد شد :دی
فرض کنید ما یک Division که یک دکمه ی خاص.. یا هر چیزی رو شامل میشه رو بخوایم لینک دهی کنیم.
با توجه به نکته ی اول که ذکر کردید، این عمل غیر حرفه ای محسوب میشه و پیشنهاد نمیشه.
به نظرتون راه حل چیه؟!
من Division رو مثال زدم.. ممکنه برای هر تگ Block دیگه هم این مسأله پیش بیاد.
ممنونم.
یوسف
25 December 2012
نمیدونم کلاً چرا این سؤال رو پرسیدم :دی
چون الان یه مقداری فکر کردم، متوجه شدم به راحتی Class اون Division یا هر چیز دیگه رو میشه به لینک داد! :|
علی
2 March 2013
خدا قوت مفید و مختصر بود
علی
2 May 2013
ممنون از نکاتی که گوشزد کردید ..
مفید بودند ….
سحر
7 May 2013
از شما خیلی ممنونم.توضیحاتتون فوق العاده است .
مهدی
29 May 2013
مطلب کامل و خیلی مفیدی بود امیر جان. واقعا به خاطر مطالب عالی که با زحمت در اختیار دیگران قرار می دی بی نهایت سپاس
R2r
22 June 2013
سلام عزیز…حقیقتش من چن ساله که تعمیرات سخت افزاری و نرم افزاری و شبکه رو انجام میدم….ولی میخوام وب نویسی رو هم شروع کنم.هیچ اطلاعاتیم ندارم.ازین مطالبم هیچی نفهمیدم:))
اگه ممکنه بمن بگید ازکجا و چطوری شروع کنم..ممنون.
مهدخت یافتیان
22 June 2013
سلام
خیلی خوب هست که دوست دارید کار طراحی وب را شروع کنید اما اول باید ببینید نیتتون از این کار چی؟ و آیا این کار را دوست دارید یا نه و اینکه آیا می خواهید ادامش بدید یا صرفا جهت کنجکاوی می خواهید این کار را انجام بدید؟ اگر همه این سوال ها را از خودتون پرسیدید و همش مثبت بود حالا برای قدم اول باید Html و css را یاد بگیرید . یاد گرفتنش کار سختی نیست اما ادامه دادنش و تمرین کردن کار سخت تری هست. هم میتونید خودتون یاد بگیرید هم کلاس برید. البته بهتر که کلاس برید تا بتونید از پایه به صورت درست و کاربردی یاد بگیردید.
گروه آموزشی کار آزموده را که میشناسم و مدرس هاش هم آدم های سرشناس و به نامی توی این زمینه هستند دوست داشتید می تونید دوره های آموزشی را بگذرونید . کلا بحث طراحی وب مقدماتی و پیشرفته و ملزمات و مشتقاتش را هم این گروه آموزش میدهند .
http://karazmoodeh.com/course/web-design-pre
این لینک را هم می تونید بررسی کنید.
R2r
22 June 2013
ممنون خانوم یافتیان..من 20 سالمه و خب به فکره آیندمم:))…میخوام شغل بهتر و درآمد بهتر داشته باشم.چیزی که همه به دنبالشن.حقیقتش به هرچیزی که مربوط به کامپیوتر باشه علاقه خاصی دارم.
بازم ممنونم از راهنماییتون..پس یعنی فعلا برم دنبال همین 2تا؟ برنامه خاصی رو پیشنهاد نمیکنید که باش کارکنم؟
مهدخت یافتیان
22 June 2013
خواهش می کنم.
برای شروع کلا طراحی و برنامه نویسی وب سایت لازم است که این دو موضوع را حتما بخوانید ، دوره هاش را بگذرونید و کاملا بهش مسلط بشید و بعد مراحل بعدی را طی کنید.
بهترین نرم افزاری که باهاش میتونید کار dream weaver هستش البته بهتر برای شروع کلاس ها و دوره ها را شرکت کنید تا با نکات بیشتری از طراحی وب آشنا بشید، بعد خودتون کار کنید
R2r
22 June 2013
راستی معذرت میخوام اگه ممکنه واسه html , css منبع معرفی کنید که به زبون ساده گفه باشه:))
خیلی خیلی ممنون.
مهدخت یافتیان
22 June 2013
اگر می تونید زبان انگلیسی ساده را بخوانید این لینکی که براتون قرار میدم منبع خوبی و به روزه
http://www.w3schools.com/
رها
21 October 2013
برای یادگیری اصولی از پایه فکر میکنم بهترین گزینه موجود در وب های فارسی زبان سایت اسارایان با مدیدیریت سعید صبح خیز
که خیلی اصولی واز پایه اموزش داده
با یه سرچ در گوگل میتونید پیداش کنید
در مراحب بعد هم برای کسانی که درسطح پیش رفته تر هستند همین وب تارگته
سعید
7 October 2013
عالـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــی بود دوستان ک :)
محمدسیعد
20 March 2014
عالی بود مرسی
مرتضی
20 April 2014
گور بابای کنسرسیوم وب جهانی اصلا… مهم جناب آقای گوگل هستن!
هدف از رعایت این استاندارها اینه که صفحاتمون برای گوگل بهینه و استاندارد بشه تا جناب آقای گوگل اونها رو بهتر و واضحتر ببینن تا بازدیدکنندمون زیاد شه… مگه غیر از اینه؟
طراحی سایت
1 May 2014
بسیار ممنون بابت مطالب ، کاربردی و آموزنده بود
محمد حیدری
31 July 2014
خیلی استفاده بردم منون
سامک
17 October 2014
ممنون از مطالب خوبتون هرچند که هر طراح سایتی اینا رو میدونه ولی به عنوان تذکر و یادآوری خیلی خوب بود.
masoud
12 February 2015
لایک!
عالی بود.
لطفا به کارتون ادامه بدید.
ممنون
امیر
6 April 2018
با تشکر از مطلب خوبتون
عباس فعله گری
28 November 2018
سلام اتفاقی باسابتون آشنا شدم خیلی کمکم کرد ممنون