Bài 14: HTML và CSS từ Zero đến Hero

Bài 14: HTML và CSS từ Zero đến Hero

  

1:      Liên kết trong một trang web

Liên kết trong một trang web thường được sử dụng trong trường hợp trang web có nội dung trải dài theo chiều dọc. Khi đó, người dùng sẽ cảm thấy tiện lợi hơn nếu họ có thể bấm vào các liên kết để tới thẳng phần nội dung cần xem, thay vì vừa phải trượt thanh cuộn vừa phải theo dõi xem đã tới phần nội dung quan tâm hay chưa. Hoặc, khi người dùng đọc tới phần cuối của một tài liệu dài, thay vì phải dùng thanh cuộn, thì họ có thế bấm vào liên kết để trở về đầu trang.

Để tạo liên kết trong một trang, cần thực hiện hai bước:

– Bước 1: tạo các điểm đích trên trang web

– Bước 2: tạo liên kết đến các điểm đích

Để dễ hiểu, phần này sẽ làm một ví dụ: tạo một danh mục các thuật ngữ, trên đầu trang là một hàng chữ cái sắp xếp theo thứ tự ABC, khi người dùng bấm vào chữ cái nào thì sẽ hiển thị trên màn hình phần chứa các thuật ngữ bắt đầu bằng chữ cái đó. Ví dụ, khi người dùng bấm vào chữ H thì sẽ hiển thị các thuật ngữ bắt đầu bằng chữ H.

Tạo các điểm đích trên trang web

Liên kết trong một trang web, thực tế, là liên kết tới các vị trí cụ thể trên trang. Các vị trí này được đánh dấu bằng thuộc tính id trong các phần tử HTML.

Việc đầu tiên là đặt các thuộc tính id ở các vị trí thích hợp, việc này còn được gọi là phân mảnh trang web (fragment) thành những phần nhỏ hơn và đặt cho mỗi phân mảnh một cái tên (giá trị của thuộc tính id), tên này phải là duy nhất trong phạm vi trang web.

Ví dụ,

<h2 id="start-h">H</h2>
                        <dl>
                                    <dt>Harddisk</dt>
                                    <dd>Đĩa cứng</dd>
                                    <dt>Hardware</dt>
                                    <dd>Phần cứng</dd>
                        </dl>

Tạo liên kết đến điểm đích

Sau khi đã có các đích đến, giờ sẽ tạo các liên kết, để khi người dùng bấm chuột vào liên kết, nội dung vùng đích sẽ hiển thị trên trình duyệt.

Sử dụng phần tử a để tạo liên kết, thuộc tính href sẽ trỏ tới đích đến thông qua giá trị id của phần tử đích, với dấu # được thêm vào phía trước giá trị của id.

Ví dụ,

[HTML]

<p>... G | <a href="#start-h">H</a> | I | K | L | M | L | ...</p>

[Kết quả]

Khi người dùng bấm vào chữ H, trình duyệt sẽ hiển thị các thuật ngữ bắt đầu bằng chữ H.

Dưới đây là mã HTML đầy đủ của ví dụ, với một số thuật ngữ, trong đó có gắn thêm phần liên kết về đầu trang.

[thuat-ngu.html]

