2009-09-08 22 views

Trả lời

28

Theo HTML 4.0 specification for basic types:

ID và TÊN thẻ phải bắt đầu bằng một lá thư ([A-Za-z]) và có thể được theo sau bởi bất kỳ số lượng chữ cái, chữ số ([0 -9]), dấu gạch nối ("-"), gạch dưới ("_"), dấu hai chấm (":") và dấu chấm (".").

Và ngay cả khi không gian hợp lệ, thuộc tính id có dấu cách sẽ được jQuery hiểu là ancestor descendant selector với cú pháp chọn hiện tại.

9

Câu trả lời ngắn gọn là không. Chữ cái, số, dấu gạch dưới, dấu gạch nối, dấu chấm và dấu hai chấm.

(darn, karim đánh tôi với nó.)

+1

Ahh, hai phút trễ :) Hãy bình chọn của tôi! – Dima

3

Đây là một cuộc tranh cãi bằng cách tương tự.

Xem xét công cụ chọn Nhóm. Không giống như ID, nhưng có những simlarities.

Bạn rõ ràng là không thể có một lớp tên với một không gian nhúng vì một danh sách các lớp

<p class='a b c'>some text</p> 

không thể được phân biệt với một tên duy nhất với không gian.

Ok, bạn không thể có danh sách tên id, dù sao đi nữa, vì vậy sự tương tự bị tách rời, nhưng tôi nghĩ chúng tôi đã quá nhanh để cố gắng chèn khoảng trắng nơi chúng không thuộc về.

7

Mặc dù đây là câu hỏi cũ nhưng tôi nghĩ rằng tôi sẽ chia sẻ thông tin về HTML 5 Spec cho những người gặp phải câu hỏi này như tôi đã làm một vài năm sau khi được hỏi.

Theo HTML 5 Spec:

Giá trị phải là duy nhất trong số tất cả các ID trong cây con chủ của phần tử và phải chứa ít nhất một ký tự. Giá trị không được chứa bất kỳ ký tự khoảng trắng nào.

Nó cũng nói:

Không có hạn chế khác về những gì tạo thành một ID có thể thực hiện; cụ thể, ID có thể chỉ gồm chữ số, bắt đầu bằng chữ số, bắt đầu bằng dấu gạch dưới, chỉ bao gồm dấu chấm câu, v.v.

Các vấn đề liên quan