From 904a5994c87295d84d25f869d5555f35fbce5070 Mon Sep 17 00:00:00 2001 From: Florian Merz Date: Thu, 11 Feb 2021 14:51:56 +0100 Subject: unslug vi: move --- .../how_does_the_internet_work/index.html | 97 ++++++++++++++++++++ .../internet_lam_viec_nh_the_nao/index.html | 97 -------------------- .../set_up_a_local_testing_server/index.html | 99 ++++++++++++++++++++ .../thiet_lap_web_mang_noi_bo/index.html | 99 -------------------- .../index.html | 83 ----------------- files/vi/learn/forms/index.html | 101 +++++++++++++++++++++ .../index.html" | 62 ------------- .../installing_basic_software/index.html | 62 +++++++++++++ files/vi/learn/html/forms/index.html | 101 --------------------- 9 files changed, 359 insertions(+), 442 deletions(-) create mode 100644 files/vi/learn/common_questions/how_does_the_internet_work/index.html delete mode 100644 files/vi/learn/common_questions/internet_lam_viec_nh_the_nao/index.html create mode 100644 files/vi/learn/common_questions/set_up_a_local_testing_server/index.html delete mode 100644 files/vi/learn/common_questions/thiet_lap_web_mang_noi_bo/index.html delete mode 100644 files/vi/learn/dong_gop_cho_khu_vuc_hoc_tap_tren_mdn/index.html create mode 100644 files/vi/learn/forms/index.html delete mode 100644 "files/vi/learn/getting_started_with_the_web/c\303\240i_\304\221\341\272\267t_c\303\241c_ph\341\272\247n_m\341\273\201m_c\306\241_b\341\272\243n/index.html" create mode 100644 files/vi/learn/getting_started_with_the_web/installing_basic_software/index.html delete mode 100644 files/vi/learn/html/forms/index.html (limited to 'files/vi/learn') diff --git a/files/vi/learn/common_questions/how_does_the_internet_work/index.html b/files/vi/learn/common_questions/how_does_the_internet_work/index.html new file mode 100644 index 0000000000..fb9abacd43 --- /dev/null +++ b/files/vi/learn/common_questions/how_does_the_internet_work/index.html @@ -0,0 +1,97 @@ +--- +title: Internet làm việc như thế nào? +slug: Learn/Common_questions/Internet_lam_viec_nh_the_nao +translation_of: Learn/Common_questions/How_does_the_Internet_work +--- +
{{LearnSidebar}}
+ +
+

Bài viết này giải thích Internet là gì và cách nó làm việc.

+
+ + + + + + + + + + + + +
Điều kiện tiên quyết:Không yêu cầu, nhưng chúng tôi khuyên bạn trước tiên nên đọc Bài viết nói về thiết lập các mục tiêu cho dự án.
Mục tiêu:Bạn sẽ học những khái niệm cơ bản về cơ sở hạ tầng của Web và sự khác giữa Internet với Web.
+ +

Tóm tắt

+ +

Internet là xương sống của Web, là cơ sở hạ tầng kỹ thuật làm cho Web tồn tại. Nói theo nghĩa cơ bản nhất, Internet là một mạng rất lớn bao gồm các máy tính có thể giao tiếp với nhau.

+ +

Lịch sử của Internet là một cái gì đó đen tối. Nó được bắt đầu từ những năm 1960 như một dự án nghiên cứu được tài trợ bởi quân đội Mỹ, sau đó đến những năm 1980, nó phát triển thành một hệ thống cơ sở hạ tầng công cộng với sự hỗ trợ của nhiều trường đại học công lập và các công ty tư nhân. Những kỹ thuật khác nhau đã giúp Internet tiến hóa vượt thời gian, nhưng cách nó làm việc thì vẫn không thay đổi nhiều: Internet là con đường để tất cả máy tính kết nối lại với nhau, và dù cho có chuyện gì xảy ra, các máy tính vẫn tìm thấy con đường khác để tiếp tục nối kết.

+ +

Học tập tích cực

+ + + +

Lặn sâu hơn

+ +

Một mạng đơn giản

+ +

Khi hai máy tính cần giao tiếp (liên lạc) với nhau, bạn sẽ phải liên kết chúng lại, hoặc bằng hình thức vật lý (thường dùng với một dây Cáp Ethernet - Ethernet cable) hoặc không dây (ví dụ như hệ thống WiFi hoặc Bluetooth). Những máy tính hiện đại ngày nay có thể chấp nhận tất cả kết nối trên.

+ +
+

Chú ý: Phần còn lại của bài viết này, chúng ta sẽ chỉ nói về hình thức kết nối dùng cáp vật lý, còn đối với các mạng không dây thì cách làm việc cũng tương tự.

+
+ +

Two computers linked together

+ +

Bởi vì một mạng sẽ không bị giới hạn bởi hai máy tính. Nên bạn có thể kết nối bao nhiêu máy tính tùy ý. Nhưng khi đó sẽ nhanh chóng phát sinh rắc rối. Nếu bạn thử kết nối 10 máy tính, giả sử vậy, thì bạn sẽ cần 45 sợi cáp, và 9 phích cắm trên mỗi máy tính!

+ +

Ten computers all together

+ +

Để giải quyết vấn đề này, mỗi máy tính trong mạng sẽ được kết nối vào một máy tính tí hon được gọi là bộ định tuyến - router. Bộ định tuyến sẽ làm công việc giống như người ra hiệu ở trạm xe lửa, nó đảm bảo rằng một thông điệp được gửi từ máy tính này sẽ đến đúng máy tính cần nhận. Giả sử để gửi một thông điệp đến máy B, máy A phải gửi thông điệp đó đến bộ định tuyến, rồi bộ định tuyến sẽ tiếp tục chuyển nó đến máy B và đồng thời đảm bảo chắc chắn thông điệp đó không bị gửi vào máy C.

+ +

Khi chúng ta thêm một bộ định tuyến vào hệ thống, mạng 10 máy tính sẽ chỉ cần 10 sợi dây cáp: vì mỗi máy tính chỉ cần một phích cắm và bộ định tuyến sẽ có 10 phích cắm.

+ +

Ten computers with a router

+ +

Mạng của các mạng

+ +

Vậy là mọi thứ đều ổn. Nhưng còn việc kết nối hàng trăm, hàng ngàn, hàng tỉ máy tính lại với nhau thì sao? Dĩ nhiên là một bộ định tuyến đơn lẻ sẽ không thể gánh vác được số lượng đó, nhưng mà, nếu bạn đọc phần trên một cách cẩn thận, sẽ thấy chúng tôi có nói bộ định tuyến cũng chính là một máy tính giống như các máy tính khác. Thế thì có điều gì cản trở việc kết nối trực tiếp hai bộ định tuyến với nhau không? Không, vậy thì chúng ta cứ kết nối chúng thôi.

+ +

Two routers linked together

+ +

Bằng việc kết nối các máy tính vào bộ định tuyến, rồi lại kết nối các bộ định tuyến với nhau, chúng ta có thể tạo ra một mạng vô tận.

+ +

Routers linked to routers

+ +

 

+ +

Một mạng như thế tiến rất gần đến thứ mà ta gọi là Internet, nhưng chúng ta đã bỏ sót vài thứ. Chúng ta xây dựng mạng máy tính đó cho mục đích riêng của mình. Còn có rất nhiều mạng máy tính khác ở ngoài kia: của những người bạn, của hàng xóm, và bất kỳ ai khác. Nhưng mà không thể nào thiết lập hàng đống đường dây cáp để kết nối nhà bạn với phần còn lại của thế giới, thế thì bạn sẽ xử lý vấn đề này như thế nào? May thay là đã có sẵn những đường dây cáp liên kết đến nhà bạn, ví dụ như, cáp điện và điện thoại. Cơ sở hạ tầng điện thoại đã kết nối nhà bạn đến với mọi người trên thế giới, thế nên nó là đường dây hoàn hảo mà chúng ta cần. Để kết nối mạng máy tính của bạn đến cơ sở hạ tầng điện thoại, cần một thiết bị nhỏ gọi là modem. Modem sẽ biến đổi thông tin từ mạng của chúng ta thành dạng thông tin có thể điều khiển được bằng cơ sở hạ tầng điện thoại và ngược lại.

+ +

A router linked to a modem

+ +

Vậy là chúng ta đã được kết nối vào cơ sở hạ tầng điện thoại. Bước tiếp theo là gửi thông điệp từ mạng của chúng ta sang mạng cần nhận. Để làm điều đó, mạng của chúng ta cần kết nối với Nhà cung cấp dịch vụ Internet (Internet Service Provider - ISP). ISP là một công ty chuyên quản lý các bộ định tuyến đặc biệt, các bộ định tuyến đó được kết nối lẫn nhau và có thể truy cập đến các bộ định tuyến của những ISP khác. Như vậy một thông điệp gửi đi từ mạng của bạn sẽ phải đi qua mạng của các mạng ở ISP, rồi mới tới mạng cần nhận. Internet bao gồm toàn bộ cơ sở hạ tầng của các mạng.

+ +

Full Internet stack

+ +

Tìm các máy tính

+ +

Nếu bạn muốn gửi một thông điệp đến một máy tính khác, thì phải chỉ định đích danh đó là máy tính nào. Do đó mà mỗi máy tính khi kết nối vào hệ thống mạng thì đều được gán một địa chỉ duy nhất để nhận dạng, gọi là địa chỉ IP (IP là viết tắt của Internet Protocol). IP là một dãy gồm bốn số được ngăn cách nhau bằng dấu chấm, ví dụ 192.168.2.10.

+ +

Điều đó đối với các máy tính là quá tốt, nhưng con người chúng ta sẽ gặp nhiều khó khăn để nhớ dãy số địa chỉ đó. Để làm mọi thứ dễ dàng hơn, chúng ta đặt bí danh cho địa chỉ IP, tức là một cái tên nào đó dễ nhớ đối với con người, mà theo chuyên ngành người ta gọi là tên miền - domain name. Ví dụ google.com là tên miền đại diện cho địa chỉ IP 173.194.121.32. Như vậy, sử dụng tên miền là phương pháp dễ nhất để chúng ta chạm đến một máy tính khác trên Internet.

+ +

Show how a domain name can alias an IP address

+ +

Internet và web

+ +

Như bạn có thể nhận thấy, khi chúng ta duyệt Web với một trình duyệt web, chúng ta thường sử dụng tên miền để chạm đến trang web đó. Nghĩa là Internet và Web giống nhau? Không đơn giản thế. Như chúng ta đã xem qua, Internet là một cơ sở hạ tầng kỹ thuật cho phép hàng tỉ máy tính kết nối với nhau. Trong số những máy tính đó, có một số máy (được gọi là máy chủ Web - Web server) có thể gửi các thông điệp dễ hiểu đến trình duyệt web. Internet là một hệ thống cơ sở hạ tầng, ngược lạiWeb là một dịch vụ được xây dựng ở mặt trên (phần ngọn) của cơ sở hạ tầng. Phải nên nhớ rằng có những dịch vụ khác cũng được xây dựng ở mặt trên của Internet, như là email và {{Glossary("IRC")}}.

+ +

Bước tiếp theo

+ + diff --git a/files/vi/learn/common_questions/internet_lam_viec_nh_the_nao/index.html b/files/vi/learn/common_questions/internet_lam_viec_nh_the_nao/index.html deleted file mode 100644 index fb9abacd43..0000000000 --- a/files/vi/learn/common_questions/internet_lam_viec_nh_the_nao/index.html +++ /dev/null @@ -1,97 +0,0 @@ ---- -title: Internet làm việc như thế nào? -slug: Learn/Common_questions/Internet_lam_viec_nh_the_nao -translation_of: Learn/Common_questions/How_does_the_Internet_work ---- -
{{LearnSidebar}}
- -
-

Bài viết này giải thích Internet là gì và cách nó làm việc.

-
- - - - - - - - - - - - -
Điều kiện tiên quyết:Không yêu cầu, nhưng chúng tôi khuyên bạn trước tiên nên đọc Bài viết nói về thiết lập các mục tiêu cho dự án.
Mục tiêu:Bạn sẽ học những khái niệm cơ bản về cơ sở hạ tầng của Web và sự khác giữa Internet với Web.
- -

Tóm tắt

- -

Internet là xương sống của Web, là cơ sở hạ tầng kỹ thuật làm cho Web tồn tại. Nói theo nghĩa cơ bản nhất, Internet là một mạng rất lớn bao gồm các máy tính có thể giao tiếp với nhau.

- -

Lịch sử của Internet là một cái gì đó đen tối. Nó được bắt đầu từ những năm 1960 như một dự án nghiên cứu được tài trợ bởi quân đội Mỹ, sau đó đến những năm 1980, nó phát triển thành một hệ thống cơ sở hạ tầng công cộng với sự hỗ trợ của nhiều trường đại học công lập và các công ty tư nhân. Những kỹ thuật khác nhau đã giúp Internet tiến hóa vượt thời gian, nhưng cách nó làm việc thì vẫn không thay đổi nhiều: Internet là con đường để tất cả máy tính kết nối lại với nhau, và dù cho có chuyện gì xảy ra, các máy tính vẫn tìm thấy con đường khác để tiếp tục nối kết.

- -

Học tập tích cực

- - - -

Lặn sâu hơn

- -

Một mạng đơn giản

- -

Khi hai máy tính cần giao tiếp (liên lạc) với nhau, bạn sẽ phải liên kết chúng lại, hoặc bằng hình thức vật lý (thường dùng với một dây Cáp Ethernet - Ethernet cable) hoặc không dây (ví dụ như hệ thống WiFi hoặc Bluetooth). Những máy tính hiện đại ngày nay có thể chấp nhận tất cả kết nối trên.

- -
-

Chú ý: Phần còn lại của bài viết này, chúng ta sẽ chỉ nói về hình thức kết nối dùng cáp vật lý, còn đối với các mạng không dây thì cách làm việc cũng tương tự.

-
- -

Two computers linked together

- -

Bởi vì một mạng sẽ không bị giới hạn bởi hai máy tính. Nên bạn có thể kết nối bao nhiêu máy tính tùy ý. Nhưng khi đó sẽ nhanh chóng phát sinh rắc rối. Nếu bạn thử kết nối 10 máy tính, giả sử vậy, thì bạn sẽ cần 45 sợi cáp, và 9 phích cắm trên mỗi máy tính!

- -

Ten computers all together

- -

Để giải quyết vấn đề này, mỗi máy tính trong mạng sẽ được kết nối vào một máy tính tí hon được gọi là bộ định tuyến - router. Bộ định tuyến sẽ làm công việc giống như người ra hiệu ở trạm xe lửa, nó đảm bảo rằng một thông điệp được gửi từ máy tính này sẽ đến đúng máy tính cần nhận. Giả sử để gửi một thông điệp đến máy B, máy A phải gửi thông điệp đó đến bộ định tuyến, rồi bộ định tuyến sẽ tiếp tục chuyển nó đến máy B và đồng thời đảm bảo chắc chắn thông điệp đó không bị gửi vào máy C.

- -

Khi chúng ta thêm một bộ định tuyến vào hệ thống, mạng 10 máy tính sẽ chỉ cần 10 sợi dây cáp: vì mỗi máy tính chỉ cần một phích cắm và bộ định tuyến sẽ có 10 phích cắm.

- -

Ten computers with a router

- -

Mạng của các mạng

- -

Vậy là mọi thứ đều ổn. Nhưng còn việc kết nối hàng trăm, hàng ngàn, hàng tỉ máy tính lại với nhau thì sao? Dĩ nhiên là một bộ định tuyến đơn lẻ sẽ không thể gánh vác được số lượng đó, nhưng mà, nếu bạn đọc phần trên một cách cẩn thận, sẽ thấy chúng tôi có nói bộ định tuyến cũng chính là một máy tính giống như các máy tính khác. Thế thì có điều gì cản trở việc kết nối trực tiếp hai bộ định tuyến với nhau không? Không, vậy thì chúng ta cứ kết nối chúng thôi.

- -

Two routers linked together

- -

Bằng việc kết nối các máy tính vào bộ định tuyến, rồi lại kết nối các bộ định tuyến với nhau, chúng ta có thể tạo ra một mạng vô tận.

- -

Routers linked to routers

- -

 

- -

Một mạng như thế tiến rất gần đến thứ mà ta gọi là Internet, nhưng chúng ta đã bỏ sót vài thứ. Chúng ta xây dựng mạng máy tính đó cho mục đích riêng của mình. Còn có rất nhiều mạng máy tính khác ở ngoài kia: của những người bạn, của hàng xóm, và bất kỳ ai khác. Nhưng mà không thể nào thiết lập hàng đống đường dây cáp để kết nối nhà bạn với phần còn lại của thế giới, thế thì bạn sẽ xử lý vấn đề này như thế nào? May thay là đã có sẵn những đường dây cáp liên kết đến nhà bạn, ví dụ như, cáp điện và điện thoại. Cơ sở hạ tầng điện thoại đã kết nối nhà bạn đến với mọi người trên thế giới, thế nên nó là đường dây hoàn hảo mà chúng ta cần. Để kết nối mạng máy tính của bạn đến cơ sở hạ tầng điện thoại, cần một thiết bị nhỏ gọi là modem. Modem sẽ biến đổi thông tin từ mạng của chúng ta thành dạng thông tin có thể điều khiển được bằng cơ sở hạ tầng điện thoại và ngược lại.

- -

A router linked to a modem

- -

Vậy là chúng ta đã được kết nối vào cơ sở hạ tầng điện thoại. Bước tiếp theo là gửi thông điệp từ mạng của chúng ta sang mạng cần nhận. Để làm điều đó, mạng của chúng ta cần kết nối với Nhà cung cấp dịch vụ Internet (Internet Service Provider - ISP). ISP là một công ty chuyên quản lý các bộ định tuyến đặc biệt, các bộ định tuyến đó được kết nối lẫn nhau và có thể truy cập đến các bộ định tuyến của những ISP khác. Như vậy một thông điệp gửi đi từ mạng của bạn sẽ phải đi qua mạng của các mạng ở ISP, rồi mới tới mạng cần nhận. Internet bao gồm toàn bộ cơ sở hạ tầng của các mạng.

- -

Full Internet stack

- -

Tìm các máy tính

- -

