Frames
 
Frames เป็นเทคนิคที่มีประโยชน์มาก. แต่ถ้าคุณใช้มันผิดวิธีละก็, มันสารถทำให้คุณและ ผู้เยี่ยมชมเครัาและผิดหวัง ได้มากทีเดียว, มากไปกว่านั้นยังสามารถทำให้เพจของคุณ ดูวุ่นวายสับสนหรือ น่าเกลียดได้อีกด้วย ถ้าคุณนำไปใช้อย่างไม่เหมาะสมหรือระมัดระว้ง. ดังนั้นของเตือนอีกครั้งว่า "ควรใช้มันอย่างเข้าใจจริงน๊ะครับ". ผู้เขียนเตือนคุณแล้วน๊ะ!

Note: หรือถ้าลองทำแล้วไม่ work ให้เปลี่ยน &It ไปเป็นเครื่องหมายเปิดแทก "<" แทน ดู และให้ใช้กับ ทุกตัวอย่างในทุกบทเรียนเลยครับ.

เช่นเดียวกับแทกl HTML, เฟรมมีโครงสร้างเฉพาะเช่นกัน, โดยต้องเริ่มต้นด้วย

&ltframeset> - เฟรมเซ็ต
เป็นการใส่แทก &ltbody> tag ลงไปในไฟล์ html. ซึ่งมันมีต้วเลือกด้งนี้:

rows="#, #" | "%, %" | "#*, *" - Rows
cols="#, #" | "%, %" | "#*, *" - Columns

เครื่องหมาย #'s ในตัวอย่างหมายถึงการกำหนดขนาด pixel sizes. ตัวอย่างเช่น:
&ltframeset rows="100,*"> จะแบ่งให้เป็นสองเฟรม: เฟรมแรกเริ่มด้วยความสูง 100 pixels, และอีกเฟรมหนึ่งกำหนดเป็นขนาดที่เหลือ.
เครื่องหมาย  %'s ในตัวอย่างหมายถึงการกำหนดขนาดของเฟรมเป็น percentage. ตัวอย่างเช่น:
&ltframeset cols="25%, 75%"> จะแบ่งให้เป็นสอง columns: column แรกกำหนดเป็น 25 percent ของขนาดหน้าจอ, อีก column หนึ่งกำหนดเป็น 75 percent.
เครื่องหมาย  #*, * ในตัวอย่างหมายถึงการที่เฟรมแรกมีขนาดสองเท่าของเฟรม ที่สองrepresents. ตัวอย่างเช่น:
&ltframeset rows="2*, *"> จะกำหนดขนาดเฟรมแรกให้มีขนาดสองเท่าของเฟรม ที่สองwould.

ต่อไปจะเป็นเนื้อหาที่อยู่ด้านในของเฟรม. ซึ่งจะเป็นสิ่งที่กำหนดว่าอะไรอยู่ข้างในเฟรมนั้น บ้าง โดยเริ่มต้นด้วย...
&ltframe> -เฟรมแทก
เฟรมแทก (fram tag) จะกำหนดทุกๆ เฟรมเฟรมภายในเฟรมเซ็ต (frameset). ซึ้งรวมถึง โครงสร้างแทกต่างๆ ด้านล่างนี้ด้วย:
&ltframe src="file.html"> - the frame source
บอกเบลาเซอร์ว่าต้องการให้โหลดอะไร ภายในเฟรมเฉพาะนี้. คุณสามารถปล่ายว่าง ไว้ หรือกำหนดให้โหลดภาพก็ได้เช่นกัน.
&ltframe name="whatever"> - the frame name
This comes in handy ถ้าคุณต้องการให้ลิงก์ในเฟรมหนึ้งไปโหลดบางอย่างในอีกเฟรม หนึ่ง. คุณสามารถตั้งชื่อ name มันให้เป็นอะไรก็ได้ตามพอใจ.
&ltframe noresize> - noresize
ช่วยให้ใครก็ view เพจของคุณไม่สามารถปรับขนาดหรือ มิติ dimensions ได้ ต้อง view ตามที่เห็นนั้นเท่านั้น. จะเป็นการดีถ้าเลือกปรับเหมือนผู้เขียนเลือก!
&ltframe scrolling="yes"> - the scrolling option
ช่วยให้คุณสามารถกำหนดว่าต้องการให้เฟรมสามารถเลื่อน หรือ scrolled through ได้หรือไม่ สามารถกำหนดค่าเป็น  "yes", "no", หรือ "auto".
&ltframe marginheight="number"> - the margin height
ช่วยให้คุณสามารถกำหนดความสูงของขอบ margin ภายในเฟรมเดี่ยว. สามารถ กำหนดจำนวน number ตั้งแต่ 1 ขึ้นไป.
&ltframe marginwidth="number"> - the margin width
ช่วยให้คุณสามารถกำหนดความกว้างของขอบ margin ภายในเฟรมเดี่ยว. สามารถ กำหนดจำนวน number ตั้งแต่ 1 ขึ้นไป.
&ltframe frameborder="number"> - the frame border
ช่วยให้คุณสามารถกำหนดของเขต border ระหว่าง frames. สามารถกำหนดจำนวน ตั้งแต่ 0 ขึ้นไป.
&ltframe framespacing="number"> - frame spacing
ช่วยให้คุณกำหนดขนาดเฟรมในเฟรมเดี่วย. สามารถกำหนดจำนวนตั้งแต่ 0 ขึ้นไป. ทำให้เพจดูเหมือนไม่มีเฟรม ทำงานได้ดีบน Netscape 2.0+ และ Microsoft Internet Explorer 3.0 ขึ้นไป.
คุณอาจสงสัยว่า สำหรับบางคนที่มีเบลาเซอร์ที่ไม่ support การทำงานของเฟรมล่ะ จะทำอย่างไร? ก็ให้ใส่แทกนี้ไว้หลังเฟรมแทกของคุณครับ:
&ltnoframes> - the no frames tag
หลังจากแทกนี้ คุณสามารถใส่แทก &ltbody> เหมือนอย่างปกติ. เพื่อว่าถ้าผู้เยี่ยมบางคนใช้เบลาเซอร์เก่า จะยังคงสามารถอ่านเพจนี้ได้ เพียงแต่ไม่มีเฟรมเท่านั้น. แทกนี้ไม่มี options. ตอนนี้มาที่เรื่องสนุกๆ ก้นละ.
&lttarget> - the target value
The target value คือการอนุญาติให้คุณ load ไฟล์ในส่วนอื่นของเฟรม. มันจะไม่ปรากฏ บนส่วนของเฟรม. มันจะปรากฏในตัว html ไฟล์นั้นเท่านั้น. ยกตัวอย่างเช่น.

