Rich Internet applications Web

Just another WordPress.com weblog

Khái niệm xhtml Tháng tám 31, 2008

Chuyên mục: DHTML/ XHTML — riasweb @ 11:27 chiều
Tags:

Trước khi đi vào khái niệm XHTML, chúng ta nên lướt qua một chút về nguồn gốc của XHTML. Các ngôn ngữ web dựa trên khái niệm cơ bản là SGML, một ngôn ngữ khá phức tạp, còn được gọi là metalanguage, sử dụng để định nghĩa các ngôn ngữ khác. Sử dụng SGML để tạo XML (eXtensible Markup Language), một phiên bản đơn giản hơn và đương nhiên cũng được coi là một metalanguage.

XML là một định dạng khá mạnh và đơn giản, bạn có thể tạo riêng một khái niệm về tags hoặc thuộc tính cho các dạng văn bản bạn muốn. Bằng cách tạo nhóm các tags và thuộc tính đúng theo chuẩn XML, như thế là bạn đã tạo ra được ngôn ngữ Markup mới.

XHTML (eXtensible HyperText Markup Language) có thể thấy ngay được XHTML = X + HTML => XHTML = XML + HTML, với XML cung cấp các quy tắc làm thế nào để dùng chung với HTML.

Vậy, để dùng XHTML, phải viết theo code XML, XHTML cung cấp rất nhiều tiện ích của XML (chi tiết ở phần tiếp theo). Một lần nữa phải nói thêm rằng code với XHTML phải tuân theo các chuẩn định dạng của XML, ví như cú pháp và cấu trúc phải tuyệt đối đúng. XHTML đồng thời cũng rất giống với HTML.

Không nên lo ngại gì vì việc chuyển tiếp sang XHTML khá đơn giản, chỉ với một vài điều ghi nhớ sau đây.

Khai báo XHTML

Đặt phần khai báo XML lên trên cùng của văn bản, để định nghĩa cho cả 2 phiên bản XML có thể sử dụng ký tự encoding. Điều này ko bắt buộc, vì nếu dùng encoding có thể sử dụng an tòan cho nhiều trình duyệt hơn. Và developer nên dùng khai báo, gần như được mặc định như sau:

<?xml version=”1.0″ encoding=”UTF-8″?>

và thay vì dùng meta tag cho phần đầu khai báo, có thể dùng:
<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″ />

Nếu bạn sử dụng phổ biến hơn là ISO-8859-1 encoding, dùng
<meta http-equiv=”Content-Type” content=”text/html; charset=ISO-8859-1″ />

XHTML DTDs

Dù có sử dụng khai báo XML hay không thì mỗi tài liệu XHTML phải được khai báo chính xác theo đọan code sau để bắt đầu 1 trang, một số thuộc tính chính nằm trong tag <html>, giúp trình duyệt nhận biết được đọan text sử dụng lọai ngôn ngữ nào. Đọan mở đầu là DTD (Document Type Declaration), nó gửi đến trình duyệt và validator tính chất or trạng thái trang web đang họat động.

DTD là một dạng tập tin mà trình duyệt có thể đọc bằng tên và các thuộc tính của tất cả các tags thích hợp (nghĩa là các tags đúng cú pháp theo chuẩn XML) mà developer tự định nghĩa. Những trình duyệt mới luôn có những chức năng đọc hiểu và ghi lại những DTD trên các website vào dữ liệu DTDs khổng lồ của trình duyệt. XHTML Strict DTD sẵn sàng giúp cho developer nghiên cứu.

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN”
“http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”>

DTD là thứ duy nhất bạn sử dụng nếu thật sự muốn viết web hòan tòan bằng mã XHTML. XHTML là thành phần với tòan bộ các tags và thuộc tính và thực sự cần độ chính xác cao.

Nếu developer chọn sử dụng mã XHTML bắt buộc phải làm quen với chuẩn của W3C validator (có thể tham khảo thêm tại www.W3c.com). Developer sẽ không được phân quyền sử dụng tất cả font tag, hoặc các thuộc tính như width/height cũng không được cho phép trong việc tạo tables. Bạn cũng không được dùng thuộc tính về border cho hình ảnh, và sẽ dùng thuộc tính alt cho tất cả hình ảnh muốn hiển thị. Phần lớn các thuộc tính hiện hữu đều bị hạn chế trong các tiện ích có thể tận dụng được của CSS, vì vậy để đơn giản hóa, có thể dùng đọan XHTML Transitional dưới đây.