Nếu bạn muốn gửi một thông điệp đến một máy tính khác, thì phải chỉ định đích danh đó là máy tính nào. Do đó mà mỗi máy tính khi kết nối vào hệ thống mạng thì đều được gán một địa chỉ duy nhất để nhận dạng, gọi là địa chỉ IP (IP là viết tắt của Internet Protocol). IP là một dãy gồm bốn số được ngăn cách nhau bằng dấu chấm, ví dụ 192.168.2.10.

- -

Điều đó đối với các máy tính là quá tốt, nhưng con người chúng ta sẽ gặp nhiều khó khăn để nhớ dãy số địa chỉ đó. Để làm mọi thứ dễ dàng hơn, chúng ta đặt bí danh cho địa chỉ IP, tức là một cái tên nào đó dễ nhớ đối với con người, mà theo chuyên ngành người ta gọi là tên miền - domain name. Ví dụ google.com là tên miền đại diện cho địa chỉ IP 173.194.121.32. Như vậy, sử dụng tên miền là phương pháp dễ nhất để chúng ta chạm đến một máy tính khác trên Internet.

- -

Show how a domain name can alias an IP address

- -

Internet và web

- -

Như bạn có thể nhận thấy, khi chúng ta duyệt Web với một trình duyệt web, chúng ta thường sử dụng tên miền để chạm đến trang web đó. Nghĩa là Internet và Web giống nhau? Không đơn giản thế. Như chúng ta đã xem qua, Internet là một cơ sở hạ tầng kỹ thuật cho phép hàng tỉ máy tính kết nối với nhau. Trong số những máy tính đó, có một số máy (được gọi là máy chủ Web - Web server) có thể gửi các thông điệp dễ hiểu đến trình duyệt web. Internet là một hệ thống cơ sở hạ tầng, ngược lạiWeb là một dịch vụ được xây dựng ở mặt trên (phần ngọn) của cơ sở hạ tầng. Phải nên nhớ rằng có những dịch vụ khác cũng được xây dựng ở mặt trên của Internet, như là email và {{Glossary("IRC")}}.

- -

Bước tiếp theo

- - diff --git a/files/vi/learn/common_questions/set_up_a_local_testing_server/index.html b/files/vi/learn/common_questions/set_up_a_local_testing_server/index.html new file mode 100644 index 0000000000..187215c53c --- /dev/null +++ b/files/vi/learn/common_questions/set_up_a_local_testing_server/index.html @@ -0,0 +1,99 @@ +--- +title: Làm sao để thiết lập web mạng nội bộ? +slug: Learn/Common_questions/thiet_lap_web_mang_noi_bo +translation_of: Learn/Common_questions/set_up_a_local_testing_server +--- +
+

 

+ +

Bài viết này sẽ giải thích làm thế nào để thiết lập web mạng nội bộ cơ bản trên máy tính của bạn và những điều cơ bản về cách sử dụng nó.

+ +

 

+
+ + + + + + + + + + + + +
Yêu Cầu:Bạn cần phải biết Internet hoạt động thế nào, và Web Server là gì
Mục Tiêu:Bạn sẽ biết cách thiết lập máy chủ nội bộ. 
+ +

Tập tin cục bộ (local) và Tập tin từ xa (remote)

+ +

Khắp những nơi học, chúng tôi bảo bạn mở những ví dụ trực tiếp trong một trình duyệt - điều này có thể được thực hiện bằng cách click đúp vào file HTML, kéo và thả nó vào trong cửa sổ trình duyệt, hoặc chọn File > Open... và chuyển hướng tới file HTML. Có rất nhiều cách để làm được điều này.

+ +

Nếu đường dẫn web bắt đầu với file://, tiếp theo bởi đường dẫn tới file của bạn trên ổ đĩa cục bộ thì một tập tin cục bộ đang được sử dụng. Ngược lại, nếu bạn xem một trong những ví dụ của chúng tôi trên Github (hoặc một ví dụ trên một máy chủ từ xa khác), địa chỉ web sẽ bắt đầu với http:// hoặchttps://, để cho thấy rằng file đó đã được nhận thông qua HTTP.

+ +

Những vấn đề trong việc thử nghiệm những tập tin cục bộ

+ +

Một số ví dụ sẽ không chạy nếu bạn mở chúng như những tệp tin cục bộ. Vấn  đề này có thể do nhiều lí do, những lí do có khả năng nhất như:

+ + + +

Running a simple local HTTP server

+ +

To get around the problem of async requests, we need to test such examples by running them through a local web server. One of the easiest ways to do this for our purposes is to use Python's SimpleHTTPServer module.

+ +

To do this:

+ +
    +
  1. +

    Install Python. If you are using Linux or Mac OS X, it should be available on your system already. If you are a Windows user, you can get an installer from the Python homepage and follow the instructions to install it:

    + +
      +
    • Go to python.org
    • +
    • Under the Download section, click the link for Python "3.xxx".
    • +
    • At the bottom of the page, choose the Windows x86 executable installer and download it.
    • +
    • When it has downloaded, run it.
    • +
    • On the first installer page, make sure you check the "Add Python 3.xxx to PATH" checkbox.
    • +
    • Click Install, then click Close when the installation has finished.
    • +
    +
  2. +
  3. +

    Open your command prompt (Windows)/terminal (OS X/Linux). To check Python is installed, enter the following command:

    + +
    python -V
    +
  4. +
  5. +

    This should return a version number. If this is OK, navigate to the directory that your example is inside, using the cd command.

    + +
    # include the directory name to enter it, for example
    +cd Desktop
    +# use two dots to jump up one directory level if you need to
    +cd ..
    +
  6. +
  7. +

    Enter the command to start up the server in that directory:

    + +
    # If Python version returned above is 3.X
    +python -m http.server
    +# If Python version returned above is 2.X
    +python -m SimpleHTTPServer
    +
  8. +
  9. +

    By default, this will run the contents of the directory on a local web server, on port 8000. You can go to this server by going to the URL localhost:8000 in your web browser. Here you'll see the contents of the directory listed — click the HTML file you want to run.

    +
  10. +
+ +
+

Note: If you already have something running on port 8000, you can choose another port by running the server command followed by an alternative port number, e.g. python -m http.server 7800 (Python 3.x) or python -m SimpleHTTPServer 7800 (Python 2.x). You can then access your content at localhost:7800.

+
+ +

Running server-side languages locally

+ +

Python's SimpleHTTPServer (python 2.0) http.server (python 3.0) module is useful, but it doesn't know how to run code written in languages such as PHP or Python. To handle that you'll need something more — exactly what you'll need depends on the server-side language you are trying to run. Here are a few examples:

+ + diff --git a/files/vi/learn/common_questions/thiet_lap_web_mang_noi_bo/index.html b/files/vi/learn/common_questions/thiet_lap_web_mang_noi_bo/index.html deleted file mode 100644 index 187215c53c..0000000000 --- a/files/vi/learn/common_questions/thiet_lap_web_mang_noi_bo/index.html +++ /dev/null @@ -1,99 +0,0 @@ ---- -title: Làm sao để thiết lập web mạng nội bộ? -slug: Learn/Common_questions/thiet_lap_web_mang_noi_bo -translation_of: Learn/Common_questions/set_up_a_local_testing_server ---- -
-

 

- -

Bài viết này sẽ giải thích làm thế nào để thiết lập web mạng nội bộ cơ bản trên máy tính của bạn và những điều cơ bản về cách sử dụng nó.

- -

 

-
- - - - - - - - - - - - -
Yêu Cầu:Bạn cần phải biết Internet hoạt động thế nào, và Web Server là gì
Mục Tiêu:Bạn sẽ biết cách thiết lập máy chủ nội bộ. 
- -

Tập tin cục bộ (local) và Tập tin từ xa (remote)

- -

Khắp những nơi học, chúng tôi bảo bạn mở những ví dụ trực tiếp trong một trình duyệt - điều này có thể được thực hiện bằng cách click đúp vào file HTML, kéo và thả nó vào trong cửa sổ trình duyệt, hoặc chọn File > Open... và chuyển hướng tới file HTML. Có rất nhiều cách để làm được điều này.

- -

Nếu đường dẫn web bắt đầu với file://, tiếp theo bởi đường dẫn tới file của bạn trên ổ đĩa cục bộ thì một tập tin cục bộ đang được sử dụng. Ngược lại, nếu bạn xem một trong những ví dụ của chúng tôi trên Github (hoặc một ví dụ trên một máy chủ từ xa khác), địa chỉ web sẽ bắt đầu với http:// hoặchttps://, để cho thấy rằng file đó đã được nhận thông qua HTTP.

- -

Những vấn đề trong việc thử nghiệm những tập tin cục bộ

- -

Một số ví dụ sẽ không chạy nếu bạn mở chúng như những tệp tin cục bộ. Vấn  đề này có thể do nhiều lí do, những lí do có khả năng nhất như:

- - - -

Running a simple local HTTP server

- -

To get around the problem of async requests, we need to test such examples by running them through a local web server. One of the easiest ways to do this for our purposes is to use Python's SimpleHTTPServer module.

- -

To do this:

- -
    -
  1. -

    Install Python. If you are using Linux or Mac OS X, it should be available on your system already. If you are a Windows user, you can get an installer from the Python homepage and follow the instructions to install it:

    - -
      -
    • Go to python.org
    • -
    • Under the Download section, click the link for Python "3.xxx".
    • -
    • At the bottom of the page, choose the Windows x86 executable installer and download it.
    • -
    • When it has downloaded, run it.
    • -
    • On the first installer page, make sure you check the "Add Python 3.xxx to PATH" checkbox.
    • -
    • Click Install, then click Close when the installation has finished.
    • -
    -
  2. -
  3. -

    Open your command prompt (Windows)/terminal (OS X/Linux). To check Python is installed, enter the following command:

    - -
    python -V
    -
  4. -
  5. -

    This should return a version number. If this is OK, navigate to the directory that your example is inside, using the cd command.

    - -
    # include the directory name to enter it, for example
    -cd Desktop
    -# use two dots to jump up one directory level if you need to
    -cd ..
    -
  6. -
  7. -

    Enter the command to start up the server in that directory:

    - -
    # If Python version returned above is 3.X
    -python -m http.server
    -# If Python version returned above is 2.X
    -python -m SimpleHTTPServer
    -
  8. -
  9. -

    By default, this will run the contents of the directory on a local web server, on port 8000. You can go to this server by going to the URL localhost:8000 in your web browser. Here you'll see the contents of the directory listed — click the HTML file you want to run.

    -
  10. -
- -
-

Note: If you already have something running on port 8000, you can choose another port by running the server command followed by an alternative port number, e.g. python -m http.server 7800 (Python 3.x) or python -m SimpleHTTPServer 7800 (Python 2.x). You can then access your content at localhost:7800.

-
- -

Running server-side languages locally

- -

Python's SimpleHTTPServer (python 2.0) http.server (python 3.0) module is useful, but it doesn't know how to run code written in languages such as PHP or Python. To handle that you'll need something more — exactly what you'll need depends on the server-side language you are trying to run. Here are a few examples:

- - diff --git a/files/vi/learn/dong_gop_cho_khu_vuc_hoc_tap_tren_mdn/index.html b/files/vi/learn/dong_gop_cho_khu_vuc_hoc_tap_tren_mdn/index.html deleted file mode 100644 index ca0f73fbc1..0000000000 --- a/files/vi/learn/dong_gop_cho_khu_vuc_hoc_tap_tren_mdn/index.html +++ /dev/null @@ -1,83 +0,0 @@ ---- -title: Cách đóng góp cho Khu vực học tập trên MDN -slug: Learn/Dong_gop_cho_khu_vuc_hoc_tap_tren_MDN -translation_of: Learn/How_to_contribute ---- -
{{LearnSidebar}}
- -

Nếu bạn đang ở đây lần đầu tiên hoặc sau khi tìm kiếm sâu, có thể là vì bạn quan tâm đến việc đóng góp cho Khu vực học tập MDN. Tin tốt đấy!

- -

Trên trang này, bạn sẽ tìm thấy mọi thứ bạn cần để bắt đầu giúp cải thiện nội dung học tập của MDN. Có rất nhiều thứ bạn có thể làm, tùy thuộc vào bạn có bao nhiêu thời gian và bạn là người mới bắt đầu, nhà phát triển web hoặc giáo viên.

- -
-

Lưu ý: Bạn có thể tìm thấy hướng dẫn để viết bài viết về khu vực học tập mới tại Cách viết bài viết để giúp mọi người tìm hiểu về Web.

-
- -

Tìm các tác vụ cụ thể

- -

A common way that people contribute to the Learning Area is to read the articles, fix typos, and suggest improvements. We also welcome you to add examples to our GitHub repo, and get in touch with us if you want to ask what else needs to be done.

- -

Contributing is a great way to have some fun while learning new stuff. If you ever feel lost or have questions, don't hesitate to reach us on the Learning Area Discourse thread or IRC channel (see at the bottom of this page for details). Chris Mills is the topic driver for the Learning Area — you could also try pinging him directly.

- -

The following sections provide some general ideas of the types of tasks you can do.

- -

I'm a beginner

- -

That's awesome! Beginners are very important and valuable for creating and giving feedback on learning material. You have a unique perspective on these articles as a member of their target audience, which can make you an invaluable member of our team. Indeed, if you're using one of our articles to learn something and you get stuck, or find the article confusing in some way, you can either fix it or let us know about the problem so we can be sure it gets fixed.

- -

Here are some suggested ways you can contribute:

- -
-
Add tags to our articles (5 min)
-
Tagging MDN content is one of the easiest ways to contribute to MDN. As many of our features use tags to help present information in context, helping with tagging is a very valuable contribution. Take a look at the lists of glossary entries and learning articles without any tags to get started.
-
Read and review a glossary entry (5 min)
-
As a beginner, we need your fresh eyes looking at our content. If you find a glossary entry hard to understand, it means that entry needs to be improved. Feel free to make any changes you think are necessary. If you do not think you have the proper skill to edit the entry yourself, at least tell us on our mailing list.
-
Write a new glossary entry (20 minutes)
-
This is the most effective way to learn something new. Pick a concept you want to understand, and as you learn about it, write a glossary entry about it. Explaining something to others is a great way to "cement" the knowledge in your brain, and to help you make sense of things yourself, all while helping other people. Everybody wins!
-
Read and review a learning article (2 hours)
-
This is very much like reviewing glossary entries (see above); it just takes more time, since these articles are typically quite a bit longer.
-
- -

I'm a web developer

- -

Fantastic! Your technical skills are just what we need to be sure we provide technically accurate content for beginners. As this specific part of MDN is dedicated to learning the Web, be sure your explanations are as simple as possible, without being so simple that they're not useful. It's more important to be understandable than to be overly precise.

- -
-
Read and review a glossary entry (5 min)
-
As a web developer, we need you to make sure our content is technically accurate without being too pedantic. Feel free to make any changes you think are necessary. If you want to discuss the content before editing, ping us on our mailing list or IRC channel.
-
Write a new glossary entry (20 minutes)
-
Clarifying technical jargon is a very good way to learn and be both technically accurate and simple. Beginners will thank you for that. We have many undefined terms which need your attention. Pick one and you're good to go.
-
Read and review a learning article (2 hours)
-
This is the same thing as reviewing a glossary entry (see above); it just takes a bit more time as those articles are quite a bit longer.
-
Write a new learning article (4 hours or more)
-
MDN is lacking simple straightforward articles about using web technologies (HTML, CSS, JavaScript, etc). We also have old content on MDN that deserves to be reviewed and reshaped. Push your skills to the limit to make web technologies usable even by beginners.
-
Create exercises, code samples or interactive learning tools (? hours)
-
All our learning articles require what we call "active learning" materials, because people learn best by doing something themselves. Such materials are exercises or interactive content that help a user to apply and manipulate the concepts detailed in an article. There are many possible ways to make active learning content, from creating code samples with JSFiddle or similar, to building fully hackable interactive content with Thimble. Unleash your creativity!
-
- -

I'm a teacher

- -

MDN has a long history of technical excellence, but we lack depth of understanding of the best way to teach concepts to newcomers. This is where we need you, as a teacher or educator. You can help us ensure that our materials provide a good, practical educational track for our readers.

- -
-
Read and review a glossary entry (15 min)
-
Check out a glossary entry and feel free to make any changes you think are necessary. If you want to discuss the content before editing, ping us on our mailing list or IRC channel.
-
Write a new glossary entry (1 hour)
-
Clear, simple definitions of terms and basic overviews of concepts in the glossary are critical in meeting beginners' needs. Your experience as an educator can help create excellent glossary entries; we have many undefined terms which need your attention. Pick one and go for it.
-
Add illustrations and/or schematics to articles (1 hour)
-
As you might know, illustrations are an invaluable part of any learning content. This is something we often lack on MDN and your skills can make a difference in that area. Check out the articles that lack illustrative content and pick one you'd like to create graphics for.
-
Read and review a learning article (2 hours)
-
This is similar to reviewing glossary entries (see above), but it requires more time since the articles are typically quite a bit longer.
-
Write a new learning article (4 hours)
-
We need simple, straightforward articles about the Web ecosystem and other functional topics around it. Since these learning articles need to be educational rather than trying to literally cover everything there is to know, your experience in knowing what to cover and how will be a great asset.
-
Create exercises, quizzes or interactive learning tools (? hours)
-
All our learning articles require "active learning" materials. Such materials are exercises or interactive content which help a user learn to use and expand upon the concepts detailed in an article. There are lots of things you can do here, from creating quizzes to building fully hackable interactive content with Thimble. Unleash your creativity!
-
Create learning pathways (? hours)
-
In order to provide progressive and comprehensible tutorials, we need to shape our content into pathways. It's a way to gather existing content and figure out what is missing to create a learning article to write.
-
- -

See also

- - diff --git a/files/vi/learn/forms/index.html b/files/vi/learn/forms/index.html new file mode 100644 index 0000000000..5b0215a43c --- /dev/null +++ b/files/vi/learn/forms/index.html @@ -0,0 +1,101 @@ +--- +title: HTML forms +slug: Learn/HTML/Forms +tags: + - Beginner + - Featured + - Forms + - Guide + - HTML + - Landing + - Learn + - NeedsTranslation + - TopicStub + - Web +translation_of: Learn/Forms +--- +
{{LearnSidebar}}
+ +

This module provides a series of articles that will help you master HTML forms. HTML forms are a very powerful tool for interacting with users; however, for historical and technical reasons, it's not always obvious how to use them to their full potential. In this guide, we'll cover all aspects of HTML forms, from structure to styling, from data handling to custom widgets.

