Tags:

การเขียนhtml ต้องมีtag < html >< head > < / head > < body > < / body > < / html > ใช่มั้ยค่ะ แล้วเวลาเราจะเขียนรายละเอียดต่างๆเราก็จะเขียนคำสั่งเพิ่มลงใน< body > < / body > แต่ว่าทำไมลงเขียนดูระหว่าง< head >< / head >หรือ< html > < / html > ก็แสดงผลเหมือนกับใส่ใน< body > < / body >

จึงอยากทราบว่า
1.เพราะเหตุใดตามหนังสือจึงบอกว่า< body > < / body >เป็นส่วนที่พิมพ์เนื้อหาของโปรแกรมที่ต้องการให้แสดงบนบราวเซอร์ทั้งที่ๆใส่นอก< body > < / body >ก็แสดงผลได้เหมือนกันนะค่ะ
2.ถ้ามี< body > หลายๆครั้งก็ได้ แต่ทำไมจึงมักเห็นแค่ครั้งเดียว
3.ถ้าเราเราพวกคำสั่งสร้างเฟรม ฟอร์ม ตาราง ใส่ภาพ ฯ ไปใส่นอก< body >จะได้มั้ยค่ะ (ลองทำแล้วก็แสดงผลได้)ไม่ทราบว่าจะมีผลกับอะไรหรือไม่

*(พอดีจะไปสอนเด็กนักเรียนเลยอยากรู้ให้จริงนะค่ะ) ขอบคุณนะค่ะ

ตัวอย่าง

< html >
< head >mamama< / head >
< body >hello< / body >
a b c d e f< table border="0" >< tr >< td >123456789</ td >< / tr >< / table >
< / html >

ผลลัพธ์

mamama hello a b c d e f123456789

Get latest news from Blognone
By: PiKO
ContributorAndroid
on 9 November 2009 - 10:12 #136590

อันนี้ไม่เคยทดลองด้วยตัวองเหมือนกันนะครับ
ข้าใจว่า มีการกำหนดมาตรฐานอาไว้ตามที่ข้าใจอย่างแรกคือต้องเขียนใน
แต่ด้วยความฉลาดของ Browser ที่ตีความหมายของ
< body > abc < /body > กับ < body > < /body >abc
ว่าพยายามจะแสดงคำว่า abc เหมือนกันเลยแสดง abc ออกมาให้

ยังไงซ่ะตามมาตรฐานดีที่สุดครับ


:: DigiKin8 ::

By: lew
FounderJusci&#039;s WriterMEconomicsAndroid
on 9 November 2009 - 10:12 #136591
lew's picture

มันเป็นความพยายามของบราวเซอร์สมัยใหม่ ที่จะซ่อมไฟล์ HTML ที่ไม่ตรงมาตรฐานให้สามารถแสดงผลได้ถูกต้องครับ

อย่างไรก็ดี การแสดงผลเช่นนี้อาจจะไม่ตรงกันในทุกบราวเซอร์ (หรืออาจจะบังเอิญตรงกัน) รวมถึงว่าในวันนี้มันใช้งานได้ อนาคตอาจจะใช้งานไม่ได้ด้วย

หลายๆ ครั้งไฟล์ html ไม่ได้ถูกอ่านในบราวเซอร์อย่างเดียว โดยเฉพาะซอฟต์แวร์ใหญ่ๆ ที่ต้องเขียนโปรแกรมมาอ่าน html เพื่อไปทดสอบ การเขียนไม่ตรงมาตรฐานจะสร้างความผิดพลาดได้โดยง่าย


lewcpe.com, @wasonliw

By: namprik on 9 November 2009 - 10:24 #136594

อ๋อ ขอบคุณมากเลยค่ะ

By: -Rookies-
ContributorAndroidWindowsIn Love
on 9 November 2009 - 10:36 #136598

ความรู้ใหม่นะเนี่ย ไม่เคยลองเขียนผิดๆ ดูซักที ขอบคุณครับ


เทคโนโลยีไม่ผิด คนใช้มันในทางที่ผิดนั่นแหละที่ผิด!?!

By: crucifier
iPhoneAndroidUbuntu
on 9 November 2009 - 11:04 #136604

เขียนให้ถูกหลัก ยังมีผลต่อ seo ด้วยนะครับ (สำคัญมากในปัจจุบัน) เพราะ search engine ไม่ได้ฉลาดเหมือน browser ที่เราใช้ๆ กัน

ว่าแต่บางกระทู้ก็ใช้ "ครับ" บางกระทู้ก็ใช้ "ค่ะ" แปลกจัง :)