สมมุติว่าคุณต้องการทำลิงก์ #1 ให้ไป load เพจใน #2. ในเฟรม set up, หรือต้อง การให้โหลดเพจนี้ไปแสดงในอีกเพจหนึ้งนั้นเอง คุณต้องเขียนแบบนี้:


&ltframeset cols="150, *">
       &ltframe href="file1.html" name="#1">
       &ltframe href="file2.html" name="#2">
</frameset>

คุณจะทำลิงก์ของคุณในไฟล์1.html ให้ดูคล้ายๆ แบบนี้:
&lta href="file.html" target="#2">
และคุณจะมำไฟล์ 2.html ร่วมด้ายสิ่งที่ตามมาหลังจากแทก &ltbody> tag:
&ltbase target="#2">

แทกนี้ &lttarget> tag สามารถที่จะรวมคุณสมบัติบางตัวจากด้านล่างนี้ลงไปได้ครับ:
target="_self" - เป็นการสั่งให้ ไฟล์โหลดในเฟรมเดิม.
target="_parent" - เป็นการสั่งให้ ไฟล์โหลดใน frameset เดิม.
target="_blank" - document จำทำการโหลดในหน้าต่างใหม่ (new blank window).
target="_top" - ลิงก์จะโหลดด้านนอกของเฟรม โดยไม่เปิดเบลาเซอร์ใหม่ (without starting a new instance of the browser).
เอาล่ะ! ตอนนี้คิดว่าเขาใจหรือยังครับ? ลองสมมุติว่า ถ้าผมกำลังจะสร้างเฟรมให้เหมือน รูปข้างล่างนี้:

และนี้คือ source สำหรับ layout นี้:

&ltframeset rows="250,*">
     < frame src="love.html" name="love" 
     noresize scrolling ="no">

&ltframeset cols="33%, 33%, 33%">
     < frame src="plain.html" name="hope" 
     noresize scrolling ="no">
     < frame src="plain1.html" name="joy" 
     noresize scrolling ="no">
     < frame src="plain2.html" name="peace" 
     noresize scrolling ="no">
  </frameset>
</frameset>

อย่าเชื่อผมเสมอไปน๊ะครับ, ลอง click here ดูตัวอย่างที่นี้ แล้วดูว่าการทำงานของมัน. หรือทดลองรันมันด้วย เบลาเซอร์ตัวใหม่ new Netscape หรือ Microsoft tags เพื่อกำจัด take away ไม่ให้มองเห็นเฟรมก็ได้. โดยจะแสดงผลเหมือนอันแรกแต่ มองไม่เห็นเฟรม. ต้องแน่ใจว่าตรวจดูบนทุกๆ เพจ เสมอเพื่อจะได้เห็นว่าแทก layed out ออกมาอย่างไร, โดยเฉพาะ &ltbase target="*"> ข้างหลังแทก &ltbody> tags ในทุกๆ เพจ plain.html.

หว้งว่าจะมีส่วนช่วยสร้างความเข้าใจให้คุณบ้างน๊ะครับ. แม้นว่าการใช้เฟรมจะควบคุมยาก แต่ถ้าก็มีประโยชน์ต่อคุณมากจริงๆ ถ้าใช้ได้ถูกต้องรู้จริง. จึงควรพยายามครับ. Good luck, และจำไว้เสมอ ว่าต้องอดทนและ อุตสาหะน๊ะครับ. มันจะดูยุ่งยากสับสนหน่อยเฉพาะ ตอนเริ่มต้น ผู้เขียนเองก็ใช้เวลากว่า 3 อาทิตย์ในการเขียนเพจแรก ให้ทำงานได้. หวังว่าคุณคงไม่ใช้นานกว่านั้นน๊ะครับ Good luck!

Return Home

1997 Copyright Krit Spooker