+ +

Prerequisites

+ +

Before starting this module, you should at least work through our Introduction to HTML. At this point you should find the {{anch("Basic guides")}} easy to understand, and also be able to make use of our Native form widgets guide.

+ +

The rest of the module however is a bit more advanced — it is easy to put form widgets on a page, but you can't actually do much with them without using some advanced form features, CSS, and JavaScript. Therefore, before you look at the other sections we'd recommend that you go away and learn some CSS and JavaScript first.

+ +

The above text is a good indicator as to why we've put web forms into its own standalone module, rather than trying to mix bits of it into the HTML, CSS, and JavaScript topic areas — form elements are more complex than most other HTML elements, and they also require a close marriage of related CSS and JavaScript techniques to get the most out of them.

+ +
+

Note: If you are working on a computer/tablet/other device where you don't have the ability to create your own files, you could try out (most of) the code examples in an online coding program such as JSBin or Thimble.

+
+ +

Hướng dẫn mở đầu

+ +
+
Your first HTML form
+
The first article in our series provides your very first experience of creating an HTML form, including designing a simple form, implementing it using the right HTML elements, adding some very simple styling via CSS, and how data is sent to a server.
+
How to structure an HTML form
+
With the basics out of the way, we now look in more detail at the elements used to provide structure and meaning to the different parts of a form.
+
+ +

Các form controls khác nhau

+ +

Basic native form controls
+ Chúng ta bắt đầu phần này bằng việc nhìn vào chức năng khả dụng của của kiểu {{htmlelement("input")}} HTML, tìm hiểu những tùy chọn có thể sử dụng để thu thập các kiểu data khác nhau.

+ +

The HTML5 input types
+ Tại đây chúng ta sẽ tiếp tục đi sâu vào phần tử <input>, tìm hiểu về các kiểu input mới được thêm trong HTML5, và các loại UI controls khác nhau và cách thu thập dữ liệu nâng cao mà chúng làm được. Thêm nữa, chúng ta sẽ xem qua phần tử {{htmlelement('output')}}.

+ +

Other form controls
+ Tiếp sau đó chúng ta sẽ tìm hiểu về các non-<input> form controls và các công cụ có liên quan, ví dụ {{htmlelement('select')}}, {{htmlelement('textarea')}}, {{htmlelement('meter')}}, and {{htmlelement('progress')}}.

+ +

Form styling guides

+ +
+
+
Styling web forms
+
This article provides an introduction to styling forms with CSS, including all the basics you might need to know for basic styling tasks.
+
Advanced form styling
+
Here we look at some more advanced form styling techniques that need to be used when trying to deal with some of the more difficult-to-style form elements.
+
UI pseudo-classes
+
An introduction to the UI pseudo-classes enabling HTML form controls to be targeted based on their current state.
+
+ +

Kiểm tra và gửi dữ liệu form

+ +
+
Sending form data
+
Bài viết này cho biết điều gì sẽ xảy ra khi user submit một cái form - dữ liệu sẽ đi đâu, và làm sao chúng ta có thẻ xử lý dữ liệu đó khi nó đi đến đó? Chúng ta cũng nhìn vào một số vấn đề về bảo mật liên quan đến việc gửi dữ liệu đi.
+
Client-side form validation
+
Gửi dữ liệu đi thôi là chưa đủ - chúng ta cũng cần phải đảm bảo rằng dữ liêu mà user điền vào form là đúng định dạng chúng ta mong muốn để xử lý được, và chúng sẽ không làm hư hại ứng dụng của chúng ta. We also want to help our users to fill out our forms correctly and don't get frustrated when trying to use our apps. Form validation helps us achieve these goals — this article tells you what you need to know.
+
+ +

Advanced guides

+ +
+
Làm sao để xây dựng các form widgets tùy chỉnh 
+
Bạn sẽ bắt gặp các trường hợp mà form tích hợp trong cùng file là không đủ đáp ứng nhu cầu của bạn, ví dụ lý do về styling hay chức năng. Trong các trường hợp này, bạn có thể sẽ cần xây dựng widget form của riêng bạn dựa trên HTML thô. Bài viết này sẽ giải thích làm cách nào đạt được điều đó, và các điều cần cân nhắc khi bạn làm nó, với một case study thực tế.
+
Gửi form bằng JavaScript
+
This article looks at ways to use a form to assemble an HTTP request and send it via custom JavaScript, rather than standard form submission. It also looks at why you'd want to do this, and the implications of doing so. (See also Using FormData objects.)
+
HTML forms in legacy browsers
+
Article covering feature detection, etc. This should be redirected to the cross browser testing module, as the same stuff is covered better there.
+
+ +

Form styling guides

+ +
+
Styling HTML forms
+
This article provides an introduction to styling forms with CSS, including all the basics you might need to know for basic styling tasks.
+
Advanced styling for HTML forms
+
Here we look at some more advanced form styling techniques that need to be used when trying to deal with some of the more difficult-to-style elements.
+
Property compatibility table for form widgets
+
This last article provides a handy reference allowing you to look up what CSS properties are compatible with what form elements.
+
+ +

See also

+ + diff --git "a/files/vi/learn/getting_started_with_the_web/c\303\240i_\304\221\341\272\267t_c\303\241c_ph\341\272\247n_m\341\273\201m_c\306\241_b\341\272\243n/index.html" "b/files/vi/learn/getting_started_with_the_web/c\303\240i_\304\221\341\272\267t_c\303\241c_ph\341\272\247n_m\341\273\201m_c\306\241_b\341\272\243n/index.html" deleted file mode 100644 index 0350529f25..0000000000 --- "a/files/vi/learn/getting_started_with_the_web/c\303\240i_\304\221\341\272\267t_c\303\241c_ph\341\272\247n_m\341\273\201m_c\306\241_b\341\272\243n/index.html" +++ /dev/null @@ -1,62 +0,0 @@ ---- -title: Cài đặt các phần mềm cơ bản -slug: Learn/Getting_started_with_the_web/Cài_đặt_các_phần_mềm_cơ_bản -tags: - - Công Cụ - - Học Làm Web - - Người Mới Bắt Đầu - - Thiết Lập - - Trình Duyệt Web -translation_of: Learn/Getting_started_with_the_web/Installing_basic_software ---- -
{{LearnSidebar}}
- -
-

{{NextMenu("Learn/Getting_started_with_the_web/What_will_your_website_look_like", "Learn/Getting_started_with_the_web")}}

-
- -
-

Trong bài Cài đặt các phần mềm cơ bản, chúng tôi sẽ chỉ cho bạn các công cụ cần thiết để phát triển web đơn giản, và cách cài đặt chúng.

-
- -

Các chuyên gia web sử dụng gì?

- - - -

Những công cụ nào bạn thực sự cần hiện tại?

- -

Đừng để danh sách trên làm bạn sợ, thật ra bạn không cần phải biết tất cả công cụ trên để làm quen với phát triển web. Trong bài viết này, chúng tôi chỉ yêu cầu bạn công cụ căn bản nhất: một trình soạn thảo và một vài trình duyệt web. 

- -

Cài đặt trình soạn thảo

- -

Bạn có thể đã có sẵn chương trình soạn thảo trên máy tính của bạn. Trên hệ điều hành Windows là Notepad và trên OSX là TextEdit. Linux thì khá đa dạng, còn Ubuntu thì tích hợp gedit

- -

Để phát triển web, bạn có thể cần một phần mềm tốt hơn Notepad hoặc TextEdit. Chúng tôi khuyến khích bạn nên bắt đầu với Brackets, một chương trình soạn thảo code có thể cho bạn xem trước và có gợi ý code. 

- -

Cài đặt trình duyệt web

- -

Tiếp theo chúng ta sẽ cài đặt một vài trình duyệt để hiển thị trang web của chúng ta. Bản có thể click vào các link dưới đây để tải chương trình phù hợp với hệ điều hành của bạn: 

- - - -

Trước khi tiến hành bước tiếp theo, bạn nên cài đặt ít nhất 2 trình duyệt web và kiểm tra sử dụng thử. 

- -

Cài đặt web server trên máy tính

- -

Một vài ví dụ cần bạn phải chạy web server. bạn có thể thiết lập một máy chủ trên máy tính của bạn dựa trên hướng dẫn sau: Làm thế nào để thiết lập một máy chủ cục bộ?  

- -

{{NextMenu("Learn/Getting_started_with_the_web/What_will_your_website_look_like", "Learn/Getting_started_with_the_web")}}

diff --git a/files/vi/learn/getting_started_with_the_web/installing_basic_software/index.html b/files/vi/learn/getting_started_with_the_web/installing_basic_software/index.html new file mode 100644 index 0000000000..0350529f25 --- /dev/null +++ b/files/vi/learn/getting_started_with_the_web/installing_basic_software/index.html @@ -0,0 +1,62 @@ +--- +title: Cài đặt các phần mềm cơ bản +slug: Learn/Getting_started_with_the_web/Cài_đặt_các_phần_mềm_cơ_bản +tags: + - Công Cụ + - Học Làm Web + - Người Mới Bắt Đầu + - Thiết Lập + - Trình Duyệt Web +translation_of: Learn/Getting_started_with_the_web/Installing_basic_software +--- +
{{LearnSidebar}}
+ +
+

{{NextMenu("Learn/Getting_started_with_the_web/What_will_your_website_look_like", "Learn/Getting_started_with_the_web")}}

+
+ +
+

Trong bài Cài đặt các phần mềm cơ bản, chúng tôi sẽ chỉ cho bạn các công cụ cần thiết để phát triển web đơn giản, và cách cài đặt chúng.

+
+ +

Các chuyên gia web sử dụng gì?

+ + + +

Những công cụ nào bạn thực sự cần hiện tại?

+ +

Đừng để danh sách trên làm bạn sợ, thật ra bạn không cần phải biết tất cả công cụ trên để làm quen với phát triển web. Trong bài viết này, chúng tôi chỉ yêu cầu bạn công cụ căn bản nhất: một trình soạn thảo và một vài trình duyệt web. 

+ +

Cài đặt trình soạn thảo

+ +

Bạn có thể đã có sẵn chương trình soạn thảo trên máy tính của bạn. Trên hệ điều hành Windows là Notepad và trên OSX là TextEdit. Linux thì khá đa dạng, còn Ubuntu thì tích hợp gedit

+ +

Để phát triển web, bạn có thể cần một phần mềm tốt hơn Notepad hoặc TextEdit. Chúng tôi khuyến khích bạn nên bắt đầu với Brackets, một chương trình soạn thảo code có thể cho bạn xem trước và có gợi ý code. 

+ +

Cài đặt trình duyệt web

+ +

Tiếp theo chúng ta sẽ cài đặt một vài trình duyệt để hiển thị trang web của chúng ta. Bản có thể click vào các link dưới đây để tải chương trình phù hợp với hệ điều hành của bạn: 

+ + + +

Trước khi tiến hành bước tiếp theo, bạn nên cài đặt ít nhất 2 trình duyệt web và kiểm tra sử dụng thử. 

+ +

Cài đặt web server trên máy tính

+ +

Một vài ví dụ cần bạn phải chạy web server. bạn có thể thiết lập một máy chủ trên máy tính của bạn dựa trên hướng dẫn sau: Làm thế nào để thiết lập một máy chủ cục bộ?  

+ +

{{NextMenu("Learn/Getting_started_with_the_web/What_will_your_website_look_like", "Learn/Getting_started_with_the_web")}}

diff --git a/files/vi/learn/html/forms/index.html b/files/vi/learn/html/forms/index.html deleted file mode 100644 index 5b0215a43c..0000000000 --- a/files/vi/learn/html/forms/index.html +++ /dev/null @@ -1,101 +0,0 @@ ---- -title: HTML forms -slug: Learn/HTML/Forms -tags: - - Beginner - - Featured - - Forms - - Guide - - HTML - - Landing - - Learn - - NeedsTranslation - - TopicStub - - Web -translation_of: Learn/Forms ---- -
{{LearnSidebar}}
- -

This module provides a series of articles that will help you master HTML forms. HTML forms are a very powerful tool for interacting with users; however, for historical and technical reasons, it's not always obvious how to use them to their full potential. In this guide, we'll cover all aspects of HTML forms, from structure to styling, from data handling to custom widgets.

- -

Prerequisites

- -

Before starting this module, you should at least work through our Introduction to HTML. At this point you should find the {{anch("Basic guides")}} easy to understand, and also be able to make use of our Native form widgets guide.

- -

The rest of the module however is a bit more advanced — it is easy to put form widgets on a page, but you can't actually do much with them without using some advanced form features, CSS, and JavaScript. Therefore, before you look at the other sections we'd recommend that you go away and learn some CSS and JavaScript first.

- -

The above text is a good indicator as to why we've put web forms into its own standalone module, rather than trying to mix bits of it into the HTML, CSS, and JavaScript topic areas — form elements are more complex than most other HTML elements, and they also require a close marriage of related CSS and JavaScript techniques to get the most out of them.

- -
-

Note: If you are working on a computer/tablet/other device where you don't have the ability to create your own files, you could try out (most of) the code examples in an online coding program such as JSBin or Thimble.

-
- -

Hướng dẫn mở đầu

- -
-
Your first HTML form
-
The first article in our series provides your very first experience of creating an HTML form, including designing a simple form, implementing it using the right HTML elements, adding some very simple styling via CSS, and how data is sent to a server.
-
How to structure an HTML form
-
With the basics out of the way, we now look in more detail at the elements used to provide structure and meaning to the different parts of a form.
-
- -

Các form controls khác nhau

- -

Basic native form controls
- Chúng ta bắt đầu phần này bằng việc nhìn vào chức năng khả dụng của của kiểu {{htmlelement("input")}} HTML, tìm hiểu những tùy chọn có thể sử dụng để thu thập các kiểu data khác nhau.

- -

The HTML5 input types
- Tại đây chúng ta sẽ tiếp tục đi sâu vào phần tử <input>, tìm hiểu về các kiểu input mới được thêm trong HTML5, và các loại UI controls khác nhau và cách thu thập dữ liệu nâng cao mà chúng làm được. Thêm nữa, chúng ta sẽ xem qua phần tử {{htmlelement('output')}}.

- -

Other form controls
- Tiếp sau đó chúng ta sẽ tìm hiểu về các non-<input> form controls và các công cụ có liên quan, ví dụ {{htmlelement('select')}}, {{htmlelement('textarea')}}, {{htmlelement('meter')}}, and {{htmlelement('progress')}}.

- -

Form styling guides

- -
-
-
Styling web forms
-
This article provides an introduction to styling forms with CSS, including all the basics you might need to know for basic styling tasks.
-
Advanced form styling
-
Here we look at some more advanced form styling techniques that need to be used when trying to deal with some of the more difficult-to-style form elements.
-
UI pseudo-classes
-
An introduction to the UI pseudo-classes enabling HTML form controls to be targeted based on their current state.
-
- -

Kiểm tra và gửi dữ liệu form

- -
-
Sending form data
-
Bài viết này cho biết điều gì sẽ xảy ra khi user submit một cái form - dữ liệu sẽ đi đâu, và làm sao chúng ta có thẻ xử lý dữ liệu đó khi nó đi đến đó? Chúng ta cũng nhìn vào một số vấn đề về bảo mật liên quan đến việc gửi dữ liệu đi.
-
Client-side form validation
-
Gửi dữ liệu đi thôi là chưa đủ - chúng ta cũng cần phải đảm bảo rằng dữ liêu mà user điền vào form là đúng định dạng chúng ta mong muốn để xử lý được, và chúng sẽ không làm hư hại ứng dụng của chúng ta. We also want to help our users to fill out our forms correctly and don't get frustrated when trying to use our apps. Form validation helps us achieve these goals — this article tells you what you need to know.
-
- -

Advanced guides

- -
-
Làm sao để xây dựng các form widgets tùy chỉnh 
-
Bạn sẽ bắt gặp các trường hợp mà form tích hợp trong cùng file là không đủ đáp ứng nhu cầu của bạn, ví dụ lý do về styling hay chức năng. Trong các trường hợp này, bạn có thể sẽ cần xây dựng widget form của riêng bạn dựa trên HTML thô. Bài viết này sẽ giải thích làm cách nào đạt được điều đó, và các điều cần cân nhắc khi bạn làm nó, với một case study thực tế.
-
Gửi form bằng JavaScript
-
This article looks at ways to use a form to assemble an HTTP request and send it via custom JavaScript, rather than standard form submission. It also looks at why you'd want to do this, and the implications of doing so. (See also Using FormData objects.)
-
HTML forms in legacy browsers
-
Article covering feature detection, etc. This should be redirected to the cross browser testing module, as the same stuff is covered better there.
-
- -

Form styling guides

- -
-
Styling HTML forms
-
This article provides an introduction to styling forms with CSS, including all the basics you might need to know for basic styling tasks.
-
Advanced styling for HTML forms
-
Here we look at some more advanced form styling techniques that need to be used when trying to deal with some of the more difficult-to-style elements.
-
Property compatibility table for form widgets
-
This last article provides a handy reference allowing you to look up what CSS properties are compatible with what form elements.
-
- -

See also