Chắc rằng sẽ khó có thể phân biệt giữa HTML và XHTML về cách dùng DTD, cái nào ít phức tạp hơn, và nếu như đặt cách dùng DTD vào cùng một frameset, thì nên dùng XHTML.
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Frameset//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd”>

Để định nghĩa XML Namespace cho tài liệu dùng, cách đơn giản là gán vào tag hiện tại đang dùng có liên quan đến modular properties của XHTML, bằng cách thêm vào thuộc tính trong tag <html>. Developer ghi nhớ rằng phải chỉ rõ ngôn ngữ của trang web hiện tại. Thay đổi các tags theo:

<html xmlns=”http://www.w3.org/1999/xhtml” xml:lang=”en” lang=”en”>

</html>

(Chưa rõ nguồn)

 

Khái niệm dhtml Tháng tám 31, 2008

Chuyên mục: DHTML/ XHTML — riasweb @ 11:23 chiều
Tags:

DHTML LÀ GÌ?
DHTML là mở rộng của HTML làm tăng hiệu ứng trình bày văn bản. Nó làm cho trang Web sinh động hơn, ví dụ một đoạn text có thể thay đổi kích cỡ, màu sắc hoặc những hình ảnh di chuyển từ vị trí này qua vị trí khác trên Web page, phản hồi lại tác động của người dùng.
DHTML kết hợp nhiều đặc tính của các trình duyệt, kết hợp giữa CSS và script để người lập trình khắc phục layout không linh động và sự giới hạn về tính tương tác trong HTML
DHTML cung cấp người lập trình khả năng lập trình truy xuất đến DOM (Document Object Model) cho trang HTML. Điều khiển DOM bằng script cho phép chúng ta truy xuất bất cứ đối tựơng nào trên trang, chỉnh sửa nội dung, vị trí, thuộc tính CSS và thêm các thuộc tính mở rộng.
DHTML là client-side scripting. Nó cho phép một trang Web được thay đổi sau khi trang Web này được load bằng browser mà không gửi yêu cầu cho Web Server để thực hiện update.
Trong FrontPage, bạn có thể sử dụng thanh công cụ DHTML Effects để làm tăng cường hiệu ứng cho các element mà không cần lập trình.

LỊCH SỬ PHÁT TRIỂN
Một vài năm trước khi Microsoft giới thịêu Internet Explorer 4 lần đầu tiên đã làm thay đổi hướng phát triển Web client-side. Nó xuất hiện ở khắp mọi nơi, được đính kèm với các version của Window và được giới thiệu như một kỹ thuật mới gọi là DHTML. Nhưng do sự khó khăn của các trình duyệt lúc bấy giờ, thập niên 90, sự phản đối của người dùng tăng lên, sự triển khai DOM và CSS không phù hợp giữa các browsers làm cho DHTML không thể phát triển. DHTML được giới thiệu trở lại vào năm 1997 cùng với sự phát triển của các Browsers thế hệ 4x.
DHTML là yếu tố chính cho việc phát triển Internet Explorer, Netscape cũng phát triển DHTML sau đó, và triển khai một phiên bản DHTML không mấy thành công, NN4. NN6 đã thay đổi nhiều hơn, và bây giờ Netscape hỗ trợ cho DOM Level 1, dù NN6 đã thực hiện điều này trước đây.
DHTML được Microsoft và Netscape xem là cách mới hiệu quả để làm cho trang web tương tác hơn. Cả Microsoft và Netscape chia sẻ cùng khái niệm nhưng họ đã thực hiện khái niệm này khác nhau. Netscape cung cấp tag <LAYER> kết hợp chặt chẽ với Javascript và Style Sheet trong điều khiển xác định vị trí, trong khi đó Microsoft sử dụng Active X và CSS Style Sheet kết hợp chặt chẽ ngôn ngữ scripting như Jscript (phiên bản JavaScript của Microsoft) hay VBScript để điều khiển xác định vị trí.
Microsoft đưa các đặc tính DHTML vào phiên bản Internet Explorer 4.0. Các đặc tính khoá trong DHTML của Microsoft là: Cascading Style Sheets, Document Object Model (DOM), và Data Binding. Microsoft Internet Explorer 5 cung cấp một đặc tính dễ sử dụng cho phép người thiết kế web và người phát triển cải thiện to lớn giao diện và thể hiện trang web. Sử dụng sức mạnh thuộc tính động, có thể khai báo giá trị property không chỉ như hằng số mà còn là những công thức (formula). Formula sử dụng trong property dynamic có thể tham chiếu giá trị property từ các element khác.
DHTML của Netscape, các layer có thể trong suốt hoặc không trong suốt, một layer có thể được đặt trên hay dưới layer khác. Netscape cũng cung cấp “Dynamic Fonts”, người sử dụng có thể gửi font với document và người xem có thể thấy những font này trên web page khi họ không cài đặt font này trên máy. Nếu muốn thiết kế web page bằng Nescape, người dùng phải có Navigator 4.0 trên máy.

