2008-09-30 24 views
10

Có phương pháp nào tốt để nhận ASP.NET 2.0 để xác thực theo XHTML 1.0 Nghiêm ngặt (hoặc Chuyển tiếp) DTD không? Tôi quan tâm để nghe một số ý tưởng trước khi tôi tấn công cốt lõi của phản hồi HTTP.XHTML 1.0 Nghiêm ngặt (hoặc Chuyển tiếp) tuân thủ trong ASP.NET 2.0/3.5

Một vấn đề lớn là thẻ hình thức bản thân, đây là sản phẩm tôi nhận được từ W3C khi tôi đã cố gắng để xác nhận:

Line 13, Column 11: there is no attribute "name". 
<form name="aspnetForm" method="post" action="Default.aspx" onsubmit="javascript 

tag Đó là rất cơ bản để ASP.NET, như tất cả các bạn biết. Hmmmm.

Trả lời

11

ASP.NET 2.0 trở lên thực sự có thể xuất XHTML Nghiêm ngặt (hoặc Chuyển tiếp). Điều này sẽ giải quyết lỗi "không có thuộc tính" tên "xác thực của bạn", trong số những thứ khác. Để thiết lập, cập nhật file Web.config của bạn với một cái gì đó như:

<system.web> 
    ... other configuration goes here ... 
    <xhtmlConformance mode="Strict" /> 
</system.web> 

Đối với XHTML Transitional, sử dụng mode="Transitional" để thay thế.

Xem How to: Configure XHTML Rendering in ASP.NET Web Sites trên MSDN.

+0

Tôi không chắc mình đang làm gì sai, nhưng dường như không làm gì cả. Tôi đang sử dụng .Net 3.5 và tôi đặt thẻ cấu hình này cho tất cả các giá trị có thể và thẻ meta của tôi vẫn hiển thị với kết thúc là. Tôi có thể làm gì? – Allov

2

Có thể thay đổi đầu ra của các điều khiển ASP.NET bằng các kỹ thuật như CSS Adapters. Mặc dù tôi không khuyên bạn nên sử dụng chúng ra khỏi hộp, nó có thể cung cấp cho bạn một số gợi ý về một giải pháp tốt.

Tôi thường tránh sử dụng các điều khiển ASP.NET ở nơi có thể, ngoại trừ các điều khiển không tự tạo đánh dấu như kiểm soát lặp lại. Tôi sẽ xem xét các khuôn khổ ASP.NET MVC (những gì StackOverflow được xây dựng trên) vì điều này cung cấp cho bạn 100% kiểm soát đánh dấu.

+1

Việc kiểm soát Reapter là aweful, span hoặc bảng là tất cả các bạn nhận được, nhìn vào ListView trong 3,5 để thay thế. – craigmoliver

+0

Tôi không có kinh nghiệm với 3,5 vì vậy không thể bình luận về ListView nhưng tôi không thấy vấn đề với điều khiển Repeater, bạn có thể sử dụng bất kỳ thẻ nào bạn chọn và có một số 'điều khiển phụ' để tạo đánh dấu của riêng bạn . – roryf

+0

kiểm tra nguồn – craigmoliver

4

Bạn đã xem số ASP.NET MVC Framework chưa? Nó có thể là một đặt cược tốt hơn nếu tuân thủ XHTML nghiêm ngặt là một yêu cầu. Bạn có được quyền kiểm soát nhiều hơn đầu ra của bạn, nhưng bạn sẽ được treading lãnh thổ không quen thuộc nếu bạn đã cảm thấy thoải mái với mô hình ASP.NET truyền thống.

+0

Beta là một ít rủi ro cho một ứng dụng sản xuất cho tôi (không phải cho StackOverflow). Bên cạnh đó, ứng dụng đã được viết. – craigmoliver

+0

kiểm soát web không được xây dựng để xác thực xhtml. Chúng được xây dựng để thuận tiện. Hoặc sử dụng các chương CSS hoặc viết lại giao diện người dùng của bạn. Đó là một viên thuốc dính, nhưng tốt nhất là uống nhiều rượu. – Will

+0

ASP.NET MVC 1.0 đã được phát hành 2009-03-17. Công việc hiện đang ở phiên bản 2.0. – foson

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