- - -- cgit v1.2.3-54-g00ecf From 9201e4212c57af09becda69f17c17a3a34f226c2 Mon Sep 17 00:00:00 2001 From: Florian Merz Date: Thu, 11 Feb 2021 14:51:56 +0100 Subject: unslug vi: modify --- files/vi/_redirects.txt | 62 ++ files/vi/_wikihistory.json | 824 ++++++++++----------- .../conflicting/learn/css/first_steps/index.html | 5 +- files/vi/conflicting/web/html/index.html | 3 +- .../global_objects/array/length/index.html | 3 +- .../reference/global_objects/promise/index.html | 3 +- .../web/javascript/reference/operators/index.html | 3 +- files/vi/glossary/ajax/index.html | 3 +- files/vi/glossary/algorithm/index.html | 3 +- files/vi/glossary/array/index.html | 3 +- files/vi/glossary/attribute/index.html | 3 +- files/vi/glossary/bandwidth/index.html | 3 +- files/vi/glossary/boolean/index.html | 3 +- files/vi/glossary/browser/index.html | 3 +- files/vi/glossary/cache/index.html | 3 +- files/vi/glossary/callback_function/index.html | 3 +- files/vi/glossary/cdn/index.html | 3 +- files/vi/glossary/computer_programming/index.html | 3 +- files/vi/glossary/css/index.html | 3 +- .../dynamic_programming_language/index.html | 3 +- files/vi/glossary/falsy/index.html | 3 +- files/vi/glossary/general_header/index.html | 3 +- files/vi/glossary/head/index.html | 3 +- files/vi/glossary/hoisting/index.html | 3 +- files/vi/glossary/html/index.html | 3 +- files/vi/glossary/identifier/index.html | 3 +- files/vi/glossary/index.html | 3 +- files/vi/glossary/jquery/index.html | 3 +- files/vi/glossary/json/index.html | 3 +- files/vi/glossary/metadata/index.html | 3 +- files/vi/glossary/null/index.html | 3 +- files/vi/glossary/operand/index.html | 3 +- files/vi/glossary/php/index.html | 3 +- files/vi/glossary/primitive/index.html | 3 +- files/vi/glossary/responsive_web_design/index.html | 3 +- files/vi/glossary/svg/index.html | 3 +- files/vi/glossary/truthy/index.html | 3 +- files/vi/glossary/type_conversion/index.html | 3 +- files/vi/glossary/undefined/index.html | 3 +- files/vi/glossary/xml/index.html | 3 +- .../how_does_the_internet_work/index.html | 3 +- .../set_up_a_local_testing_server/index.html | 3 +- files/vi/learn/forms/index.html | 3 +- .../installing_basic_software/index.html | 3 +- .../index.html" | 3 +- files/vi/orphaned/dom_inspector/index.html | 3 +- files/vi/orphaned/labs-tab/index.html | 3 +- .../vi/orphaned/learn/how_to_contribute/index.html | 3 +- files/vi/orphaned/mdn/community/index.html | 3 +- .../howto/create_an_mdn_account/index.html | 3 +- .../howto/do_a_technical_review/index.html | 3 +- .../howto/do_an_editorial_review/index.html | 3 +- .../baseaudiocontext/createoscillator/index.html | 3 +- .../api/htmlorforeignelement/dataset/index.html | 3 +- files/vi/web/api/navigator/sendbeacon/index.html | 3 +- files/vi/web/api/window/load_event/index.html | 3 +- .../introduction_to_the_css_box_model/index.html | 3 +- .../basic_concepts_of_grid_layout/index.html | 3 +- files/vi/web/css/url()/index.html | 3 +- .../javascript/guide/grammar_and_types/index.html | 3 +- .../web/javascript/guide/introduction/index.html | 3 +- .../reference/errors/too_much_recursion/index.html | 3 +- .../reference/global_objects/array/sort/index.html | 3 +- .../reference/global_objects/error/index.html | 3 +- 64 files changed, 599 insertions(+), 475 deletions(-) (limited to 'files/vi/learn') diff --git a/files/vi/_redirects.txt b/files/vi/_redirects.txt index 173d74da22..0a771fc06f 100644 --- a/files/vi/_redirects.txt +++ b/files/vi/_redirects.txt @@ -1,18 +1,80 @@ # FROM-URL TO-URL +/vi/docs/Bản_Kê_Khai_Cài_Đặt /vi/docs/orphaned/Bản_Kê_Khai_Cài_Đặt /vi/docs/CSS /vi/docs/Web/CSS /vi/docs/CSS/background-color /vi/docs/Web/CSS/background-color +/vi/docs/DOM_Inspector /vi/docs/orphaned/DOM_Inspector /vi/docs/HTML /vi/docs/Web/HTML +/vi/docs/Labs-tab /vi/docs/orphaned/Labs-tab /vi/docs/Learn/CSS/Introduction_to_CSS /en-US/docs/Learn/CSS/First_steps /vi/docs/Learn/CSS/Introduction_to_CSS/Box_model /en-US/docs/Learn/CSS/Building_blocks/The_box_model /vi/docs/Learn/CSS/Introduction_to_CSS/How_CSS_works /en-US/docs/Learn/CSS/First_steps/How_CSS_works /vi/docs/Learn/CSS/Introduction_to_CSS/Selectors /en-US/docs/Learn/CSS/Building_blocks/Selectors +/vi/docs/Learn/Common_questions/Internet_lam_viec_nh_the_nao /vi/docs/Learn/Common_questions/How_does_the_Internet_work +/vi/docs/Learn/Common_questions/thiet_lap_web_mang_noi_bo /vi/docs/Learn/Common_questions/set_up_a_local_testing_server +/vi/docs/Learn/Dong_gop_cho_khu_vuc_hoc_tap_tren_MDN /vi/docs/orphaned/Learn/How_to_contribute +/vi/docs/Learn/Getting_started_with_the_web/Cài_đặt_các_phần_mềm_cơ_bản /vi/docs/Learn/Getting_started_with_the_web/Installing_basic_software +/vi/docs/Learn/HTML/Forms /vi/docs/Learn/Forms +/vi/docs/MDN/Community /vi/docs/orphaned/MDN/Community /vi/docs/MDN/Contribute/Guidelines /vi/docs/MDN/Guidelines /vi/docs/MDN/Contribute/Guidelines/Writing_style_guide /vi/docs/MDN/Guidelines/Writing_style_guide +/vi/docs/MDN/Contribute/Howto/Create_an_MDN_account /vi/docs/orphaned/MDN/Contribute/Howto/Create_an_MDN_account +/vi/docs/MDN/Contribute/Howto/Do_a_technical_review /vi/docs/orphaned/MDN/Contribute/Howto/Do_a_technical_review +/vi/docs/MDN/Contribute/Howto/Do_an_editorial_review /vi/docs/orphaned/MDN/Contribute/Howto/Do_an_editorial_review /vi/docs/MDN/Contribute/Tools /vi/docs/MDN/Tools /vi/docs/MDN/Contribute/Tools/KumaScript /vi/docs/MDN/Tools/KumaScript /vi/docs/MDN/Contribute/Tools/KumaScript/Troubleshooting /vi/docs/MDN/Tools/KumaScript/Troubleshooting /vi/docs/MDN/Feedback /vi/docs/MDN/Contribute/Feedback +/vi/docs/Tu-dien-thuat-ngu /vi/docs/Glossary +/vi/docs/Tu-dien-thuat-ngu/AJAX /vi/docs/Glossary/AJAX +/vi/docs/Tu-dien-thuat-ngu/Algorithm /vi/docs/Glossary/Algorithm +/vi/docs/Tu-dien-thuat-ngu/Attribute /vi/docs/Glossary/Attribute +/vi/docs/Tu-dien-thuat-ngu/Bandwidth /vi/docs/Glossary/Bandwidth +/vi/docs/Tu-dien-thuat-ngu/Boolean /vi/docs/Glossary/Boolean +/vi/docs/Tu-dien-thuat-ngu/CDN /vi/docs/Glossary/CDN +/vi/docs/Tu-dien-thuat-ngu/CSS /vi/docs/Glossary/CSS +/vi/docs/Tu-dien-thuat-ngu/Cache /vi/docs/Glossary/Cache +/vi/docs/Tu-dien-thuat-ngu/Callback_function /vi/docs/Glossary/Callback_function +/vi/docs/Tu-dien-thuat-ngu/Computer_Programming /vi/docs/Glossary/Computer_Programming +/vi/docs/Tu-dien-thuat-ngu/Dynamic_programming_language /vi/docs/Glossary/Dynamic_programming_language +/vi/docs/Tu-dien-thuat-ngu/Falsy /vi/docs/Glossary/Falsy +/vi/docs/Tu-dien-thuat-ngu/General_header /vi/docs/Glossary/General_header +/vi/docs/Tu-dien-thuat-ngu/HTML /vi/docs/Glossary/HTML +/vi/docs/Tu-dien-thuat-ngu/Head /vi/docs/Glossary/Head +/vi/docs/Tu-dien-thuat-ngu/Hoisting /vi/docs/Glossary/Hoisting +/vi/docs/Tu-dien-thuat-ngu/Identifier /vi/docs/Glossary/Identifier +/vi/docs/Tu-dien-thuat-ngu/JSON /vi/docs/Glossary/JSON +/vi/docs/Tu-dien-thuat-ngu/Metadata /vi/docs/Glossary/Metadata +/vi/docs/Tu-dien-thuat-ngu/Null /vi/docs/Glossary/Null +/vi/docs/Tu-dien-thuat-ngu/Operand /vi/docs/Glossary/Operand +/vi/docs/Tu-dien-thuat-ngu/PHP /vi/docs/Glossary/PHP +/vi/docs/Tu-dien-thuat-ngu/Primitive /vi/docs/Glossary/Primitive +/vi/docs/Tu-dien-thuat-ngu/Responsive_web_design /vi/docs/Glossary/Responsive_web_design +/vi/docs/Tu-dien-thuat-ngu/SVG /vi/docs/Glossary/SVG +/vi/docs/Tu-dien-thuat-ngu/Truthy /vi/docs/Glossary/Truthy +/vi/docs/Tu-dien-thuat-ngu/Type_Conversion /vi/docs/Glossary/Type_Conversion +/vi/docs/Tu-dien-thuat-ngu/XML /vi/docs/Glossary/XML +/vi/docs/Tu-dien-thuat-ngu/array /vi/docs/Glossary/array +/vi/docs/Tu-dien-thuat-ngu/jQuery /vi/docs/Glossary/jQuery +/vi/docs/Tu-dien-thuat-ngu/trinh-duyet /vi/docs/Glossary/Browser +/vi/docs/Tu-dien-thuat-ngu/undefined /vi/docs/Glossary/undefined +/vi/docs/Web/API/AudioContext/createOscillator /vi/docs/Web/API/BaseAudioContext/createOscillator +/vi/docs/Web/API/HTMLElement/dataset /vi/docs/Web/API/HTMLOrForeignElement/dataset +/vi/docs/Web/API/Navigator/sendBeacon-vi /vi/docs/Web/API/Navigator/sendBeacon +/vi/docs/Web/CSS/CSS_Box_Model/Kien_thuc_co_ban_ve_css_box_model /vi/docs/Web/CSS/CSS_Box_Model/Introduction_to_the_CSS_box_model +/vi/docs/Web/CSS/CSS_Grid_Layout/tong_quan_ve_grid_layout /vi/docs/Web/CSS/CSS_Grid_Layout/Basic_Concepts_of_Grid_Layout +/vi/docs/Web/CSS/filter-function/url /vi/docs/Web/CSS/url() /vi/docs/Web/CSS/transform-function/perspective /vi/docs/Web/CSS/transform-function/perspective() +/vi/docs/Web/Events/load /vi/docs/Web/API/Window/load_event /vi/docs/Web/Guide/CSS /vi/docs/Learn/CSS +/vi/docs/Web/Guide/CSS/Getting_started /vi/docs/conflicting/Learn/CSS/First_steps /vi/docs/Web/Guide/HTML /en-US/docs/Learn/HTML +/vi/docs/Web/HTML_vi /vi/docs/conflicting/Web/HTML +/vi/docs/Web/JavaScript/Guide/Gioi-thieu /vi/docs/Web/JavaScript/Guide/Introduction +/vi/docs/Web/JavaScript/Guide/cu-phap-lap-trinh /vi/docs/Web/JavaScript/Guide/Grammar_and_types +/vi/docs/Web/JavaScript/Reference/Errors/qua_nhieu_de_quy /vi/docs/Web/JavaScript/Reference/Errors/Too_much_recursion +/vi/docs/Web/JavaScript/Reference/Global_Objects/Array/length /vi/docs/conflicting/Web/JavaScript/Reference/Global_Objects/Array/length +/vi/docs/Web/JavaScript/Reference/Global_Objects/Array/Sắp_xếp /vi/docs/Web/JavaScript/Reference/Global_Objects/Array/sort +/vi/docs/Web/JavaScript/Reference/Global_Objects/Promise/prototype /vi/docs/conflicting/Web/JavaScript/Reference/Global_Objects/Promise +/vi/docs/Web/JavaScript/Reference/Global_Objects/loi /vi/docs/Web/JavaScript/Reference/Global_Objects/Error +/vi/docs/Web/JavaScript/Reference/Operators/Arithmetic_Operators /vi/docs/conflicting/Web/JavaScript/Reference/Operators /vi/docs/en /en-US/ diff --git a/files/vi/_wikihistory.json b/files/vi/_wikihistory.json index f15e5c7f6f..3f58307eac 100644 --- a/files/vi/_wikihistory.json +++ b/files/vi/_wikihistory.json @@ -1,23 +1,4 @@ { - "Bản_Kê_Khai_Cài_Đặt": { - "modified": "2019-03-24T00:04:37.878Z", - "contributors": [ - "ethertank", - "kimkha" - ] - }, - "DOM_Inspector": { - "modified": "2019-01-16T16:31:31.933Z", - "contributors": [ - "ThornyLong" - ] - }, - "Labs-tab": { - "modified": "2019-01-16T13:28:54.736Z", - "contributors": [ - "Hakuna" - ] - }, "Learn": { "modified": "2020-07-16T22:43:49.278Z", "contributors": [ @@ -75,12 +56,6 @@ "JeffD" ] }, - "Learn/Common_questions/Internet_lam_viec_nh_the_nao": { - "modified": "2020-07-16T22:35:39.021Z", - "contributors": [ - "dev-luonglq" - ] - }, "Learn/Common_questions/What_is_a_web_server": { "modified": "2020-07-16T22:35:32.212Z", "contributors": [ @@ -88,20 +63,6 @@ "thanhvk" ] }, - "Learn/Common_questions/thiet_lap_web_mang_noi_bo": { - "modified": "2020-07-16T22:35:53.848Z", - "contributors": [ - "namphong124563", - "trannguyenhb" - ] - }, - "Learn/Dong_gop_cho_khu_vuc_hoc_tap_tren_MDN": { - "modified": "2020-07-16T22:33:47.224Z", - "contributors": [ - "SphinxKnight", - "vunamhung" - ] - }, "Learn/Front-end_web_developer": { "modified": "2020-10-22T05:39:54.725Z", "contributors": [ @@ -131,16 +92,6 @@ "vunamhung" ] }, - "Learn/Getting_started_with_the_web/Cài_đặt_các_phần_mềm_cơ_bản": { - "modified": "2020-07-16T22:34:12.264Z", - "contributors": [ - "vunamhung", - "PurpleLover", - "summerpupil", - "trannguyenhb", - "sugudkendy" - ] - }, "Learn/Getting_started_with_the_web/Dealing_with_files": { "modified": "2020-07-16T22:34:39.260Z", "contributors": [ @@ -215,13 +166,6 @@ "hoangphong15" ] }, - "Learn/HTML/Forms": { - "modified": "2020-07-16T22:21:02.351Z", - "contributors": [ - "jasonwest", - "Jeffrey_Yang" - ] - }, "Learn/HTML/Introduction_to_HTML": { "modified": "2020-07-16T22:22:54.442Z", "contributors": [ @@ -449,16 +393,6 @@ "Lungv" ] }, - "MDN/Community": { - "modified": "2019-09-11T08:00:31.400Z", - "contributors": [ - "SphinxKnight", - "wbamberg", - "dangkyokhoang", - "trongdaideveloper", - "lescarbeauleo.ll37" - ] - }, "MDN/Contribute": { "modified": "2019-03-23T22:56:25.294Z", "contributors": [ @@ -486,12 +420,6 @@ "jswisher" ] }, - "MDN/Contribute/Howto/Create_an_MDN_account": { - "modified": "2019-08-03T22:29:43.278Z", - "contributors": [ - "sonvo90" - ] - }, "MDN/Contribute/Howto/Create_and_edit_pages": { "modified": "2020-11-12T19:32:11.935Z", "contributors": [ @@ -499,21 +427,6 @@ "Vietnamese" ] }, - "MDN/Contribute/Howto/Do_a_technical_review": { - "modified": "2019-03-18T21:34:38.027Z", - "contributors": [ - "wbamberg", - "SphinxKnight", - "nguyenkien1997" - ] - }, - "MDN/Contribute/Howto/Do_an_editorial_review": { - "modified": "2019-03-18T21:31:03.863Z", - "contributors": [ - "wbamberg", - "PurpleLover" - ] - }, "MDN/Contribute/Howto/Tag": { "modified": "2019-07-09T17:34:43.609Z", "contributors": [ @@ -600,215 +513,6 @@ "cubi.koj" ] }, - "Tu-dien-thuat-ngu": { - "modified": "2020-07-07T11:10:26.504Z", - "contributors": [ - "AMAZALK", - "SphinxKnight", - "wbamberg", - "dogeblossom", - "pierreneter" - ] - }, - "Tu-dien-thuat-ngu/AJAX": { - "modified": "2019-03-23T22:03:39.351Z", - "contributors": [ - "PurpleLover", - "HoangLong" - ] - }, - "Tu-dien-thuat-ngu/Algorithm": { - "modified": "2019-07-04T10:59:16.462Z", - "contributors": [ - "CaMapCoChan" - ] - }, - "Tu-dien-thuat-ngu/Attribute": { - "modified": "2019-03-23T22:08:56.474Z", - "contributors": [ - "dogeblossom" - ] - }, - "Tu-dien-thuat-ngu/Bandwidth": { - "modified": "2019-03-18T21:38:06.965Z", - "contributors": [ - "LuckyBC" - ] - }, - "Tu-dien-thuat-ngu/Boolean": { - "modified": "2019-03-18T21:19:37.651Z", - "contributors": [ - "dangtu" - ] - }, - "Tu-dien-thuat-ngu/CDN": { - "modified": "2019-03-18T21:19:29.377Z", - "contributors": [ - "dangtu" - ] - }, - "Tu-dien-thuat-ngu/CSS": { - "modified": "2019-03-23T22:03:35.496Z", - "contributors": [ - "HoangLong" - ] - }, - "Tu-dien-thuat-ngu/Cache": { - "modified": "2019-03-18T21:19:31.742Z", - "contributors": [ - "dangtu" - ] - }, - "Tu-dien-thuat-ngu/Callback_function": { - "modified": "2020-09-09T06:56:52.568Z", - "contributors": [ - "HieuZenKa" - ] - }, - "Tu-dien-thuat-ngu/Computer_Programming": { - "modified": "2019-07-04T11:20:10.774Z", - "contributors": [ - "CaMapCoChan" - ] - }, - "Tu-dien-thuat-ngu/Dynamic_programming_language": { - "modified": "2020-01-21T05:07:50.519Z", - "contributors": [ - "TozyMC" - ] - }, - "Tu-dien-thuat-ngu/Falsy": { - "modified": "2019-03-18T21:42:15.228Z", - "contributors": [ - "huyennbl" - ] - }, - "Tu-dien-thuat-ngu/General_header": { - "modified": "2020-07-30T13:12:39.167Z", - "contributors": [ - "meet-robbers" - ] - }, - "Tu-dien-thuat-ngu/HTML": { - "modified": "2019-07-09T01:38:57.464Z", - "contributors": [ - "CaMapCoChan", - "SphinxKnight", - "sang247" - ] - }, - "Tu-dien-thuat-ngu/Head": { - "modified": "2019-03-18T21:34:03.824Z", - "contributors": [ - "haschema" - ] - }, - "Tu-dien-thuat-ngu/Hoisting": { - "modified": "2019-03-23T22:03:26.098Z", - "contributors": [ - "tthoa" - ] - }, - "Tu-dien-thuat-ngu/Identifier": { - "modified": "2019-09-12T07:11:51.101Z", - "contributors": [ - "PurpleLover" - ] - }, - "Tu-dien-thuat-ngu/JSON": { - "modified": "2020-03-01T08:50:15.149Z", - "contributors": [ - "jasonwest" - ] - }, - "Tu-dien-thuat-ngu/Metadata": { - "modified": "2019-09-28T03:51:43.213Z", - "contributors": [ - "PurpleLover" - ] - }, - "Tu-dien-thuat-ngu/Null": { - "modified": "2019-04-02T01:34:28.284Z", - "contributors": [ - "PurpleLover" - ] - }, - "Tu-dien-thuat-ngu/Operand": { - "modified": "2019-03-18T21:24:16.690Z", - "contributors": [ - "PurpleLover" - ] - }, - "Tu-dien-thuat-ngu/PHP": { - "modified": "2020-07-06T04:07:13.997Z", - "contributors": [ - "trhiu98" - ] - }, - "Tu-dien-thuat-ngu/Primitive": { - "modified": "2020-02-20T08:31:45.575Z", - "contributors": [ - "jasonwest", - "PurpleLover" - ] - }, - "Tu-dien-thuat-ngu/Responsive_web_design": { - "modified": "2019-03-18T21:23:52.487Z", - "contributors": [ - "dangtu", - "PurpleLover" - ] - }, - "Tu-dien-thuat-ngu/SVG": { - "modified": "2019-03-18T21:30:00.077Z", - "contributors": [ - "PurpleLover" - ] - }, - "Tu-dien-thuat-ngu/Truthy": { - "modified": "2019-03-18T21:14:14.286Z", - "contributors": [ - "PurpleLover" - ] - }, - "Tu-dien-thuat-ngu/Type_Conversion": { - "modified": "2019-03-18T21:14:14.787Z", - "contributors": [ - "PurpleLover" - ] - }, - "Tu-dien-thuat-ngu/XML": { - "modified": "2019-04-02T00:32:39.662Z", - "contributors": [ - "PurpleLover" - ] - }, - "Tu-dien-thuat-ngu/array": { - "modified": "2019-03-23T22:51:42.901Z", - "contributors": [ - "pierreneter" - ] - }, - "Tu-dien-thuat-ngu/jQuery": { - "modified": "2020-06-12T00:19:33.980Z", - "contributors": [ - "MinhDT" - ] - }, - "Tu-dien-thuat-ngu/trinh-duyet": { - "modified": "2019-03-18T21:27:51.112Z", - "contributors": [ - "trongthanh" - ] - }, - "Tu-dien-thuat-ngu/undefined": { - "modified": "2020-11-05T07:13:34.835Z", - "contributors": [ - "lamvanngoankl", - "duongdnh", - "dzungnait" - ] - }, "Web": { "modified": "2020-09-07T08:56:40.087Z", "contributors": [ @@ -841,12 +545,6 @@ "ffxsam" ] }, - "Web/API/AudioContext/createOscillator": { - "modified": "2019-03-23T22:10:18.020Z", - "contributors": [ - "deschutron" - ] - }, "Web/API/Canvas_API": { "modified": "2019-10-21T22:35:24.820Z", "contributors": [ @@ -929,12 +627,6 @@ "namnt2203" ] }, - "Web/API/HTMLElement/dataset": { - "modified": "2020-10-15T22:21:54.914Z", - "contributors": [ - "dangtu" - ] - }, "Web/API/HTMLFormElement": { "modified": "2020-10-15T22:23:32.942Z", "contributors": [ @@ -959,12 +651,6 @@ "NgDTien" ] }, - "Web/API/Navigator/sendBeacon-vi": { - "modified": "2020-10-15T22:30:31.004Z", - "contributors": [ - "hta218" - ] - }, "Web/API/Node": { "modified": "2019-03-23T22:48:37.272Z", "contributors": [ @@ -1112,12 +798,6 @@ "Web/CSS/CSS_Box_Model": { "modified": "2020-07-02T02:43:31.905Z" }, - "Web/CSS/CSS_Box_Model/Kien_thuc_co_ban_ve_css_box_model": { - "modified": "2020-07-26T20:10:53.236Z", - "contributors": [ - "luongvanphuc" - ] - }, "Web/CSS/CSS_Grid_Layout": { "modified": "2020-09-05T02:57:16.998Z", "contributors": [ @@ -1125,15 +805,6 @@ "trannguyenhb" ] }, - "Web/CSS/CSS_Grid_Layout/tong_quan_ve_grid_layout": { - "modified": "2019-10-10T16:32:33.519Z", - "contributors": [ - "thaovy231011", - "graceoflives", - "ThuanChung", - "trannguyenhb" - ] - }, "Web/CSS/CSS_Transitions": { "modified": "2019-03-18T21:17:41.766Z", "contributors": [ @@ -1177,12 +848,6 @@ "alattalatta" ] }, - "Web/CSS/filter-function/url": { - "modified": "2019-06-25T00:21:32.737Z", - "contributors": [ - "quangnguyen3499" - ] - }, "Web/CSS/flex": { "modified": "2019-03-23T22:06:01.834Z", "contributors": [ @@ -1237,13 +902,6 @@ "chrisdavidmills" ] }, - "Web/Events/load": { - "modified": "2019-04-30T13:56:43.861Z", - "contributors": [ - "wbamberg", - "tinhocsoctrang" - ] - }, "Web/Guide": { "modified": "2019-04-18T16:41:12.742Z", "contributors": [ @@ -1259,12 +917,6 @@ "Lyn203" ] }, - "Web/Guide/CSS/Getting_started": { - "modified": "2019-03-23T22:41:47.576Z", - "contributors": [ - "wjinca" - ] - }, "Web/Guide/HTML/HTML5": { "modified": "2019-06-28T06:02:15.769Z", "contributors": [ @@ -1332,13 +984,6 @@ "nguyenhavy280" ] }, - "Web/HTML_vi": { - "modified": "2019-09-10T15:30:17.653Z", - "contributors": [ - "SphinxKnight", - "monodyle" - ] - }, "Web/HTTP": { "modified": "2020-06-02T02:12:20.369Z", "contributors": [ @@ -1448,13 +1093,6 @@ "vietthangml3" ] }, - "Web/JavaScript/Guide/Gioi-thieu": { - "modified": "2020-03-12T19:42:05.017Z", - "contributors": [ - "ldhnam", - "pierreneter" - ] - }, "Web/JavaScript/Guide/Iterators_and_Generators": { "modified": "2020-03-12T19:48:55.506Z", "contributors": [ @@ -1512,15 +1150,6 @@ "quytran" ] }, - "Web/JavaScript/Guide/cu-phap-lap-trinh": { - "modified": "2020-03-12T19:42:06.926Z", - "contributors": [ - "jasonwest", - "mrbean", - "ldhnam", - "pierreneter" - ] - }, "Web/JavaScript/Memory_Management": { "modified": "2020-03-12T19:48:37.281Z", "contributors": [ @@ -1581,12 +1210,6 @@ "Lisa9820727170617" ] }, - "Web/JavaScript/Reference/Errors/qua_nhieu_de_quy": { - "modified": "2020-03-12T19:46:27.274Z", - "contributors": [ - "tuanticker" - ] - }, "Web/JavaScript/Reference/Functions": { "modified": "2020-03-12T19:45:38.625Z", "contributors": [ @@ -1636,13 +1259,6 @@ "teoli" ] }, - "Web/JavaScript/Reference/Global_Objects/Array/\blength": { - "modified": "2020-10-15T22:08:30.308Z", - "contributors": [ - "quangnguyen3499", - "dothanhlam" - ] - }, "Web/JavaScript/Reference/Global_Objects/Array/Reduce": { "modified": "2020-10-15T22:08:11.278Z", "contributors": [ @@ -1656,14 +1272,6 @@ "anhnc" ] }, - "Web/JavaScript/Reference/Global_Objects/Array/Sắp_xếp": { - "modified": "2020-10-15T22:05:03.635Z", - "contributors": [ - "trongthanh", - "PurpleLover", - "summerpupil" - ] - }, "Web/JavaScript/Reference/Global_Objects/Array/concat": { "modified": "2020-10-15T22:08:22.825Z", "contributors": [ @@ -2095,12 +1703,6 @@ "WTSKelly" ] }, - "Web/JavaScript/Reference/Global_Objects/Promise/prototype": { - "modified": "2020-10-15T21:50:15.823Z", - "contributors": [ - "dominhhai" - ] - }, "Web/JavaScript/Reference/Global_Objects/RegExp": { "modified": "2020-10-15T22:02:37.288Z", "contributors": [ @@ -2184,13 +1786,6 @@ "PurpleLover" ] }, - "Web/JavaScript/Reference/Global_Objects/loi": { - "modified": "2020-10-15T22:01:36.057Z", - "contributors": [ - "Dr.Tan", - "bonjourimcam" - ] - }, "Web/JavaScript/Reference/Iteration_protocols": { "modified": "2020-05-26T04:51:45.802Z", "contributors": [ @@ -2203,13 +1798,6 @@ "myakura" ] }, - "Web/JavaScript/Reference/Operators/Arithmetic_Operators": { - "modified": "2020-10-15T22:08:01.208Z", - "contributors": [ - "quytran", - "PurpleLover" - ] - }, "Web/JavaScript/Reference/Operators/Conditional_Operator": { "modified": "2020-10-15T22:14:02.394Z", "contributors": [ @@ -2354,5 +1942,417 @@ "summerpupil", "thonggtcc" ] + }, + "orphaned/Bản_Kê_Khai_Cài_Đặt": { + "modified": "2019-03-24T00:04:37.878Z", + "contributors": [ + "ethertank", + "kimkha" + ] + }, + "orphaned/DOM_Inspector": { + "modified": "2019-01-16T16:31:31.933Z", + "contributors": [ + "ThornyLong" + ] + }, + "orphaned/Labs-tab": { + "modified": "2019-01-16T13:28:54.736Z", + "contributors": [ + "Hakuna" + ] + }, + "Learn/Common_questions/How_does_the_Internet_work": { + "modified": "2020-07-16T22:35:39.021Z", + "contributors": [ + "dev-luonglq" + ] + }, + "Learn/Common_questions/set_up_a_local_testing_server": { + "modified": "2020-07-16T22:35:53.848Z", + "contributors": [ + "namphong124563", + "trannguyenhb" + ] + }, + "orphaned/Learn/How_to_contribute": { + "modified": "2020-07-16T22:33:47.224Z", + "contributors": [ + "SphinxKnight", + "vunamhung" + ] + }, + "Learn/Getting_started_with_the_web/Installing_basic_software": { + "modified": "2020-07-16T22:34:12.264Z", + "contributors": [ + "vunamhung", + "PurpleLover", + "summerpupil", + "trannguyenhb", + "sugudkendy" + ] + }, + "Learn/Forms": { + "modified": "2020-07-16T22:21:02.351Z", + "contributors": [ + "jasonwest", + "Jeffrey_Yang" + ] + }, + "orphaned/MDN/Community": { + "modified": "2019-09-11T08:00:31.400Z", + "contributors": [ + "SphinxKnight", + "wbamberg", + "dangkyokhoang", + "trongdaideveloper", + "lescarbeauleo.ll37" + ] + }, + "orphaned/MDN/Contribute/Howto/Create_an_MDN_account": { + "modified": "2019-08-03T22:29:43.278Z", + "contributors": [ + "sonvo90" + ] + }, + "orphaned/MDN/Contribute/Howto/Do_a_technical_review": { + "modified": "2019-03-18T21:34:38.027Z", + "contributors": [ + "wbamberg", + "SphinxKnight", + "nguyenkien1997" + ] + }, + "orphaned/MDN/Contribute/Howto/Do_an_editorial_review": { + "modified": "2019-03-18T21:31:03.863Z", + "contributors": [ + "wbamberg", + "PurpleLover" + ] + }, + "Glossary/AJAX": { + "modified": "2019-03-23T22:03:39.351Z", + "contributors": [ + "PurpleLover", + "HoangLong" + ] + }, + "Glossary/Algorithm": { + "modified": "2019-07-04T10:59:16.462Z", + "contributors": [ + "CaMapCoChan" + ] + }, + "Glossary/array": { + "modified": "2019-03-23T22:51:42.901Z", + "contributors": [ + "pierreneter" + ] + }, + "Glossary/Attribute": { + "modified": "2019-03-23T22:08:56.474Z", + "contributors": [ + "dogeblossom" + ] + }, + "Glossary/Bandwidth": { + "modified": "2019-03-18T21:38:06.965Z", + "contributors": [ + "LuckyBC" + ] + }, + "Glossary/Boolean": { + "modified": "2019-03-18T21:19:37.651Z", + "contributors": [ + "dangtu" + ] + }, + "Glossary/Cache": { + "modified": "2019-03-18T21:19:31.742Z", + "contributors": [ + "dangtu" + ] + }, + "Glossary/Callback_function": { + "modified": "2020-09-09T06:56:52.568Z", + "contributors": [ + "HieuZenKa" + ] + }, + "Glossary/CDN": { + "modified": "2019-03-18T21:19:29.377Z", + "contributors": [ + "dangtu" + ] + }, + "Glossary/Computer_Programming": { + "modified": "2019-07-04T11:20:10.774Z", + "contributors": [ + "CaMapCoChan" + ] + }, + "Glossary/CSS": { + "modified": "2019-03-23T22:03:35.496Z", + "contributors": [ + "HoangLong" + ] + }, + "Glossary/Dynamic_programming_language": { + "modified": "2020-01-21T05:07:50.519Z", + "contributors": [ + "TozyMC" + ] + }, + "Glossary/Falsy": { + "modified": "2019-03-18T21:42:15.228Z", + "contributors": [ + "huyennbl" + ] + }, + "Glossary/General_header": { + "modified": "2020-07-30T13:12:39.167Z", + "contributors": [ + "meet-robbers" + ] + }, + "Glossary/Head": { + "modified": "2019-03-18T21:34:03.824Z", + "contributors": [ + "haschema" + ] + }, + "Glossary/Hoisting": { + "modified": "2019-03-23T22:03:26.098Z", + "contributors": [ + "tthoa" + ] + }, + "Glossary/HTML": { + "modified": "2019-07-09T01:38:57.464Z", + "contributors": [ + "CaMapCoChan", + "SphinxKnight", + "sang247" + ] + }, + "Glossary/Identifier": { + "modified": "2019-09-12T07:11:51.101Z", + "contributors": [ + "PurpleLover" + ] + }, + "Glossary": { + "modified": "2020-07-07T11:10:26.504Z", + "contributors": [ + "AMAZALK", + "SphinxKnight", + "wbamberg", + "dogeblossom", + "pierreneter" + ] + }, + "Glossary/jQuery": { + "modified": "2020-06-12T00:19:33.980Z", + "contributors": [ + "MinhDT" + ] + }, + "Glossary/JSON": { + "modified": "2020-03-01T08:50:15.149Z", + "contributors": [ + "jasonwest" + ] + }, + "Glossary/Metadata": { + "modified": "2019-09-28T03:51:43.213Z", + "contributors": [ + "PurpleLover" + ] + }, + "Glossary/Null": { + "modified": "2019-04-02T01:34:28.284Z", + "contributors": [ + "PurpleLover" + ] + }, + "Glossary/Operand": { + "modified": "2019-03-18T21:24:16.690Z", + "contributors": [ + "PurpleLover" + ] + }, + "Glossary/PHP": { + "modified": "2020-07-06T04:07:13.997Z", + "contributors": [ + "trhiu98" + ] + }, + "Glossary/Primitive": { + "modified": "2020-02-20T08:31:45.575Z", + "contributors": [ + "jasonwest", + "PurpleLover" + ] + }, + "Glossary/Responsive_web_design": { + "modified": "2019-03-18T21:23:52.487Z", + "contributors": [ + "dangtu", + "PurpleLover" + ] + }, + "Glossary/SVG": { + "modified": "2019-03-18T21:30:00.077Z", + "contributors": [ + "PurpleLover" + ] + }, + "Glossary/Browser": { + "modified": "2019-03-18T21:27:51.112Z", + "contributors": [ + "trongthanh" + ] + }, + "Glossary/Truthy": { + "modified": "2019-03-18T21:14:14.286Z", + "contributors": [ + "PurpleLover" + ] + }, + "Glossary/Type_Conversion": { + "modified": "2019-03-18T21:14:14.787Z", + "contributors": [ + "PurpleLover" + ] + }, + "Glossary/undefined": { + "modified": "2020-11-05T07:13:34.835Z", + "contributors": [ + "lamvanngoankl", + "duongdnh", + "dzungnait" + ] + }, + "Glossary/XML": { + "modified": "2019-04-02T00:32:39.662Z", + "contributors": [ + "PurpleLover" + ] + }, + "Web/API/BaseAudioContext/createOscillator": { + "modified": "2019-03-23T22:10:18.020Z", + "contributors": [ + "deschutron" + ] + }, + "Web/API/HTMLOrForeignElement/dataset": { + "modified": "2020-10-15T22:21:54.914Z", + "contributors": [ + "dangtu" + ] + }, + "Web/API/Navigator/sendBeacon": { + "modified": "2020-10-15T22:30:31.004Z", + "contributors": [ + "hta218" + ] + }, + "Web/CSS/CSS_Box_Model/Introduction_to_the_CSS_box_model": { + "modified": "2020-07-26T20:10:53.236Z", + "contributors": [ + "luongvanphuc" + ] + }, + "Web/CSS/CSS_Grid_Layout/Basic_Concepts_of_Grid_Layout": { + "modified": "2019-10-10T16:32:33.519Z", + "contributors": [ + "thaovy231011", + "graceoflives", + "ThuanChung", + "trannguyenhb" + ] + }, + "Web/API/Window/load_event": { + "modified": "2019-04-30T13:56:43.861Z", + "contributors": [ + "wbamberg", + "tinhocsoctrang" + ] + }, + "conflicting/Web/HTML": { + "modified": "2019-09-10T15:30:17.653Z", + "contributors": [ + "SphinxKnight", + "monodyle" + ] + }, + "Web/JavaScript/Guide/Grammar_and_types": { + "modified": "2020-03-12T19:42:06.926Z", + "contributors": [ + "jasonwest", + "mrbean", + "ldhnam", + "pierreneter" + ] + }, + "Web/JavaScript/Guide/Introduction": { + "modified": "2020-03-12T19:42:05.017Z", + "contributors": [ + "ldhnam", + "pierreneter" + ] + }, + "Web/JavaScript/Reference/Errors/Too_much_recursion": { + "modified": "2020-03-12T19:46:27.274Z", + "contributors": [ + "tuanticker" + ] + }, + "conflicting/Web/JavaScript/Reference/Global_Objects/Array/length": { + "modified": "2020-10-15T22:08:30.308Z", + "contributors": [ + "quangnguyen3499", + "dothanhlam" + ] + }, + "Web/JavaScript/Reference/Global_Objects/Array/sort": { + "modified": "2020-10-15T22:05:03.635Z", + "contributors": [ + "trongthanh", + "PurpleLover", + "summerpupil" + ] + }, + "Web/JavaScript/Reference/Global_Objects/Error": { + "modified": "2020-10-15T22:01:36.057Z", + "contributors": [ + "Dr.Tan", + "bonjourimcam" + ] + }, + "Web/CSS/url()": { + "modified": "2019-06-25T00:21:32.737Z", + "contributors": [ + "quangnguyen3499" + ] + }, + "conflicting/Learn/CSS/First_steps": { + "modified": "2019-03-23T22:41:47.576Z", + "contributors": [ + "wjinca" + ] + }, + "conflicting/Web/JavaScript/Reference/Global_Objects/Promise": { + "modified": "2020-10-15T21:50:15.823Z", + "contributors": [ + "dominhhai" + ] + }, + "conflicting/Web/JavaScript/Reference/Operators": { + "modified": "2020-10-15T22:08:01.208Z", + "contributors": [ + "quytran", + "PurpleLover" + ] } } \ No newline at end of file diff --git a/files/vi/conflicting/learn/css/first_steps/index.html b/files/vi/conflicting/learn/css/first_steps/index.html index 2bfc5c76bb..523fc257b0 100644 --- a/files/vi/conflicting/learn/css/first_steps/index.html +++ b/files/vi/conflicting/learn/css/first_steps/index.html @@ -1,10 +1,10 @@ --- title: Getting started with CSS -slug: Web/Guide/CSS/Getting_started +slug: conflicting/Learn/CSS/First_steps tags: - Beginner - CSS - - 'CSS:Getting_Started' + - CSS:Getting_Started - Guide - Needs - NeedsBeginnerUpdate @@ -14,6 +14,7 @@ tags: - Web translation_of: Learn/CSS/First_steps translation_of_original: Web/Guide/CSS/Getting_started +original_slug: Web/Guide/CSS/Getting_started ---