CẤU TRÚC CỦA DHTML
DHTML có 4 phần:
• Document Object Model (DOM)
• Scripts
• Cascading Style Sheets (CSS)
• XHTML
1. DOM
DOM cho phép bạn truy xuất đến bất cứ phần nào trang web của bạn để thay đổi nó bằng DHTML. Mỗi phần của một trang Web được chỉ ra bởi DOM và sử dụng tên quy định nhất quán của nó bạn có thể truy xuất chúng và thay đổi thuộc tính. DOM chỉ ra element có thể bắt được những thay đổi được gọi là event, giống như di chuyển chuột qua một element (onmouseover), loading một trang (onload), submitting một form (onsubmit), click trên một form input field (onfocus)…

2. Scripts
Scripts đựơc viết bằng JavaScrip hay VBScript là 2 ngôn ngữ script phổ biến được sử dụng để kích hoạt DHTML. Bạn sử dụng một ngôn ngữ script để điều khiển đối tượng đưa ra trong DOM.
3. CSS
CSS được sử dụng trong DHTML để điều khiển giao diện và trực quan của Web page. Style sheets định nghĩa màu, font của text, màu background, hình ảnh, và việc sắp xếp các objects trên trang. Sử dụng script va’ DOM, bạn có thể thay đổi style của rất nhiều element (như color, position, hay size), bạn có thể thực hịên với hầu như bất cứ tốc độ băng thông và processor nào.
4. XHTML
XHTML hay HTML 4.x được sử dụng để tạo trang và tạo các element cho CSS và DOM làm việc. Không có gì đặc biệt về XHTML cho DHTML – nhưng cần có XHTML hợp lý.

ĐẶC TÍNH CỦA DHTML
Có 4 đặc tính chính của DHTML:
• Thay đổi tag và property
• Real-time positioning
• Dynamic fonts (Netscape Communicator)
• Data binding (Internet Explorer)
1. Thay đổi tag và property
Đây là một đặc tính phổ biến nhất của DHTML. Nó cho phép bạn thay đổi đặc tính của một HTML tag phụ thuộc vào một event bên ngoài của browser (như click chuột, time, hay date…). Bạn có thể sử dụng điều này để preload thông tin lên một trang web, và không hiện nó trừ khi người xem click vào một đường link chỉ định.
2. Real-time positioning
Objects, images, và text di chuyển quanh Web page cho phép bạn chơi những game tương tác với người xem hay làm cho màn hình sống động hơn.
3. Dynamic fonts
Đây là đặc tính chỉ có trong Netscape. Netscape phát triển điều này để giải quyết vấn đề người thiết kế không biết font nào sẽ được thể hiện trên system của người xem. Với Dynamics font, font được mã hoá và được download cùng Web page để Web page luôn luôn thể hiện đúng như người thiết kế dự tính.
4. Data binding
Đây là đặc tính riêng của IE. Microsoft phát triển Data binding để cho phép người dùng truy xuất dễ dàng đến databases từ Web site. Nó tương tự như việc sử dụng CGI để truy xuất database, nhưng dùng một ActiveX control để chạy. Đặc tính này rất ưu thế nhưng khó sử dụng cho người viết mới biết DHTML.

