HTML nâng cao : Frame

Người đăng: share-nhungdieuhay on Thứ Tư, 12 tháng 3, 2014

Trước khi vào bài học, bạn hãy để ý kỹ một chút trang này, khi bạn scroll để đọc văn bản thì phần đặt hình ảnh và tên bài học vẫn đứng im, không bị di chuyển.
Trang Web được trình bày theo kiểu chia thành các phần độc lập với nhau gọi là frame. Bạn có thể chia trang Web thành nhiều phần tuỳ thích, ví dụ :

Khi bạn chia trang Web của mình ra bao nhiêu frame thì bạn phải tạo ra bấy nhiêu file HTML để mỗi frame hiển thị một file HTML.
Thông thường đoạn mã của một file HTML được chia thành các frame như sau :

<html>
<head>
<title>Tiêu đề trang Web của bạn</title>
</head>
<frameset rows/cols = "X,Y,..,Z">
<frame name = "frame_name1" src = "URL1">
<frame name = "frame_name2" src = "URL2">
........
<frame name = "frame_namen" src = "URLn">
</frameset>
<noframes>
Sorry ! Trình duyệt của bạn không hỗ trợ frame
</noframes>
</html>

Trong đó tag <frameset> có tác dụng để chỉ ra cách chia frame theo chiều ngang hay chiều dọc. Nếu bạn định phân chia theo chiều dọc thì dùng tag <frameset> như sau :
<frameset cols = "X,Y,..,Z">
Với X,Y,..,Z là độ rộng của các frame, bạn có thể cho giá trị là điểm, phần trăm...,ví dụ
<frameset cols = "170,530">
<frameset cols = "15%,85%">
<frameset cols = "170,*">
trong ví dụ cuối cùng bạn thấy có dấu *. Dấu * cho biết trước hết chia cho một frame độ rộng là 170, phần còn lại dành hết cho frame còn lại.
Cách làm tương tự đối với trang chia theo chiều ngang.
Tag <frame> có tác dụng định nghĩa một frame. Frame này sẽ có tên là giá trị của thuộc tính name = "" và hiển thị file HTML có tên là giá trị của thuộc tính src =""
Tag <noframes> ... </noframes> dùng để hiển thị thông báo khi trình duyệt của người đọc Web không hỗ trợ frame, ví dụ
<noframes>
Sorry ! Trình duyệt của bạn không hỗ trợ frame
</noframes>
Ví dụ khi muốn chia một trang Web như sau :


bạn phải làm như sau :
<html>
<head>
<title>A More Complex Framed Page</title> </head>
<FRAMESET ROWS="120,*>
<FRAME SRC="row1.html">
<FRAMESET COLS="75%,25%>
<FRAMESET ROWS="60%,40%>
<FRAME SRC="row2col1row1.html"> <FRAME SRC="row2col1row2.html">
</frameset>
<FRAMESET ROWS="100,*> <FRAME SRC="row2col21row1.html">
<FRAME SRC="row2col21row2.html"> </frameset>
</frameset>
</frameset>
<NOFRAMES>
This is what someone would see who does not have a web
browser that can display frames
</NOFRAMES>
</html>
Thông thường, một trang Web được trình bày như sau :


trong đó giả sử frame làm menu có tên là menu và frame hiển thị thông tin có tên là display. Khi click lên các siêu liên kết ở frame menu thì nội dung của các trang tương ứng hiện lên frame display, để làm được điều đó, trong file HTML của frame menu bạn đưa thêm tag <base> vào ngay sau tag <body>
...
<body>
<base target = "display">
...
Khi bạn không muốn hiển thị border của frame, bạn thêm thuộc tính border = "0" và frameborder = "0" vào tag <frameset>
<FRAMESET ROWS="45,*,150" BORDER=0 frameborder="0">
Trong trình duyệt bạn không muốn thay đổi kích thước của frame, bạn thêm thuộc tính NoResize vào trong tag <frame>
<FRAME NAME="myfixedframe" border=8 frameborder="1" SRC="fixed.html" NORESIZE>

{ 0 nhận xét... read them below or add one }

Đăng nhận xét