This tutorial introduces you to the basic features and language (the syntax) for Cascading Style Sheets (CSS). You use CSS to change the look of a structured document, such as a web page. The tutorial also includes sample exercises you can try on your own computer to see the effects of CSS and features that work in modern browsers.

The tutorial is for beginners and anyone who would like to review the basics of CSS. If you have more experience with CSS, the CSS main page lists more advanced resources.

diff --git a/files/vi/conflicting/web/html/index.html b/files/vi/conflicting/web/html/index.html index 0b57e8194c..fbaa7abbf3 100644 --- a/files/vi/conflicting/web/html/index.html +++ b/files/vi/conflicting/web/html/index.html @@ -1,7 +1,8 @@ --- title: HTML -slug: Web/HTML_vi +slug: conflicting/Web/HTML translation_of: Web/HTML +original_slug: Web/HTML_vi ---
{{HTMLSidebar}}
diff --git a/files/vi/conflicting/web/javascript/reference/global_objects/array/length/index.html b/files/vi/conflicting/web/javascript/reference/global_objects/array/length/index.html index 01186b015a..8a939194ca 100644 --- a/files/vi/conflicting/web/javascript/reference/global_objects/array/length/index.html +++ b/files/vi/conflicting/web/javascript/reference/global_objects/array/length/index.html @@ -1,7 +1,8 @@ --- title: Array.length -slug: "Web/JavaScript/Reference/Global_Objects/Array/\blength" +slug: conflicting/Web/JavaScript/Reference/Global_Objects/Array/length translation_of: Web/JavaScript/Reference/Global_Objects/Array/length +original_slug: "Web/JavaScript/Reference/Global_Objects/Array/\blength" ---
{{JSRef}}
diff --git a/files/vi/conflicting/web/javascript/reference/global_objects/promise/index.html b/files/vi/conflicting/web/javascript/reference/global_objects/promise/index.html index 9fb94f4154..5fda2aba9f 100644 --- a/files/vi/conflicting/web/javascript/reference/global_objects/promise/index.html +++ b/files/vi/conflicting/web/javascript/reference/global_objects/promise/index.html @@ -1,8 +1,9 @@ --- title: Promise.prototype -slug: Web/JavaScript/Reference/Global_Objects/Promise/prototype +slug: conflicting/Web/JavaScript/Reference/Global_Objects/Promise translation_of: Web/JavaScript/Reference/Global_Objects/Promise translation_of_original: Web/JavaScript/Reference/Global_Objects/Promise/prototype +original_slug: Web/JavaScript/Reference/Global_Objects/Promise/prototype ---
{{JSRef}}
diff --git a/files/vi/conflicting/web/javascript/reference/operators/index.html b/files/vi/conflicting/web/javascript/reference/operators/index.html index 302c6633c6..1eb6c04b76 100644 --- a/files/vi/conflicting/web/javascript/reference/operators/index.html +++ b/files/vi/conflicting/web/javascript/reference/operators/index.html @@ -1,8 +1,9 @@ --- title: Toán tử số học -slug: Web/JavaScript/Reference/Operators/Arithmetic_Operators +slug: conflicting/Web/JavaScript/Reference/Operators translation_of: Web/JavaScript/Reference/Operators translation_of_original: Web/JavaScript/Reference/Operators/Arithmetic_Operators +original_slug: Web/JavaScript/Reference/Operators/Arithmetic_Operators ---
{{jsSidebar("Operators")}}
diff --git a/files/vi/glossary/ajax/index.html b/files/vi/glossary/ajax/index.html index c111812954..ce804dea38 100644 --- a/files/vi/glossary/ajax/index.html +++ b/files/vi/glossary/ajax/index.html @@ -1,7 +1,8 @@ --- title: AJAX -slug: Tu-dien-thuat-ngu/AJAX +slug: Glossary/AJAX translation_of: Glossary/AJAX +original_slug: Tu-dien-thuat-ngu/AJAX ---

