2011-01-22 34 views
8

Tôi có một tập hợp các Kiểu được tạo đầu tiên bên trong thuộc tính kiểu trên một trang.CSS không hoạt động trong biểu định kiểu

Tôi muốn di chuyển nó từ chính trang đó vào biểu định kiểu. Tuy nhiên,

tuy nhiên, khi tôi di chuyển nó sang tệp .css, ngắt trang, di chuyển mã trở lại tài liệu html và nó hoạt động tốt trở lại.

Điều này làm cho hoàn toàn không có ý nghĩa, di chuyển phong cách từ một phong cách vào một tệp css không nên phá vỡ mã phải không?

Tôi có thiếu gì đó không? Tôi không thay đổi bất kỳ mã nào, chỉ đơn giản là một bản sao và dán.

+0

Điều này có vẻ là một câu hỏi ngớ ngẩn, nhưng bạn có tham khảo tệp CSS từ bên trong trang của bạn không? – Mihai

+2

Bạn đang thiếu "đủ thông tin cho ai đó để giúp bạn giải quyết vấn đề của mình". Đăng chi tiết. ví dụ, bạn bao gồm tệp css trong tệp HTML của bạn như thế nào? – DwB

+0

Chúng tôi không thể giúp bạn mà không có ví dụ .. – Yorian

Trả lời

20

Đây chỉ là ảnh chụp trong bóng tối như (tại thời điểm bài đăng này) mà bạn chưa cung cấp mã nguồn.

Đảm bảo bạn đang liên kết đến biểu định kiểu của mình bằng cách sử dụng thẻ link trong tài liệu HTML head.

Nếu bạn có:

<style type="text/css"> 
/* <![CDATA[ */ 
#someid 
{ 
    margin: 0; 
    padding: 3px 12px; 
} 
/* ]]> */ 
</style> 

Bạn sẽ cần phải có

#someid 
{ 
    margin: 0; 
    padding: 3px 12px; 
} 

trong file CSS của bạn với:

<link rel="stylesheet" type="text/css" href="path/to/style.css" /> 

liên kết đến các stylesheet.

Một số sai lầm người mới phổ biến bao gồm:

  • <style type="text/css" src="path/to/style.css">: vì đó là một cú pháp tương tự như thẻ <script>, trong đó sẽ có ý nghĩa, nhưng không hợp lệ
  • <link rel="stylesheet" src="path/to/style.css">: nhưng link yếu tố sử dụng href không src
  • đặt các phần tử link trong cơ thể: mặc dù các trình duyệt sẽ có xu hướng quản lý các phần tử link trong cơ thể, có khả năng sẽ có một số lỗi và đó không phải là hành vi được xác định
  • không chỉ định khai báo loại tài liệu: cho phép trình duyệt chuyển sang chế độ quirks, là không bao giờ một ý tưởng hay.
+0

+1 để hiển thị cách thực hiện. Tôi nghi ngờ bạn không thể đi sai bây giờ;) – Blender

+0

Cảm ơn bạn đã giúp đỡ của bạn, nó được đánh giá rất nhiều, tuy nhiên tôi nghĩ rằng vấn đề tôi đang có, sau khi thử nghiệm nhiều hơn một chút có vẻ là nhiều trình duyệt liên quan, như trong, trên IE8/7 và FF4 & safari nó hoạt động ok, nhưng trong Chrome, khi tôi chạy các tập tin như các tập tin địa phương, nó cũng tốt, nhưng sau khi tải lên máy chủ của tôi, một số yếu tố đang chuyển xuống thay vì được bên cạnh. Mà không có ý nghĩa, nhưng nếu tôi di chuyển các phong cách trở lại được trong HTML, sau đó nó hoạt động tốt. Có lỗi trong Chrome sẽ làm điều này không? hoặc cái gì khác? –

3

Bạn nên đảm bảo biểu định kiểu được nhập đúng cách. Đôi khi @import không hoạt động tốt nếu không được sử dụng cho phù hợp, nên luôn tham khảo stylesheet của bạn:

<link rel="stylesheet" type="text/css" href="name-of-stylesheet.css" />

Luôn luôn nhớ để đóng thẻ <link> như đó là một thẻ tự chặt chẽ. Tôi nghĩ rằng @zzzzBov quên đề cập đến điều đó.

Cuối cùng, nếu điều đó không làm việc, hãy cố gắng ghi đè lên một số các phong cách bằng vật lý văn bản (trên phần </head>) cái gì đó như:

<style type="text/css"> 
    body { background: blue; } 
    * { color: red; } 
</style> 

và xem nếu cung cấp cho bạn một nền màu xanh và đỏ văn bản màu. Nó nên. Sau đó, hãy thử triển khai phương thức tham chiếu và đảm bảo bạn tham chiếu tệp biểu định kiểu vào đúng thư mục.

Chúc may mắn!

+0

bạn chỉ * cần * để đóng các thẻ đơn lẻ ('/>') trong XML/XHTML, và thậm chí sau đó, các trình duyệt rất tha thứ. – zzzzBov

+0

@z: cảm ơn vì đã làm rõ. đánh giá cao rằng – Amit

0

Tôi đã có cùng một vấn đề, nhưng nguyên nhân không phải là một số sai lầm trong mã nhưng thực tế là các tập tin .css đã được tải với một số chậm trễ sau khi thực hiện các sửa đổi trong nó. Máy chủ cần 5 - 10 phút để cập nhật các thay đổi.

+0

Xin chào và Chào mừng bạn đến với Stackoverflow! Vui lòng đọc [Cách trả lời câu hỏi hướng dẫn] (http://stackoverflow.com/questions/how-to-answer). Trang web này là trang Hỏi & Đáp không phải là diễn đàn. Bạn có thể thêm một số chi tiết bổ sung cho câu trả lời của mình không? Đó là một chút mơ hồ. – slm

1

Tôi cũng gặp sự cố này và lý do là đường dẫn phải được cập nhật cho một số tham chiếu url() vì tệp css nằm trong một thư mục khác so với tệp html trước đó được gọi.

Vì vậy, về cơ bản

background-image: url('patterns/debut_dark.png'); 

phải được thay đổi để

background-image: url('../patterns/debut_dark.png'); 
0

Không bao gồm <style type="text/css"></style> trong tập tin .css của bạn.

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