VÍ DỤ
Ví dụ: Đặc trưng của một trang web sử dụng DHTML được cấu thành như sau:
<html>
<head>
<title>DHTML example</title>
<script type=”text/javascript”>
function init() {
myObj = document.getElementById(‘navigation’);
// …. adding code source
}
window.onload = init;
</script>
</head>
<body>
<div id=”navigation”></div>
</body>
</html>

Thường thì mã JavaScript được lưu giữ trong một tập tin riêng, đựơc nạp vào trang web bằng cách liên kết đến tập tin chứa mã java script:

<script type=”text/javascript” src=”script.js”></script>

Ví dụ: Hiển thị một đoạn văn bản được thêm vào
Đoạn mã dưới đây minh hoạ một chức năng thừơng đựơc sử dụng. Phần thêm vào của trang web sẽ chỉ được hiển thị nếu người dùng yêu cầu nó. Như trong e-learning chức năng này sử dụng để hiển thị gợi ý được thêm vào.

<html>
<head><title>Ví dụ</title>

<style type=”text/css”>
<!–
h2 {background-color: lightblue; width: 100%}
a {font-size: larger; background-color: goldenrod}
a:hover {background-color: gold}
#example1 {display: none; margin: 3%; padding: 4%; background-color:
limegreen}
–>
</style>

<script type=”text/javascript”>
<!–
function changeDisplayState (id) {
e = document.getElementById(id);

if (e.style.display == ‘none’ || e.style.display == ”) {
e.style.display = ‘block’;
showhide.innerHTML = ‘Dấu ví dụ’};
else {
e.style.display = ‘none’;
showhide.innerHTML = ‘Hiển thị ví dụ’;
}
}
//–>
</script>
</head>
<body>
<a id=”showhide” href=”#”
onclick=”java script:changeDisplayState(‘example1′) “>Hiển thị ví dụ</a>
<div id=”example1″>Đây là ví dụ: văn bản chỉ hiển thị khi bấm chuột vào
lin kết.</div>
<p>Thêm văn bản thường…<p>
</body>
</html>

Một ứng dụng trình diễn
S5 là một ứng dụng của DHTML hoạt động trong các trình duyệt hiện đại (bao gồm IE 6): Một tập tin XHTML chứa một slideshow có thể xem được trên chế độ projector theo từng slide một (trình duyệt đựơc thiết lập ở chế độ tàn màn hình) như một trang web đơn hoặc có thể in được như một bản tin phát tay. Với DHTML thì việc điều hướng được xây dựng một cách linh động. Những chuyển động đơn giản là điều có thể. Định dạng sẽ được thực hiện bởi CSS.

VỊ TRÍ HIỆN NAY
Hiện nay, sau nhiều năm DHTML được giới thiệu lần đầu tiên, mọi thứ đã trở nên tốt hơn mặc dù không nhiều lắm. Nhưng vì sự hỗ trợ giới hạn của CSS và XML cùng với mô hình DOM độc quyền, sử dụng những browser cũ bắt buộc các nhà phát triển phải viết nhiều version cho mỗi trang, nên nó vô cùng tốn kém. Phần lớn các trang trên World Wide Web vẫn hoàn toàn sử dụng HTML, không có bất cứ link tương tác nào và form đơn giản.
Kỹ thuật DHTML hiện đang ở trong giai đoạn phát triển, với NS 4 và IE 4 làm khác biệt hoàn toàn sự triển khai kỹ thụât này.
DHTML trong IE 4 vượt trội và linh hoạt hơn hẳn DHTML trong NS 4.