AJAX (Asynchronous {{glossary("JavaScript")}} And {{glossary("XML")}}) là một kỹ thuật lập trình kết hợp {{glossary("HTML")}}, {{glossary("CSS")}}, {{glossary("JavaScript")}}, {{glossary("DOM")}}, và đối tượng XMLHttpRequest để xây dựng các trang web phức tạp hơn. Điều mà AJAX cho phép bạn thực hiện chỉ là cập nhật một số thành phần của trang web thay vì phải tải lại toàn bộ trang. AJAX cũng cho phép bạn làm việc bất đồng bộ, có nghĩa là mã nguồn của bạn tiếp tục chạy trong khi những thành phần đó sẽ cố gắng tải lại (còn đồng bộ sẽ không cho mã nguồn của bạn chạy cho đến khi các thành phần của trang web tải lại xong).

diff --git a/files/vi/glossary/algorithm/index.html b/files/vi/glossary/algorithm/index.html index 79accd5810..93fcf4df29 100644 --- a/files/vi/glossary/algorithm/index.html +++ b/files/vi/glossary/algorithm/index.html @@ -1,9 +1,10 @@ --- title: Thuật Toán -slug: Tu-dien-thuat-ngu/Algorithm +slug: Glossary/Algorithm tags: - thuật toán translation_of: Glossary/Algorithm +original_slug: Tu-dien-thuat-ngu/Algorithm ---

Thuật toán là một chuỗi khép kín những hướng dẫn để thực hiện một chức năng.

diff --git a/files/vi/glossary/array/index.html b/files/vi/glossary/array/index.html index d701cf9623..ff005daae5 100644 --- a/files/vi/glossary/array/index.html +++ b/files/vi/glossary/array/index.html @@ -1,7 +1,8 @@ --- title: Array -slug: Tu-dien-thuat-ngu/array +slug: Glossary/array translation_of: Glossary/array +original_slug: Tu-dien-thuat-ngu/array ---

Một array (mảng) là một tập hợp sắp xếp các dữ liệu {{Glossary("primitive")}} hoặc {{Glossary("object")}}. Dựa vào các vị trí của nó trong array, mỗi item (phần tử trong mảng) dữ liệu có một số index (chỉ mục, thứ tự vị trí của các phần tử, bắt đầu từ vị trí đầu tiên có giá trị là 0), thông qua index này mà bạn có thể truy cập tới các {{glossary("giá trị")}} ({{glossary("value")}}) chứa trong mảng. {{jsxref("array")}} cũng là các đối tượng, mà nó có thể được dùng bởi nhiều phương thức khác nhau. ({{jsxref("array")}}s are also objects that can be manipulated with various {{Glossary("Method", "methods")}}.)

diff --git a/files/vi/glossary/attribute/index.html b/files/vi/glossary/attribute/index.html index 50079a0e56..8fe616d567 100644 --- a/files/vi/glossary/attribute/index.html +++ b/files/vi/glossary/attribute/index.html @@ -1,10 +1,11 @@ --- title: Thuộc tính -slug: Tu-dien-thuat-ngu/Attribute +slug: Glossary/Attribute tags: - HTML - Từ điển thuật ngữ translation_of: Glossary/Attribute +original_slug: Tu-dien-thuat-ngu/Attribute ---

Một thuộc tính mở rộng một {{Glossary("thẻ")}}, thay đổi hành vi của thẻ đó hoặc cung cấp thông tin/dữ liệu về nó. Một thuộc tính luôn luôn có dạng name=value (tên của một thuộc tính được đặt theo các thuộc tính liên quan).

diff --git a/files/vi/glossary/bandwidth/index.html b/files/vi/glossary/bandwidth/index.html index 50bee3a7cd..6db7ad3983 100644 --- a/files/vi/glossary/bandwidth/index.html +++ b/files/vi/glossary/bandwidth/index.html @@ -1,7 +1,8 @@ --- title: Bandwidth -slug: Tu-dien-thuat-ngu/Bandwidth +slug: Glossary/Bandwidth translation_of: Glossary/Bandwidth +original_slug: Tu-dien-thuat-ngu/Bandwidth ---

 

diff --git a/files/vi/glossary/boolean/index.html b/files/vi/glossary/boolean/index.html index 9d227fa486..2800146bfd 100644 --- a/files/vi/glossary/boolean/index.html +++ b/files/vi/glossary/boolean/index.html @@ -1,6 +1,6 @@ --- title: Boolean -slug: Tu-dien-thuat-ngu/Boolean +slug: Glossary/Boolean tags: - Boolean - JavaScript @@ -8,6 +8,7 @@ tags: - Ngôn ngữ lập trình - Thuật ngữ translation_of: Glossary/Boolean +original_slug: Tu-dien-thuat-ngu/Boolean ---

Trong khoa học máy tính, Boolean (phiên âm /bu-li-ờn/) là loại dữ liệu logic chỉ có giá trị true/đúng hoặc false/sai. Ví dụ, trong JavaScript, điều kiện Boolean thường sử dụng để quyết định đoạn mã nào được thực thi (như trong {{jsxref("Statements/if...else", "lệnh if")}}) hay lặp lại (trong {{jsxref("Statements/for", "vòng lặp for")}}).

diff --git a/files/vi/glossary/browser/index.html b/files/vi/glossary/browser/index.html index 147573222b..bf9179c482 100644 --- a/files/vi/glossary/browser/index.html +++ b/files/vi/glossary/browser/index.html @@ -1,10 +1,11 @@ --- title: Trình Duyệt -slug: Tu-dien-thuat-ngu/trinh-duyet +slug: Glossary/Browser tags: - Thuật ngữ - Từ điển translation_of: Glossary/Browser +original_slug: Tu-dien-thuat-ngu/trinh-duyet ---

Trình duyệt Web hay trình duyệt là một chương trình có chức năng tải và hiển thị các trang {{Glossary("World Wide Web","Web")}}, và cho phép người dùng truy cập những trang web khác thông qua {{Glossary("hyperlink","hyperlinks")}}. Trình duyệt chính là những {{Glossary("user agent")}} phổ biến nhất.

diff --git a/files/vi/glossary/cache/index.html b/files/vi/glossary/cache/index.html index d496389bba..dd5159d4ea 100644 --- a/files/vi/glossary/cache/index.html +++ b/files/vi/glossary/cache/index.html @@ -1,10 +1,11 @@ --- title: Cache -slug: Tu-dien-thuat-ngu/Cache +slug: Glossary/Cache tags: - HTTP - Thuật ngữ translation_of: Glossary/Cache +original_slug: Tu-dien-thuat-ngu/Cache ---

Cache (web cache hay HTTP cache, phiên âm /kát-sờ/) là một thành phần lưu trữ phản hồi HTTP tạm thời từ đó máy tính có thể sử dụng nó cho những yêu cầu HTTP tiếp theo miễn nó đạt được những điều kiện nhất định.

diff --git a/files/vi/glossary/callback_function/index.html b/files/vi/glossary/callback_function/index.html index 5aabc5fcc4..3692c5a6c9 100644 --- a/files/vi/glossary/callback_function/index.html +++ b/files/vi/glossary/callback_function/index.html @@ -1,7 +1,8 @@ --- title: Callback function -slug: Tu-dien-thuat-ngu/Callback_function +slug: Glossary/Callback_function translation_of: Glossary/Callback_function +original_slug: Tu-dien-thuat-ngu/Callback_function ---

Hàm gọi lại là một hàm được truyền vào một hàm khác dưới dạng đối số, sau đó được gọi bên trong hàm bên ngoài để hoàn thành một số loại quy trình hoặc hành động.  Đây là một ví dụ nhanh:

diff --git a/files/vi/glossary/cdn/index.html b/files/vi/glossary/cdn/index.html index 9f54fcb5b4..bd3bf5fff6 100644 --- a/files/vi/glossary/cdn/index.html +++ b/files/vi/glossary/cdn/index.html @@ -1,10 +1,11 @@ --- title: CDN -slug: Tu-dien-thuat-ngu/CDN +slug: Glossary/CDN tags: - Cơ sở hạ tầng - Thuật ngữ translation_of: Glossary/CDN +original_slug: Tu-dien-thuat-ngu/CDN ---

CDN (Mạng lưới Phân phối Nội dung / Content Delivery Network) là một nhóm các máy chủ phân bổ trên nhiều vị trí địa lý. Những máy chủ này chứa các bản sao dữ liệu để nó có thể cung cấp dữ liệu được yêu cầu dựa trên máy chủ gần nhất so với người-dùng-cuối tương ứng. Các CDN giúp cho dịch vụ tốc ít bị ảnh hưởng bởi lưu lượng cao.

diff --git a/files/vi/glossary/computer_programming/index.html b/files/vi/glossary/computer_programming/index.html index 27c03c6afb..abafd80811 100644 --- a/files/vi/glossary/computer_programming/index.html +++ b/files/vi/glossary/computer_programming/index.html @@ -1,9 +1,10 @@ --- title: Lập Trình Máy Tính -slug: Tu-dien-thuat-ngu/Computer_Programming +slug: Glossary/Computer_Programming tags: - Lập trình máy tính translation_of: Glossary/Computer_Programming +original_slug: Tu-dien-thuat-ngu/Computer_Programming ---

Lập trình máy tính là một quá trình xây dựng và sắp xếp một bộ gồm các hướng dẫn. Những hướng dẫn này sẽ nói cho máy tính/ phần mềm biết nó phải làm gì bằng ngôn ngữ mà máy hiểu được. Hướng dẫn được viết bằng rất nhiều ngôn ngữ, như là C++, Java, JavaScript, HTML, Python, Ruby, and Rust.

diff --git a/files/vi/glossary/css/index.html b/files/vi/glossary/css/index.html index 4c6d127406..61ef0bca16 100644 --- a/files/vi/glossary/css/index.html +++ b/files/vi/glossary/css/index.html @@ -1,7 +1,8 @@ --- title: CSS -slug: Tu-dien-thuat-ngu/CSS +slug: Glossary/CSS translation_of: Glossary/CSS +original_slug: Tu-dien-thuat-ngu/CSS ---

CSS (Cascading Style Sheets) là một ngôn ngữ khai báo mà điều chỉnh trang web sẽ nhìn như thế nào trong {{glossary("trình duyệt")}}. Trình duyệt gắn kiểu khai báo trong CSS vào những elements dược chọn để hiển thị nó đúng chính xác. Một kiểu khai báo bao gồm những thuộc tính và giá trị của các elements, cái mà xác định trang web sẽ nhìn như thế nào.

diff --git a/files/vi/glossary/dynamic_programming_language/index.html b/files/vi/glossary/dynamic_programming_language/index.html index 7babbc04e7..e8a8dd07dc 100644 --- a/files/vi/glossary/dynamic_programming_language/index.html +++ b/files/vi/glossary/dynamic_programming_language/index.html @@ -1,7 +1,8 @@ --- title: Ngôn ngữ lập trình động -slug: Tu-dien-thuat-ngu/Dynamic_programming_language +slug: Glossary/Dynamic_programming_language translation_of: Glossary/Dynamic_programming_language +original_slug: Tu-dien-thuat-ngu/Dynamic_programming_language ---