<!DOCTYPE html>
<html>
            <head>
                        <title>Hoc lam web</title>
                        <meta charset="utf-8">
            </head>
            <body>
                        <p id="start-all">... E | <a href="#start-f">F</a> | <a href="#start-g">G</a> | <a href="#start-h">H</a> | I | K | L | M | L | ...</p>
                        <h2 id="start-f">F</h2>
                        <dl>
                                    <dt>File</dt>
                                    <dd>Tập tin</dd>
                                    <dt>False</dt>
                                    <dd>Sai</dd>
                                    <dt>Footer</dt>
                                    <dd>Phần chân trang</dd>
                                    <dt>Fetch</dt>
                                    <dd>Lấy lệnh</dd>
                        </dl>
                        <p><a href="#start-all">Về đầu trang</a></p>
                        <h2 id="start-g">G</h2>
                        <dl>
                                    <dt>GB</dt>
                                    <dd>Gigabyte</dd>
                                    <dt>GDP</dt>
                                    <dd>Gross domestic product</dd>
                                    <dt>GPO</dt>
                                    <dd>Group Policy Object</dd>
                                    <dt>GUI</dt>
                                    <dd>Graphic User Interface</dd>
                        </dl>
                        <p><a href="#start-all">Về đầu trang</a></p>   
                        <h2 id="start-h">H</h2>
                        <dl>
                                    <dt>Harddisk</dt>
                                    <dd>Đĩa cứng</dd>
                                    <dt>Hardware</dt>
                                    <dd>Phần cứng</dd>
                                    <dt>HTML</dt>
                                    <dd>HyperText Markup Language</dd>
                                    <dt>HTTP</dt>
                                    <dd>Hypertext Transfer Protocol</dd>
                                    <dt>Hyperlink</dt>
                                    <dd>Siêu liên kết hay đơn giản là liên kết (link) là một tham chiếu đến tài liệu, người dùng có thể bấm vào siêu liên kết để đến được phần nội dung tương ứng. Một siêu liên kết có thể trỏ đến tài liệu khác hoặc một phần cụ thể bên trong tài liệu hiện hành.</dd>
                                    <dt>Hypertext</dt>
                                    <dd>Siêu văn bản là một tài liệu có chứa siêu liên kết, do có chứa siêu liên kết nên nó cho phép truy tìm các nội dung không theo tuần tự. Người đọc có thể tự do duyệt theo các dấu vết liên quan qua suốt tài liệu đó, thậm chí qua cả tài liệu khác, bằng các mối liên kết xác định sẵn, do người sử dụng tự lập nên.</dd>     
                        </dl>
                        <p><a href="#start-all">Về đầu trang</a></p>
            </body>


</html>

2.3.10       Liên kết đến một phân đoạn trong một trang khác

Để liên kết đến một phân đoạn trong một trang web khác, cùng website, chỉ cần thêm URL tương đối của trang web đích vào thuộc tính href, cùng với dấu # và giá trị của id. Ví dụ, tại trang index.html, nếu muốn liên kết tới các thuật ngữ bắt đầu bằng chữ H của trang thuat-ngu.html thì thêm đoạn mã sau,

[index.html]

<a href="thuat-ngu.html#start-h">H</a>

Để liên kết đến một phân đoạn trong một trang web thuộc website khác, chỉ cần thêm URL tuyệt đối của trang web đích vào thuộc tính href, cùng với dấu # và giá trị của id. Ví dụ, tại trang index.html, nếu muốn liên kết tới các thuật ngữ bắt đầu bằng chữ H của trang thuat-ngu.html thuộc website www.vidu.com thì thêm đoạn mã sau,

[index.html]

<a href="http://www.vidu.com/thuat-ngu.html#start-h">H</a>

Cần lưu ý là, lập trình viên không thể thay đổi mã nguồn trang web của người khác, do vậy, họ chỉ có thể liên kết đến các phân đoạn có sẵn của trang web đích. Để xem các phân đoạn trên trang web đích, mở trang web đích và dùng chức năng “View page source” của trình duyệt để xem. Nếu mã nguồn của trang web đích có thay đổi, làm mất các id của phân đoạn, thì liên kết kiểu này sẽ trỏ về đầu trang đích thay vì trỏ tới một vị trí cụ thể trong trang đích.

Exercise 6-8. Link to a fragment (p126)

2.3.11       Hiển thị tài liệu đích

Khi người dùng bấm vào một liên kết, có năm cách khác nhau để hiển thị tài liệu đích (tài liệu được liên kết đến). Để lựa chọn cách hiển thị tài liệu đích, sử dụng thuộc tính target của phần tử a. Sau đây là các giá trị của thuộc tính target:

– _blank: mở tài liệu đích ở tab/cửa sổ mới

– _top: mở tài liệu đích tại tab/cửa sổ hiện hành

– _self: mở tài liệu đích tại frame hiện hành (đây là chế độ mặc định), nếu trang web không chia frame thì _self và _top là tương đương.

– _parent: mở tài liệu đích tại frame cha/chứa frame hiện hành

– _framename: mở tài liệu đích tại frame có tên cụ thể (giá trị thuộc tính name của frame)

Ví dụ sau sẽ mở tài liệu đích ở tab mới,