TƯƠNG LAI
DHTML thất bại trong việc trở thành chương trình client-side chuẩn khi Macromedia cho ra kỹ thụât Flash. Bằng cách sử dụng cài đặt client-side code, Flash pages phá vỡ tính không tương thích của các trình duyệt web. Hơn 98% các browsers hỗ trợ Flash.
Java cũng trở thành đối thủ của DHTML. Dạo qua các trang game Yahoo hay AOL dù tối hay ngày bạn sẽ thấy hàng trăm ngàn người chơi game đựơc phát triển bằng Java applet. Applet, được hỗ trợ bởi ngôn ngữ Java. Flash scripting và DHTML không đủ khả năng hay tốc độ nhanh, và quá khó để thực hiện.

ƯU ĐIỂM, KHUYẾT ĐIỂM
1. Ưu điểm
Khi nghĩ đến dynamic HTML, bạn cần nhớ đến những ưu điểm của HTML chuẩn, đặc biệt khi một trang được load từ server, nó sẽ không thay đổi cho đến khi nhận được request khác từ server. Dynamic HTML cho bạn nhiều điều khiển hơn qua HTML element và cho phép bạn thay đổi bất cứ khi nào mà không cần chuyển về Web server.
Với DHTML chúng ta có thể chỉnh sửa HTML page trong khi nó được hiển thị và cung cấp nội dung linh họat cho người xem. Vì DHTML sử dụng component mà browser đã hỗ trợ như HTML, Cascading Style Sheets (CSS), JavaScript, và DOM, nó không đòi hỏi xác định quyền và ứng dụng phía server. Bạn không cần phải biết các ngôn ngữ lập trình khác hay scripting khác như client GUI yêu cầu. Bạn không cần lo lắng về sự khác biệt giữa file source và file binary.
2. Khuyết điểm
Một số điểm yếu của DHTML là khó khăn khi phát triển và gỡ rối vì sự phong phú và đa dạng của một số lượng lớn các trình duyệt. Việc phát triển cho các trình duyệt phổ biến như Xnternet Explorer 5.0+, Mozilla Firefox, Netscape 6.0+, và Opera 7.0+, có vẻ dễ dàng hơn nhờ sự chia sẻ DOM.

DHTML TRONG NETSCAPE VÀ IE
Kỹ thuật DHTML trong Nescape 4.x và Internet Explorer 4.x

NHẬN XÉT
DHTML làm cho Web page trở nên sống động và tương tác hơn với người dùng. Với sự phát triển của các Browser hiện nay người sử dụng không còn phải lo lắng khi lướt qua những trang DHTML. Bên cạnh những ưu điểm vượt trội, DHTML vẫn còn một số khuyết điểm mà hầu hết các chương trình thường vấp phải. Thời gian tới những khuyết điểm này sẽ được khắc phục trong các phiên bản DHTML mới của Microsoft và Netscape.

THUẬT NGỮ
• ActiveX: 1 tập hợp kỹ thụât cho phép các thành phần mềm tương tác với một thành phần khác trong môi trường mạng, bất chấp ngôn ngữ của thành phần được tạo ra, được dùng làm chính yếu để phát triển nội dung tương tác của World Wide Web.
• Web browser (trình duyệt web): Phần mềm phiên dịch đánh dấu của các file bằng HTML, định dạng chúng sang các trang web, và thể hiện chúng cho ngừơi dùng.
• Script: Một tập các chỉ lệnh dùng để báo cho chương trình biết cách thực hiện một thủ tục qui định, như đăng nhập vào hệ thống thư điện tử chẳng hạn. Các script được cài sẵn trong một số chương trình.
• Hypertext Transfer Protocol-HTTP: Giao thức truyền siêu văn bản
• Hyperlink: Siêu liên kết.
• HTTP address: địa chỉ HTTP, ví dụ http://www.microsoft.com
• Hypertext: Văn bản của một tài liệu truy tìm không theo tuần tự. Các link liên kết các trang tài liệu với nhau.

(forums.2it.in)

 

Khái niệm html Tháng tám 31, 2008

Chuyên mục: DHTML/ XHTML — riasweb @ 11:14 chiều
Tags:

HTML (tiếng Anh, viết tắt cho HyperText Markup Language, tức là “Ngôn ngữ Đánh dấu Siêu văn bản”) là một ngôn ngữ đánh dấu được thiết kế ra để tạo nên các trang web, nghĩa là các mẩu thông tin được trình bày trên World Wide Web. Được định nghĩa như là một ứng dụng đơn giản của SGML, vốn được sử dụng trong các tổ chức cần đến các yêu cầu xuất bản phức tạp, HTML giờ đây đã trở thành một chuẩn Internet do tổ chức World Wide Web Consortium (W3C) duy trì. Phiên bản mới nhất của nó hiện là HTML 4.01. Tuy nhiên, HTML hiện không còn được phát triển tiếp. Người ta đã thay thế nó bằng XHTML. Dùng HTML động hoặc Ajax, có thể được tạo ra và xử lý bởi số lượng lớn các công cụ, từ một chương trình soạn thảo văn bản đơn giản – bạn có thể gõ vào ngay từ những dòng đầu tiên – cho đến những công cụ xuất bản WYSIWYG phức tạp.

Giới thiệu

HTML nói chung tồn tại như là các tập tin văn bản chứa trên các máy tính nối vào mạng Internet. Các file này có chứa thẻ đánh dấu, nghĩa là, các chỉ thị cho chương trình về cách hiển thị hay xử lý văn bản ở dạng văn bản thuần túy. Các file này thường được truyền đi trên mạng internet thông qua giao thức mạng HTTP, và sau đó thì phần HTML của chúng sẽ được hiển thị thông qua một trình duyệt web, một loại phần mềm trực quan đảm nhiệm công việc đọc văn bản của trang cho người sử dụng), phần mềm đọc email , hay một thiết bị không dây như một chiếc điện thoại di động.

Đánh dấu

Có bốn loại phần tử đánh dấu trong HTML:

  • Đánh dấu Có cấu trúc miêu tả mục đích của phần văn bản (ví dụ, <h1>Golf</h1> sẽ điều khiển phần mềm đọc hiển thị “Golf” là đề mục cấp một),
  • Đánh dấu trình bày miêu tả phần hiện hình trực quan của phần văn bản bất kể chức năng của nó là gì (ví dụ, <b>boldface</b> sẽ hiển thị đoạn văn bản boldface) (Chú ý là cách dùng đánh dấu trình bày này bây giờ không còn được khuyên dùng mà nó được thay thế bằng cách dùng CSS),
  • Đánh dấu liên kết ngoài chứa phần liên kết từ trang này đến trang kia (ví dụ, <a href=”http://www.wikipedia.org/”>Wikipedia</a> sẽ hiển thị từ Wikipedia như là một liên kết ngoài đến một URL) cụ thể, và
  • Các phần tử thành phần điều khiển giúp tạo ra các đối tượng (ví dụ, các nút và các danh sách).

Tách phần trình bày và nội dung

Nỗ lực tách phần nội dung ra khỏi phần hình thức trình bày của trang HTML đã đưa đến sự xuất hiện của các chuẩn mới như XHTML. Các chuẩn này nhấn mạnh vào việc sử dụng thẻ đánh dấu vào việc xác định cấu trúc tài liệu như phần đề mục, đoạn văn, khối văn bản trích dẫn và các bảng, chứ không khuyên dùng các thẻ đánh dấu mang tính chất trình bày trực quan, như <font>, <b> (in đậm), và <i> (in nghiêng). Những mã mang tính chất trình bày đó đã được loại bỏ khỏi HTML 4.01 Strict và các đặc tả XHTML nhằm tạo điều kiện cho CSS. CSS cung cấp một giải pháp giúp tách cấu trúc HTML ra khỏi phần trình bày của nội dung của nó. Xem phần tách nội dung và trình bày.

Định nghĩa kiểu tài liệu (DTD)

Tất cả các trang HTML nên bắt đầu với một khai báo Định nghĩa kiểu tài liệu (hay DTD). Ví dụ:

<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN” “http://www.w3.org/TR/html4/strict.dtd”>

Ở đây, nó định nghĩa một tài liệu tuân thủ Strict DTD của HTML 4.01, mà thuần túy là cấu trúc, nhường phần định dạng cho Các bảng trình bày xếp lớp. Các DTD khác, bao gồm Loose, Transitional, và Frameset, định nghĩa các quy tắc khác cho việc sử dụng ngôn ngữ.

(vi.wikipedia.org)