Ngôn ngữ lập trình động là ngôn ngữ lập trình trong đó các thao tác được thực hiện tại thời gian biên dịch có thể được thực hiện trong thời gian chạy. Ví dụ: trong JavaScript, có thể thay đổi loại biến hoặc thêm các thuộc tính hoặc phương thức mới vào một đối tượng trong khi chương trình đang chạy.

diff --git a/files/vi/glossary/falsy/index.html b/files/vi/glossary/falsy/index.html index c71e9cc197..7b39f3e98b 100644 --- a/files/vi/glossary/falsy/index.html +++ b/files/vi/glossary/falsy/index.html @@ -1,7 +1,8 @@ --- title: Falsy -slug: Tu-dien-thuat-ngu/Falsy +slug: Glossary/Falsy translation_of: Glossary/Falsy +original_slug: Tu-dien-thuat-ngu/Falsy ---

Giá trị falsy là giá trị được hiểu là false trong ngữ cảnh {{Glossary("Boolean")}}.

diff --git a/files/vi/glossary/general_header/index.html b/files/vi/glossary/general_header/index.html index e6ac4493a9..318407154d 100644 --- a/files/vi/glossary/general_header/index.html +++ b/files/vi/glossary/general_header/index.html @@ -1,9 +1,10 @@ --- title: General header -slug: Tu-dien-thuat-ngu/General_header +slug: Glossary/General_header tags: - C++ translation_of: Glossary/General_header +original_slug: Tu-dien-thuat-ngu/General_header ---

A general header is an {{glossary('Header', 'HTTP header')}} that can be used in both request and response messages but doesn't apply to the content itself. Depending on the context they are used in, general headers are either {{glossary("Response header", "response")}} or {{glossary("request header", "request headers")}}. However, they are not {{glossary("entity header", "entity headers")}}.

diff --git a/files/vi/glossary/head/index.html b/files/vi/glossary/head/index.html index c53ed73844..af4f9c9532 100644 --- a/files/vi/glossary/head/index.html +++ b/files/vi/glossary/head/index.html @@ -1,7 +1,8 @@ --- title: Head -slug: Tu-dien-thuat-ngu/Head +slug: Glossary/Head translation_of: Glossary/Head +original_slug: Tu-dien-thuat-ngu/Head ---

Head là một phần của một  văn bản {{glossary("HTML")}} chứa {{glossary("metadata")}} về văn bản đó, như tác giả, mô tả, và liên kết đến các tập tin {{glossary("CSS")}} hay {{glossary("JavaScript")}} được áp dụng vào văn bản HTML.

diff --git a/files/vi/glossary/hoisting/index.html b/files/vi/glossary/hoisting/index.html index b12a7f94cc..2f1f2a67c8 100644 --- a/files/vi/glossary/hoisting/index.html +++ b/files/vi/glossary/hoisting/index.html @@ -1,9 +1,10 @@ --- title: Hoisting -slug: Tu-dien-thuat-ngu/Hoisting +slug: Glossary/Hoisting tags: - JavaScript translation_of: Glossary/Hoisting +original_slug: Tu-dien-thuat-ngu/Hoisting ---

Hoisting là một thuật ngữ mà bạn sẽ không tìm thấy cách sử dụng trong bất cứ văn bản đặc tả quy chuẩn nào trước ECMAScript® 2015 Language Specification. Hoisting được nghĩ đến như một cách chung trong việc thực thi các ngữ cảnh (đặc biệt là giai đoạn tạo và thực thi) làm việc như thế nào trong JavaScript. Nhưng, hoisting có thể dẫn đến nhiều sự hiểu lầm. Ví dụ, hoisting dạy rằng định nghĩa biến và hàm được chuyển tới đầu đoạn mã của bạn, nhưng đây không hẳn là tất cả những gì xảy ra. Chuyện gì xảy ra khi các định nghĩa biến và hàm đó được lưu vào bộ nhớ trong suốt giai đoạn biên dịch, nhưng ở chính xác nơi bạn đã gõ nó trong đoạn mã của bạn?

diff --git a/files/vi/glossary/html/index.html b/files/vi/glossary/html/index.html index 68a5ba4c81..616d2ffed4 100644 --- a/files/vi/glossary/html/index.html +++ b/files/vi/glossary/html/index.html @@ -1,7 +1,8 @@ --- title: HTML -slug: Tu-dien-thuat-ngu/HTML +slug: Glossary/HTML translation_of: Glossary/HTML +original_slug: Tu-dien-thuat-ngu/HTML ---

HTML (Ngôn ngữ đánh dấu siêu văn bản), là một ngôn ngữ mang tính miêu tả chỉ dành riêng cho cấu trúc trang web.

diff --git a/files/vi/glossary/identifier/index.html b/files/vi/glossary/identifier/index.html index 36b044a73c..7ceace454b 100644 --- a/files/vi/glossary/identifier/index.html +++ b/files/vi/glossary/identifier/index.html @@ -1,7 +1,8 @@ --- title: Identifier -slug: Tu-dien-thuat-ngu/Identifier +slug: Glossary/Identifier translation_of: Glossary/Identifier +original_slug: Tu-dien-thuat-ngu/Identifier ---

Định danh là chuỗi ký tự trong mã nguồn để xác định {{glossary("variable")}}, {{glossary("function")}}, hoặc {{glossary("property")}}.

diff --git a/files/vi/glossary/index.html b/files/vi/glossary/index.html index 053ad9b274..ef14a9a45b 100644 --- a/files/vi/glossary/index.html +++ b/files/vi/glossary/index.html @@ -1,11 +1,12 @@ --- title: Từ điển thuật ngữ -slug: Tu-dien-thuat-ngu +slug: Glossary tags: - Index - Người mới - Từ điển translation_of: Glossary +original_slug: Tu-dien-thuat-ngu ---
{{LearnBox({"title":"Có thể bạn chưa biết"})}}
diff --git a/files/vi/glossary/jquery/index.html b/files/vi/glossary/jquery/index.html index 1477abfb66..9b9ea78ce0 100644 --- a/files/vi/glossary/jquery/index.html +++ b/files/vi/glossary/jquery/index.html @@ -1,7 +1,8 @@ --- title: jQuery -slug: Tu-dien-thuat-ngu/jQuery +slug: Glossary/jQuery translation_of: Glossary/jQuery +original_slug: Tu-dien-thuat-ngu/jQuery ---

jQuery là một {{Glossary("JavaScript")}} {{Glossary("Library")}} tập trung vào việc đơn giản hóa thao tác vơi {{Glossary("DOM")}}, gọi {{Glossary("AJAX")}}, và điều khiển {{Glossary("Event")}}.

diff --git a/files/vi/glossary/json/index.html b/files/vi/glossary/json/index.html index 8158b09c63..ec99e9294a 100644 --- a/files/vi/glossary/json/index.html +++ b/files/vi/glossary/json/index.html @@ -1,7 +1,8 @@ --- title: JSON -slug: Tu-dien-thuat-ngu/JSON +slug: Glossary/JSON translation_of: Glossary/JSON +original_slug: Tu-dien-thuat-ngu/JSON ---

JavaScript Object Notation (JSON) là một data-interchange format. Mặc dù không phải là một strict subset, JSON lại rất giống với một subset theo cú pháp của {{Glossary("JavaScript")}}.

diff --git a/files/vi/glossary/metadata/index.html b/files/vi/glossary/metadata/index.html index ff72a21192..4bf2499a8a 100644 --- a/files/vi/glossary/metadata/index.html +++ b/files/vi/glossary/metadata/index.html @@ -1,7 +1,8 @@ --- title: Metadata -slug: Tu-dien-thuat-ngu/Metadata +slug: Glossary/Metadata translation_of: Glossary/Metadata +original_slug: Tu-dien-thuat-ngu/Metadata ---

Metadata (Siêu dữ liệu) là — in its very simplest definition — dữ liệu mô tả dữ liệu. Chẳng hạn, tài liệu {{glossary("HTML")}} là dữ liệu, nhưng HTML có thể chứa metadata trong phần tử {{htmlelement("head")}} để mô tả tài liệu đó — như là ai viết nó, và tóm lược trang web.

diff --git a/files/vi/glossary/null/index.html b/files/vi/glossary/null/index.html index 4baec6b2e6..c5ae5f3e9c 100644 --- a/files/vi/glossary/null/index.html +++ b/files/vi/glossary/null/index.html @@ -1,7 +1,8 @@ --- title: 'Null' -slug: Tu-dien-thuat-ngu/Null +slug: Glossary/Null translation_of: Glossary/Null +original_slug: Tu-dien-thuat-ngu/Null ---

Trong khoa học máy tính, giá trị null đại điện cho một tham chiếu trỏ tới, thường là cố tình, {{glossary("object")}} hoặc địa chỉ không tồn tại hoặc không hợp lệ. Ý nghĩa của null tuỳ theo từng ngôn ngữ.

diff --git a/files/vi/glossary/operand/index.html b/files/vi/glossary/operand/index.html index 407d9c03d0..5971b6cf59 100644 --- a/files/vi/glossary/operand/index.html +++ b/files/vi/glossary/operand/index.html @@ -1,7 +1,8 @@ --- title: Toán hạng -slug: Tu-dien-thuat-ngu/Operand +slug: Glossary/Operand translation_of: Glossary/Operand +original_slug: Tu-dien-thuat-ngu/Operand ---

Toán hạng là một phần trong câu lệnh biểu diễn thao tác dữ liệu bởi {{glossary("operator")}}. Chẳng hạn, khi bạn cộng hai số, hai số đó là toán hạng và "+" là toán tử.

diff --git a/files/vi/glossary/php/index.html b/files/vi/glossary/php/index.html index f75d0f07e7..b09ede6365 100644 --- a/files/vi/glossary/php/index.html +++ b/files/vi/glossary/php/index.html @@ -1,7 +1,8 @@ --- title: PHP -slug: Tu-dien-thuat-ngu/PHP +slug: Glossary/PHP translation_of: Glossary/PHP +original_slug: Tu-dien-thuat-ngu/PHP ---

PHP (a recursive initialism for PHP: Hypertext Preprocessor) is an open-source server-side scripting language that can be embedded into HTML to build web applications and dynamic websites.

diff --git a/files/vi/glossary/primitive/index.html b/files/vi/glossary/primitive/index.html index b65302eab7..cc4a15e2b3 100644 --- a/files/vi/glossary/primitive/index.html +++ b/files/vi/glossary/primitive/index.html @@ -1,7 +1,8 @@ --- title: Primitive -slug: Tu-dien-thuat-ngu/Primitive +slug: Glossary/Primitive translation_of: Glossary/Primitive +original_slug: Tu-dien-thuat-ngu/Primitive ---

Trong {{Glossary("JavaScript")}}, một bản nguyên (giá trị nguyên thủy, giá trị sơ khai, kiểu dữ liệu sơ khai) là dữ liệu mà dữ liệu này không phải {{Glossary("object")}} và không có {{glossary("method","phương thức")}}. Có 7 kiểu dữ liệu bản nguyên: {{Glossary("string")}}, {{Glossary("number")}}, {{Glossary("bigint")}}, {{Glossary("boolean")}}, {{Glossary("null")}}, {{Glossary("undefined")}}, {{Glossary("symbol")}} (mới thêm vào trong {{Glossary("ECMAScript")}} 2015).

diff --git a/files/vi/glossary/responsive_web_design/index.html b/files/vi/glossary/responsive_web_design/index.html index ba3cae0d1c..4e46368fb9 100644 --- a/files/vi/glossary/responsive_web_design/index.html +++ b/files/vi/glossary/responsive_web_design/index.html @@ -1,11 +1,12 @@ --- title: Responsive web design -slug: Tu-dien-thuat-ngu/Responsive_web_design +slug: Glossary/Responsive_web_design tags: - Khả năng tiếp cận - Thiết kế - Thuật ngữ translation_of: Glossary/Responsive_web_design +original_slug: Tu-dien-thuat-ngu/Responsive_web_design ---

Responsive Web Design (RWD) (Thiết kế web linh hoạt) là khái niệm trong lập trình Web hướng tới tạo ra website có vẻ ngoài và cơ chế vận hành tối ưu trên tất cả thiết bị tính toán cá nhân, từ desktop (cố định) tới mobile (di động).

diff --git a/files/vi/glossary/svg/index.html b/files/vi/glossary/svg/index.html index d73e8f0d9d..e514deba43 100644 --- a/files/vi/glossary/svg/index.html +++ b/files/vi/glossary/svg/index.html @@ -1,7 +1,8 @@ --- title: SVG -slug: Tu-dien-thuat-ngu/SVG +slug: Glossary/SVG translation_of: Glossary/SVG +original_slug: Tu-dien-thuat-ngu/SVG ---

Scalable Vector Graphics (SVG) là một định dạng hình ảnh véc tơ 2D dựa trên cú pháp của {{Glossary("XML")}}.

diff --git a/files/vi/glossary/truthy/index.html b/files/vi/glossary/truthy/index.html index e9b5b23291..db73ea562d 100644 --- a/files/vi/glossary/truthy/index.html +++ b/files/vi/glossary/truthy/index.html @@ -1,7 +1,8 @@ --- title: Truthy -slug: Tu-dien-thuat-ngu/Truthy +slug: Glossary/Truthy translation_of: Glossary/Truthy +original_slug: Tu-dien-thuat-ngu/Truthy ---

Trong {{Glossary("JavaScript")}}, truthy là giá trị được hiểu là true trong ngữ cảnh {{Glossary("Boolean")}}. Tất cả mọi giá trị đều là truthy, trừ phi chúng được định nghĩa là {{Glossary("Falsy", "falsy")}} (tức là, ngoại trừ false, 0, "", null, undefined, và NaN).

diff --git a/files/vi/glossary/type_conversion/index.html b/files/vi/glossary/type_conversion/index.html index c3d2ca07c9..1b32be0968 100644 --- a/files/vi/glossary/type_conversion/index.html +++ b/files/vi/glossary/type_conversion/index.html @@ -1,7 +1,8 @@ --- title: Type Conversion -slug: Tu-dien-thuat-ngu/Type_Conversion +slug: Glossary/Type_Conversion translation_of: Glossary/Type_Conversion +original_slug: Tu-dien-thuat-ngu/Type_Conversion ---

Chuyển đổi kiểu (hay ép kiểu) tức là truyền dữ liệu từ kiểu dữ liệu này sang kiểu dữ liệu khác. Chuyển kiểu ngầm xảy ra khi bộ biên dịch tự động gán kiểu dữ liệu, song mã nguồn vẫn có thể thực hiện chuyển kiểu theo cách tường minh. Chẳng hạn, đoạn lệnh 5+2.0, số thực dấu phẩy động 2.0 được ép kiểu ngầm sang số nguyên, nhưng với lệnh Number("0x11"), xâu ký tự "0x11" được ép kiểu tường minh sang số 17.

diff --git a/files/vi/glossary/undefined/index.html b/files/vi/glossary/undefined/index.html index 6cad2c4b1b..5bc6e40c1d 100644 --- a/files/vi/glossary/undefined/index.html +++ b/files/vi/glossary/undefined/index.html @@ -1,7 +1,8 @@ --- title: undefined -slug: Tu-dien-thuat-ngu/undefined +slug: Glossary/undefined translation_of: Glossary/undefined +original_slug: Tu-dien-thuat-ngu/undefined ---

undefined là một giá trị nguyên thủy được gán tự động cho các biến vừa được khai báo hoặc cho các đối số chính thức không có đối số thực tế.

diff --git a/files/vi/glossary/xml/index.html b/files/vi/glossary/xml/index.html index f76d106d37..39b44b4290 100644 --- a/files/vi/glossary/xml/index.html +++ b/files/vi/glossary/xml/index.html @@ -1,7 +1,8 @@ --- title: XML -slug: Tu-dien-thuat-ngu/XML +slug: Glossary/XML translation_of: Glossary/XML +original_slug: Tu-dien-thuat-ngu/XML ---

eXtensible Markup Language (XML) là ngôn ngữ đánh dấu chung được W3C đặc tả. Ngành Công nghệ thông tin (IT) sử dụng nhiều ngôn ngữ dựa trên XML như là ngôn ngữ mô tả dữ liệu.

diff --git a/files/vi/learn/common_questions/how_does_the_internet_work/index.html b/files/vi/learn/common_questions/how_does_the_internet_work/index.html index fb9abacd43..34710ada60 100644 --- a/files/vi/learn/common_questions/how_does_the_internet_work/index.html +++ b/files/vi/learn/common_questions/how_does_the_internet_work/index.html @@ -1,7 +1,8 @@ --- title: Internet làm việc như thế nào? -slug: Learn/Common_questions/Internet_lam_viec_nh_the_nao +slug: Learn/Common_questions/How_does_the_Internet_work translation_of: Learn/Common_questions/How_does_the_Internet_work +original_slug: Learn/Common_questions/Internet_lam_viec_nh_the_nao ---
{{LearnSidebar}}
diff --git a/files/vi/learn/common_questions/set_up_a_local_testing_server/index.html b/files/vi/learn/common_questions/set_up_a_local_testing_server/index.html index 187215c53c..5381eef89c 100644 --- a/files/vi/learn/common_questions/set_up_a_local_testing_server/index.html +++ b/files/vi/learn/common_questions/set_up_a_local_testing_server/index.html @@ -1,7 +1,8 @@ --- title: Làm sao để thiết lập web mạng nội bộ? -slug: Learn/Common_questions/thiet_lap_web_mang_noi_bo +slug: Learn/Common_questions/set_up_a_local_testing_server translation_of: Learn/Common_questions/set_up_a_local_testing_server +original_slug: Learn/Common_questions/thiet_lap_web_mang_noi_bo ---

 