By: namprik on 9 November 2009 - 11:08 #136605 Reply to:136604

พอดีว่าล็อกอินนี้ใช้กะเพื่อนอีกคนค่ะ

By: platalay
iPhoneWindows PhoneAndroidWindows
on 9 November 2009 - 11:33 #136608

ไม่เกี่ยวกับคำถาม

แต่ว่า
ถ้าจะเอาไปสอนนักเรียน กรุณาเอา table ออก แล้วเอา div มาสอนแทนเถอะครับ
table เอาไว้ใช้กับข้อมูลประเภทตาราง อย่าเอามาจัดหน้า web เลย ถือเป็นการใช้งานผิดประเภท

By: snappy
AndroidUbuntu
on 9 November 2009 - 20:34 #136670 Reply to:136608
snappy's picture

เห็นด้วยอย่างแรงครับ

By: namprik on 11 November 2009 - 21:44 #136967 Reply to:136608

คือความจริงไม่ได้ตั้งใจจะจัดหน้าน่ะค่ะ แค่ลองพิมพ์ดูว่ามันแสดงผลเหมือนกันมั้ย นึกอะไรไม่ออกเลยลองพิมพ์ใส่ตารางดูค่ะ แต่ก็ของคุณสำหรับคำแนะนำค่ะ

By: ezy on 9 November 2009 - 18:22 #136656

ลืม <title> รึเปล่าเอ่ย?

By: namprik on 11 November 2009 - 21:44 #136968 Reply to:136656

แล้วถ้าไม่ใส่ได้มั้ย ถ้าไม่ได้อยากให้ส่วนหัวโปรแกรมแสดงอะไร

By: aimakung
AndroidUbuntuWindowsIn Love
on 9 November 2009 - 23:06 #136697

ความเห็นส่วนตัว ผมว่าควรจะศึกษาทดลอง และดูแนวโน้มต่างๆ ไปด้วย
ถือว่าช่วยเด็กให้เริ่มต้นอย่างถูกต้องนะครับ

ดีกว่าสอนให้ทำได้ แล้วมีแต่เว็บกระพริบๆ ทรมานลูกตานะ (=__=" )

By: namprik on 11 November 2009 - 21:45 #136969 Reply to:136697

แนวโน้มประมาณไหนค่ะ

By: anu
Contributor
on 12 November 2009 - 01:06 #136988

HTML เป็นภาษาหนึ่ง และก็ต้องมีองค์กรนึงที่ออกมาตรฐานหรือสเป็คของมันขึ้นมา องค์กรเข้าเขียนไว้ว่าอย่างนั้นครับ ลองดูลิงค์นี้ ส่วนถ้าเราไม่ทำตามแล้วทำไมมันยังใช้งานได้ก็อ่าน ค.ห.นี้

  • ตอบโต้งๆ เลยหนังสือบอกอย่างนั้น เพราะมันถูกสร้างมาโดยบอกให้เราทำอย่างนั้น
  • มีปัญหาไหม เคยเจอว่า browser บางตัว มันจะเรียก Javascript ไปในส่วนที่อยู่นอก < /body > ไม่ได้
By: loptar on 13 November 2009 - 11:18 #137117
loptar's picture

เดี๋ยวนี้ นิยมแยกส่วนออกจากกันครับ มี 3 ส่วน

1. html เป็น structure คือเขียนให้ถูกหลัก ใช้ tag ต่างๆอย่างมีความหมายตามที่มันออกแบบมาให้เป็น และมี document flow ตามลำดับที่ควร เช่น h1 สำคัญที่สุดใน document นั้น ก้ควรใช้แค่ครั้งเดียว ถัดมาก้ใช้ h2 h3 ลงมาเรื่อยๆ หรือเมนู มองว่ามันเป็นลิสท์ของลิ้งค์ ดังนั้นควรเขียนโดยใช้ li เป็นต้น

2. css เป็น presentation คือการตกแต่งประดับประดาทั้งหลาย รวมทั้ง lay-out และการออกแบบต่างๆ เช่นแปลงสภาพ li ตามข้อ 1 ให้ดูเป็นเมนูมากขึ้น

3. javascript เป็น behavior คือพฤติกรรมของเว็บเรา เช่นคลิกที่ตัวหนังสือแล้วกลายเป็นช่องสำหรับแก้ไขข้อความนั้นได้

พยายามอธิบายง่ายๆเป็นภาษาไทยได้ประมาณนี้ครับ รอผู้รู้ท่านอื่นๆมาช่วยเสริม :-)

By: namprik on 13 November 2009 - 20:35 #137257

ขอบคุณค่ะ