<a href="http://www.google.com" target="_blank">Trang Google</a>

Việc lựa chọn kiểu hiển thị tài liệu đích cần được cân nhắc cẩn thận vì nó ảnh hưởng nhiều đến tâm lý, và trải nghiệm của người dùng.

2.3.12       Gửi email, gọi điện thoại bằng liên kết

Gửi email bằng liên kết

Người duyệt web có thể gửi email tới một địa chỉ cụ thể bằng liên kết.

Để thực hiện việc này, thiết lập giá trị trong thuộc tính href là mailto.

Ví dụ,

[HTML]

<a href="mailto:nguyenvanteo@gmail.com">Liên hệ với ông Tèo</a>

[Kết quả]

Trên giao diện web, khi người dùng bấm vào dòng chữ “Liên hệ với ông Tèo”, trình duyệt sẽ mở một chương trình soạn thảo email với địa chỉ người gửi và người nhận đã được điền sẵn. Nếu trình duyệt chưa có kết nối sẵn với một chương trình soạn thảo email, thì nó sẽ yêu cầu người dùng thực hiện một số thiết lập, trước khi có thể gửi email bằng cách này.

Lưu ý, việc gửi email bằng liên kết không được khuyến khích sử dụng, vì việc để một địa chỉ email trên trang web sẽ giúp cho các chương trình gửi thư rác (spam mail) có thể lấy được và thực hiện việc gửi thư rác. Nếu muốn lấy thông tin phản hồi từ người dùng thì nên sử dụng Form để thay thế.

Trong trường hợp phải để địa chỉ email ở trên trang web thì nên viết dưới dạng “con người có thể hiểu được, trong khi các chương trình quét địa chỉ email tự động sẽ không nhận ra”, ví dụ,

nguyen@gmail.com thì viết thành nguyen [-at-] gmail [dot] com.

Gọi điện thoại bằng liên kết

Vì có nhiều người đang sử dụng điện thoại thông minh để duyệt web, do vậy, có thể sử dụng liên kết để gọi tới một số điện thoại. Khi người dùng chạm vào liên kết, họ sẽ nhận được một thông báo yêu cầu xác minh việc gọi điện, nếu họ đồng ý, cuộc gọi sẽ được thực thi.

Để tạo liên kết có thể gọi điện, trong thuộc tính href thiết lập giá trị là “tel: số điện thoại đích”.

Ví dụ,

[HTML]

<a href="tel: +84988987654">Liên hệ với chúng tôi (+84) 988 987 654</a>

[Kết quả]

Nếu người dùng sử dụng điện thoại thông minh, khi chạm vào liên kết, sẽ có cuộc gọi tới số máy “+84988987654”, nếu người dùng sử dụng máy tính, thì trình duyệt sẽ không làm gì cả, hoặc cho phép người dùng mở một ứng dụng trên máy tính mà nó có thể thực hiện cuộc gọi (ví dụ Skype).

Một số lưu ý:

– Số điện thoại phải bao gồm cả dấu “+” và mã điện thoại quốc gia, ví dụ Việt nam là +84

– Liên kết cũng hiển thị luôn số điện thoại, để trong trường hợp chức năng gọi điện tự động không thực hiện được thì người dùng vẫn có thể nhập số điện thoại và tạo cuộc gọi bằng tay.

2:  Tải tập tin bằng liên kết

Có thể sử dụng liên kết để cho phép người dùng tải một tập tin về máy, một số loại tập tin hay được tải là: .DOC, .PDF, .ZIP.

Để thực hiện, chỉ việc để đường dẫn của tập tin trong thuộc tính href của phần tử a.

Ví dụ,

[HTML]

<a href="TaiLieu.docx">Bấm vào đây để tải tài liệu</a>

HTML5 có thêm thuộc tính “download”, sử dụng thuộc tính này để đặt tên mới cho tập tin khi tải xuống máy người dùng.

Ví dụ sau sẽ đặt tên mới cho tập tin là DuLieu.docx sau khi người dùng tải về máy,

[HTML]

<a href="TaiLieu.docx" download="DuLieu.docx">Bấm vào đây để tải tài liệu</a>


Đăng nhận xét

0 Nhận xét

myadcash