diff --git a/files/vi/learn/forms/index.html b/files/vi/learn/forms/index.html index 5b0215a43c..8076674a1f 100644 --- a/files/vi/learn/forms/index.html +++ b/files/vi/learn/forms/index.html @@ -1,6 +1,6 @@ --- title: HTML forms -slug: Learn/HTML/Forms +slug: Learn/Forms tags: - Beginner - Featured @@ -13,6 +13,7 @@ tags: - TopicStub - Web translation_of: Learn/Forms +original_slug: Learn/HTML/Forms ---
{{LearnSidebar}}
diff --git a/files/vi/learn/getting_started_with_the_web/installing_basic_software/index.html b/files/vi/learn/getting_started_with_the_web/installing_basic_software/index.html index 0350529f25..ffedc37faa 100644 --- a/files/vi/learn/getting_started_with_the_web/installing_basic_software/index.html +++ b/files/vi/learn/getting_started_with_the_web/installing_basic_software/index.html @@ -1,6 +1,6 @@ --- title: Cài đặt các phần mềm cơ bản -slug: Learn/Getting_started_with_the_web/Cài_đặt_các_phần_mềm_cơ_bản +slug: Learn/Getting_started_with_the_web/Installing_basic_software tags: - Công Cụ - Học Làm Web @@ -8,6 +8,7 @@ tags: - Thiết Lập - Trình Duyệt Web translation_of: Learn/Getting_started_with_the_web/Installing_basic_software +original_slug: Learn/Getting_started_with_the_web/Cài_đặt_các_phần_mềm_cơ_bản ---
{{LearnSidebar}}
diff --git "a/files/vi/orphaned/b\341\272\243n_k\303\252_khai_c\303\240i_\304\221\341\272\267t/index.html" "b/files/vi/orphaned/b\341\272\243n_k\303\252_khai_c\303\240i_\304\221\341\272\267t/index.html" index e7b696b80f..acf29145c6 100644 --- "a/files/vi/orphaned/b\341\272\243n_k\303\252_khai_c\303\240i_\304\221\341\272\267t/index.html" +++ "b/files/vi/orphaned/b\341\272\243n_k\303\252_khai_c\303\240i_\304\221\341\272\267t/index.html" @@ -1,6 +1,7 @@ --- title: Bản Kê Khai Cài Đặt -slug: Bản_Kê_Khai_Cài_Đặt +slug: orphaned/Bản_Kê_Khai_Cài_Đặt +original_slug: Bản_Kê_Khai_Cài_Đặt ---

Giới Thiệu

Một Bản Kê Khai Cài Đặt (Install Manifest) là một tập tin mà một ứng dụng XUL - được bật mở trình Quản lý Tiện ích - sử dụng để xác định các thông tin về tiện ích khi nó được cài đặt. Nó chứa các siêu dữ liệu (metadata) để nhận diện tiện ích, cung cấp thông tin về người đã tạo ra nó, nơi mà các thông thêm về nó có thể được tìm thấy, các phiên bản nào của ứng dụng nào mà nó tương thích, làm sao để nó luôn được cập nhật, và nhiều thứ khác.

diff --git a/files/vi/orphaned/dom_inspector/index.html b/files/vi/orphaned/dom_inspector/index.html index ec9b4e0dbb..b4e9660dac 100644 --- a/files/vi/orphaned/dom_inspector/index.html +++ b/files/vi/orphaned/dom_inspector/index.html @@ -1,5 +1,6 @@ --- title: DOM Inspector -slug: DOM_Inspector +slug: orphaned/DOM_Inspector +original_slug: DOM_Inspector ---

DOM Inspector (viết tắt là DOMi) là bộ công cụ dùng để kiểm tra, duyệt và chỉnh sửa  Document Object Model - dùng trong các trang web hoặc cửa sổ XUL. Hệ thống phân cấp DOM có thể điều hướng qua lại 2 cửa sổ cho phép xem tài liệu và các nút.

diff --git a/files/vi/orphaned/labs-tab/index.html b/files/vi/orphaned/labs-tab/index.html index 6cedf8e2d3..d99efd80f0 100644 --- a/files/vi/orphaned/labs-tab/index.html +++ b/files/vi/orphaned/labs-tab/index.html @@ -1,6 +1,7 @@ --- title: Labs-tab -slug: Labs-tab +slug: orphaned/Labs-tab +original_slug: Labs-tab ---

Quan tâm đến việc định hình tương lai của Web?

Mozilla Labs là một phòng thí nghiệm ảo, nơi bạn có thể tham gia với chúng tôi để tạo ra, thử nghiệm, xây dựng
sử dụng những cải tiến và công nghệ Web mới. Đóng góp của cộng đồng chúng tôi có sự đa dạng về nguồn gốc, nhưng chia sẻ tất cả các lợi ích chung trong việc trải nghiệm Web.

Để bắt đầu, hãy tìm hiểu về các dự án của chúng tôi sau đó góp phần vào dự án bằng cách tham gia những thảo luận với chúng tôi, thử nghiệm những thiết kế mới, khai thác mã nguồn hoặc
gửi phản hồi về sản phẩm.



Theo dõi những thông tin mới nhất về các dự án của chúng tôi trên Twitter tại @mozlabs.

diff --git a/files/vi/orphaned/learn/how_to_contribute/index.html b/files/vi/orphaned/learn/how_to_contribute/index.html index ca0f73fbc1..57950d842f 100644 --- a/files/vi/orphaned/learn/how_to_contribute/index.html +++ b/files/vi/orphaned/learn/how_to_contribute/index.html @@ -1,7 +1,8 @@ --- title: Cách đóng góp cho Khu vực học tập trên MDN -slug: Learn/Dong_gop_cho_khu_vuc_hoc_tap_tren_MDN +slug: orphaned/Learn/How_to_contribute translation_of: Learn/How_to_contribute +original_slug: Learn/Dong_gop_cho_khu_vuc_hoc_tap_tren_MDN ---
{{LearnSidebar}}
diff --git a/files/vi/orphaned/mdn/community/index.html b/files/vi/orphaned/mdn/community/index.html index 0242f58382..690dd2835e 100644 --- a/files/vi/orphaned/mdn/community/index.html +++ b/files/vi/orphaned/mdn/community/index.html @@ -1,6 +1,6 @@ --- title: Tham gia cộng đồng MDN -slug: MDN/Community +slug: orphaned/MDN/Community tags: - Hướng dẫn - MDN @@ -8,6 +8,7 @@ tags: - thông tin MDN - trang chính translation_of: MDN/Community +original_slug: MDN/Community ---
{{MDNSidebar}}
diff --git a/files/vi/orphaned/mdn/contribute/howto/create_an_mdn_account/index.html b/files/vi/orphaned/mdn/contribute/howto/create_an_mdn_account/index.html index 796e7df30b..2d645b68db 100644 --- a/files/vi/orphaned/mdn/contribute/howto/create_an_mdn_account/index.html +++ b/files/vi/orphaned/mdn/contribute/howto/create_an_mdn_account/index.html @@ -1,7 +1,8 @@ --- title: How to create an MDN account -slug: MDN/Contribute/Howto/Create_an_MDN_account +slug: orphaned/MDN/Contribute/Howto/Create_an_MDN_account translation_of: MDN/Contribute/Howto/Create_an_MDN_account +original_slug: MDN/Contribute/Howto/Create_an_MDN_account ---
{{MDNSidebar}}
diff --git a/files/vi/orphaned/mdn/contribute/howto/do_a_technical_review/index.html b/files/vi/orphaned/mdn/contribute/howto/do_a_technical_review/index.html index 61e3c1cda5..b59d67ad81 100644 --- a/files/vi/orphaned/mdn/contribute/howto/do_a_technical_review/index.html +++ b/files/vi/orphaned/mdn/contribute/howto/do_a_technical_review/index.html @@ -1,7 +1,8 @@ --- title: How to do a technical review -slug: MDN/Contribute/Howto/Do_a_technical_review +slug: orphaned/MDN/Contribute/Howto/Do_a_technical_review translation_of: MDN/Contribute/Howto/Do_a_technical_review +original_slug: MDN/Contribute/Howto/Do_a_technical_review ---
{{MDNSidebar}}
{{IncludeSubnav("/en-US/docs/MDN")}}
diff --git a/files/vi/orphaned/mdn/contribute/howto/do_an_editorial_review/index.html b/files/vi/orphaned/mdn/contribute/howto/do_an_editorial_review/index.html index 23410f87e7..e321f7cfa9 100644 --- a/files/vi/orphaned/mdn/contribute/howto/do_an_editorial_review/index.html +++ b/files/vi/orphaned/mdn/contribute/howto/do_an_editorial_review/index.html @@ -1,7 +1,8 @@ --- title: How to do an editorial review -slug: MDN/Contribute/Howto/Do_an_editorial_review +slug: orphaned/MDN/Contribute/Howto/Do_an_editorial_review translation_of: MDN/Contribute/Howto/Do_an_editorial_review +original_slug: MDN/Contribute/Howto/Do_an_editorial_review ---
{{MDNSidebar}}
{{IncludeSubnav("/en-US/docs/MDN")}}
diff --git a/files/vi/web/api/baseaudiocontext/createoscillator/index.html b/files/vi/web/api/baseaudiocontext/createoscillator/index.html index e0a786a181..1cef402134 100644 --- a/files/vi/web/api/baseaudiocontext/createoscillator/index.html +++ b/files/vi/web/api/baseaudiocontext/createoscillator/index.html @@ -1,7 +1,8 @@ --- title: AudioContext.createOscillator() -slug: Web/API/AudioContext/createOscillator +slug: Web/API/BaseAudioContext/createOscillator translation_of: Web/API/BaseAudioContext/createOscillator +original_slug: Web/API/AudioContext/createOscillator ---

{{ APIRef("Web Audio API") }}

diff --git a/files/vi/web/api/htmlorforeignelement/dataset/index.html b/files/vi/web/api/htmlorforeignelement/dataset/index.html index 44ce2c7393..ad2617ab56 100644 --- a/files/vi/web/api/htmlorforeignelement/dataset/index.html +++ b/files/vi/web/api/htmlorforeignelement/dataset/index.html @@ -1,6 +1,6 @@ --- title: HTMLElement.dataset -slug: Web/API/HTMLElement/dataset +slug: Web/API/HTMLOrForeignElement/dataset tags: - API - HTML DOM @@ -9,6 +9,7 @@ tags: - Thuộc tính - dataset translation_of: Web/API/HTMLOrForeignElement/dataset +original_slug: Web/API/HTMLElement/dataset ---
{{ APIRef("HTML DOM") }}
diff --git a/files/vi/web/api/navigator/sendbeacon/index.html b/files/vi/web/api/navigator/sendbeacon/index.html index a91adf05fd..1a48443fc9 100644 --- a/files/vi/web/api/navigator/sendbeacon/index.html +++ b/files/vi/web/api/navigator/sendbeacon/index.html @@ -1,6 +1,6 @@ --- title: Navigator.sendBeacon() -slug: Web/API/Navigator/sendBeacon-vi +slug: Web/API/Navigator/sendBeacon tags: - API - Beacon @@ -8,6 +8,7 @@ tags: - sendBeacon - web perfomance translation_of: Web/API/Navigator/sendBeacon +original_slug: Web/API/Navigator/sendBeacon-vi ---
Phương thức navigator.sendBeacon() gửi {{glossary("Asynchronous", "bất đồng bộ")}} 1 lượng nhỏ dữ liệu đến máy chủ (web server) thông qua giao thức {{Glossary("HTTP")}} .
diff --git a/files/vi/web/api/window/load_event/index.html b/files/vi/web/api/window/load_event/index.html index 130d6b9af0..ec1d576ff4 100644 --- a/files/vi/web/api/window/load_event/index.html +++ b/files/vi/web/api/window/load_event/index.html @@ -1,11 +1,12 @@ --- title: load -slug: Web/Events/load +slug: Web/API/Window/load_event tags: - DOM - Event - Sự kiện translation_of: Web/API/Window/load_event +original_slug: Web/Events/load ---

Sự kiện load có hiệu lực (được kích hoạt) khi các tài nguyên của một đối tượng hoặc các tài nguyên phụ thuộc vào đối tượng đó đã được tải nạp hoàn tất.

diff --git a/files/vi/web/css/css_box_model/introduction_to_the_css_box_model/index.html b/files/vi/web/css/css_box_model/introduction_to_the_css_box_model/index.html index 287d709494..88e2103617 100644 --- a/files/vi/web/css/css_box_model/introduction_to_the_css_box_model/index.html +++ b/files/vi/web/css/css_box_model/introduction_to_the_css_box_model/index.html @@ -1,11 +1,12 @@ --- title: Kiến thức cơ bản về CSS box model -slug: Web/CSS/CSS_Box_Model/Kien_thuc_co_ban_ve_css_box_model +slug: Web/CSS/CSS_Box_Model/Introduction_to_the_CSS_box_model tags: - CSS - CSS Box Model - Layout translation_of: Web/CSS/CSS_Box_Model/Introduction_to_the_CSS_box_model +original_slug: Web/CSS/CSS_Box_Model/Kien_thuc_co_ban_ve_css_box_model ---
{{CSSRef}}
diff --git a/files/vi/web/css/css_grid_layout/basic_concepts_of_grid_layout/index.html b/files/vi/web/css/css_grid_layout/basic_concepts_of_grid_layout/index.html index c1ebfbf5d5..07473396c2 100644 --- a/files/vi/web/css/css_grid_layout/basic_concepts_of_grid_layout/index.html +++ b/files/vi/web/css/css_grid_layout/basic_concepts_of_grid_layout/index.html @@ -1,9 +1,10 @@ --- title: Tổng quan về Bố cục Lưới -slug: Web/CSS/CSS_Grid_Layout/tong_quan_ve_grid_layout +slug: Web/CSS/CSS_Grid_Layout/Basic_Concepts_of_Grid_Layout tags: - ok translation_of: Web/CSS/CSS_Grid_Layout/Basic_Concepts_of_Grid_Layout +original_slug: Web/CSS/CSS_Grid_Layout/tong_quan_ve_grid_layout ---

Bố cục Lưới CSS đưa vào CSS một hệ thống lưới hai chiều. Các lưới có thể dùng để bố cục những vùng lớn trong trang hoặc những thành phần giao diện người dùng nhỏ. Bài viết này giới thiệu Bố cục Lưới CSS và hệ thống thuật ngữ nằm trong chi tiết kỹ thuật của Bố cục Lưới CSS Cấp 1. Những đặc trưng được thể hiện trong tổng quan này sẽ được giải thích chi tiết hơn trong phần còn lại của hướng dẫn.

diff --git a/files/vi/web/css/url()/index.html b/files/vi/web/css/url()/index.html index bcff92ebe2..cf6c32736c 100644 --- a/files/vi/web/css/url()/index.html +++ b/files/vi/web/css/url()/index.html @@ -1,8 +1,9 @@ --- title: url() -slug: Web/CSS/filter-function/url +slug: Web/CSS/url() translation_of: Web/CSS/url() translation_of_original: Web/CSS/filter-function/url +original_slug: Web/CSS/filter-function/url ---
{{cssref}}
diff --git a/files/vi/web/javascript/guide/grammar_and_types/index.html b/files/vi/web/javascript/guide/grammar_and_types/index.html index 64f63492d2..910d465526 100644 --- a/files/vi/web/javascript/guide/grammar_and_types/index.html +++ b/files/vi/web/javascript/guide/grammar_and_types/index.html @@ -1,7 +1,8 @@ --- title: Cú pháp lập trình -slug: Web/JavaScript/Guide/cu-phap-lap-trinh +slug: Web/JavaScript/Guide/Grammar_and_types translation_of: Web/JavaScript/Guide/Grammar_and_types +original_slug: Web/JavaScript/Guide/cu-phap-lap-trinh ---
{{jsSidebar("JavaScript Guide")}} {{PreviousNext("Web/JavaScript/Guide/Introduction", "Web/JavaScript/Guide/Control_flow_and_error_handling")}}
diff --git a/files/vi/web/javascript/guide/introduction/index.html b/files/vi/web/javascript/guide/introduction/index.html index f8fddcf666..84ada37f1c 100644 --- a/files/vi/web/javascript/guide/introduction/index.html +++ b/files/vi/web/javascript/guide/introduction/index.html @@ -1,10 +1,11 @@ --- title: Giới thiệu -slug: Web/JavaScript/Guide/Gioi-thieu +slug: Web/JavaScript/Guide/Introduction tags: - Guide - JavaScript translation_of: Web/JavaScript/Guide/Introduction +original_slug: Web/JavaScript/Guide/Gioi-thieu ---
{{jsSidebar("JavaScript Guide")}} {{PreviousNext("Web/JavaScript/Guide", "Web/JavaScript/Guide/Grammar_and_types")}}
diff --git a/files/vi/web/javascript/reference/errors/too_much_recursion/index.html b/files/vi/web/javascript/reference/errors/too_much_recursion/index.html index a4851c4f56..32084a7de0 100644 --- a/files/vi/web/javascript/reference/errors/too_much_recursion/index.html +++ b/files/vi/web/javascript/reference/errors/too_much_recursion/index.html @@ -1,11 +1,12 @@ --- title: 'InternalError: Quá nhiều đệ quy' -slug: Web/JavaScript/Reference/Errors/qua_nhieu_de_quy +slug: Web/JavaScript/Reference/Errors/Too_much_recursion tags: - JavaScript - Lỗi - Lỗi bên trong translation_of: Web/JavaScript/Reference/Errors/Too_much_recursion +original_slug: Web/JavaScript/Reference/Errors/qua_nhieu_de_quy ---
{{jsSidebar("Errors")}}
diff --git a/files/vi/web/javascript/reference/global_objects/array/sort/index.html b/files/vi/web/javascript/reference/global_objects/array/sort/index.html index 1d01c587e0..3b723bc8f9 100644 --- a/files/vi/web/javascript/reference/global_objects/array/sort/index.html +++ b/files/vi/web/javascript/reference/global_objects/array/sort/index.html @@ -1,7 +1,8 @@ --- title: Array.prototype.sort() -slug: Web/JavaScript/Reference/Global_Objects/Array/Sắp_xếp +slug: Web/JavaScript/Reference/Global_Objects/Array/sort translation_of: Web/JavaScript/Reference/Global_Objects/Array/sort +original_slug: Web/JavaScript/Reference/Global_Objects/Array/Sắp_xếp ---
{{JSRef}}
diff --git a/files/vi/web/javascript/reference/global_objects/error/index.html b/files/vi/web/javascript/reference/global_objects/error/index.html index a9733ce5b0..c1e957c6f0 100644 --- a/files/vi/web/javascript/reference/global_objects/error/index.html +++ b/files/vi/web/javascript/reference/global_objects/error/index.html @@ -1,11 +1,12 @@ --- title: Lỗi -slug: Web/JavaScript/Reference/Global_Objects/loi +slug: Web/JavaScript/Reference/Global_Objects/Error tags: - JavaScript - Lỗi - Tham chiếu translation_of: Web/JavaScript/Reference/Global_Objects/Error +original_slug: Web/JavaScript/Reference/Global_Objects/loi ---
{{JSRef}}
-- cgit v1.2.3-54-g00ecf