2012-01-18 28 views
19

giả sử tôi có một số tài liệu html có nhiều văn bản. Có phải "tốt" (~ không tệ :)) để có các phần tử chứa vi dữ liệu và ẩn các phần tử đó để người dùng không thực sự nhìn thấy chúng không?Bạn có thể ẩn microdata bằng CSS không?

Hãy nói rằng tôi có điều này:

<div style="display:none" itemscope...>some microdata describing div below</div> 
<div> There is actual text that is described by microdata</div> 

Vấn đề là theo cách này nó có thể được dễ dàng hơn để mô tả div 2. Bạn không cần phải thực hiện thay đổi trong toàn bộ văn bản, chỉ cần thêm một số yếu tố và ẩn chúng. Tôi muốn tạo trình soạn thảo HTML đơn giản có thể hỗ trợ tạo microdata và cách này có vẻ dễ thực hiện hơn và dễ sử dụng hơn (trước tiên hãy tạo nội dung thực, sau đó chú thích nó).

Trả lời

7

Ẩn nội dung được đánh dấu bằng loại lỗi Microdata là điểm của nó, dự định thêm thông tin bổ sung về nội dung đã hiển thị trên trang. Lý lẽ chính cho điều này là mọi người luôn nhớ cập nhật nội dung hiển thị, nhưng thường xuyên quên cập nhật nội dung mà họ không thể nhìn thấy, vì vậy nội dung 'meta' bị ẩn thường xuyên lỗi thời và không chính xác. Thay vào đó, Microdata có cách tiếp cận mô tả nội dung hiển thị , vì vậy nếu nội dung thay đổi dữ liệu mà nó tạo ra thay đổi. Hãy ví dụ này from the spec:

<h1 itemprop="fn"> 
    <span itemprop="n" itemscope> 
    <span itemprop="given-name">Jack</span> 
    <span itemprop="family-name">Bauer</span> 
    </span> 
</h1> 

Nếu bạn thay đổi none nội dung hiển thị của markup Microdata thực sự thay đổi:

<h1 itemprop="fn"> 
    <span itemprop="n" itemscope> 
    <span itemprop="given-name">Tim</span> 
    <span itemprop="family-name">Berners-Lee</span> 
    </span> 
</h1> 

Vì vậy Microdata là gần như chắc chắn không phải những gì bạn muốn sử dụng trong tình huống của bạn. Những gì bạn thực sự nên sử dụng thay vì phụ thuộc vào chính xác những gì bạn muốn thông tin này cho. Nếu bạn muốn thêm dữ liệu ẩn để xử lý bằng tập lệnh trên trang web của mình thì hãy sử dụng data-* attributes. Nếu bạn muốn thêm thông tin mô tả bổ sung mà không phải tất cả người dùng cần xem, hãy cân nhắc sử dụng ARIA. Đặc biệt, trong trường hợp của bạn, aria-describedby.

+3

Tôi có cùng một câu hỏi; Tôi có 4 trang. Tôi phải thêm thông tin đường dẫn vào một trang nhưng tôi không muốn các mẩu tin đó hiển thị trên các trang web. Nhưng dữ liệu đó sẽ được tìm nạp bởi hiển thị đoạn mã đa phương tiện của Google. – user1769790

1

Bạn sẽ làm bất kỳ điều gì với dữ liệu ẩn? Tôi muốn sử dụng nhận xét HTML hoặc thuộc tính tiêu đề.

HTML Comments:

<!-- This is an HTML Comment --> 
<div>Content</div> 

Tiêu đề Thuộc tính:

<div title="some information describing div">Content of div</div> 

comments HTML là, tất nhiên, cũng giống như ý kiến ​​trong các ngôn ngữ lập trình, ngoại trừ họ đi qua cho khách hàng. Thuộc tính phần tử tiêu đề chuẩn (có sẵn cho tất cả các phần tử html) chứa thông tin bổ sung về phần tử và được sử dụng như một chú giải công cụ khi di chuột qua phần tử.

Ví dụ, HTML cho tốc độ chấp nhận của bạn lên đó là:

<div class="accept-rate cool" title="this user has accepted an answer for 4 of 6 eligible questions">67% accept rate</div> 

nào nếu bạn di chuột qua nó nó nói "thành viên này đã chấp nhận một câu trả lời cho 4 của 6 câu hỏi đủ điều kiện".

+0

Cảm ơn, không may, tôi cần dữ liệu vĩ mô vì họ sẽ được sử dụng cho các mục đích khác và dữ liệu vĩ mô (hoặc RDFa vv) cung cấp những cách tốt hơn để thêm một số thông tin ngữ nghĩa hơn tiêu đề hoặc nhận xét – ladar

29

schema.org có một phương pháp thực tế cho "ẩn" dữ liệu vĩ mô:

http://schema.org/docs/gs.html#advanced_missing

Nếu bạn đang cố gắng tác động đến SEO sau đó "giấu" dữ liệu đánh dấu ngữ nghĩa của bạn từ người dùng nhưng giữ nó máy có thể đọc được (cho robot/nhện) không đánh bại mục đích.

Nếu đánh dấu schema.org của bạn được định dạng đúng, Google sẽ không phạt bảng xếp hạng chỉ mục của bạn nếu bạn "ẩn" các giá trị.

+0

bạn có biết Google tôn trọng điều này không? Trong một trang web tôi đã phát triển, người giữ nội dung là

và được thiết kế giống như lịch (muốn có các đoạn trích sự kiện phong phú trong Google), các sự kiện được BAO GỒM bên trong ngày/ngày tương ứng của chúng, do đó, nó tiềm ẩn cho người dùng, nó sẽ không có nghĩa là không thể sử dụng ... hoặc người nào khác Google đang bị thu hẹp ở chỗ bạn chỉ có thể hiển thị các sự kiện theo một cách ..... –

+0

Tôi hỏi vì tại trang định dạng phong phú, họ rõ ràng nói rằng nội dung đoạn mã chi tiết này sẽ không bị ẩn khỏi người dùng ... –

+1

@BrenoSalgado Google hỗ trợ đầy đủ và sao lưu Schema.org :) – Swivel

7

schema.org và do đó google chính thức nêu trong [1], rằng bạn không nên đánh dấu nội dung ẩn:

Càng nhiều càng tốt, trừ văn bản ẩn. Nói chung, càng có nhiều nội dung bạn đánh dấu là càng tốt, số
. Tuy nhiên, theo nguyên tắc chung, bạn chỉ nên đánh dấu nội dung hiển thị cho những người truy cập> trang web chứ không phải nội dung trong trang bị ẩn hoặc trang ẩn khác .

Bạn có thể sử dụng các thẻ linkmeta html cũng có trong cơ thể để đánh dấu nội dung mà nên vô hình cho người dùng:

Bạn muốn ẩn dữ liệu vĩ mô bằng cách sử dụng thẻ meta.

Ví dụ,

<div itemscope itemtype="http://schema.org/Product"> 
    <span itemprop="name">Funky Skirt</span> 
    <div itemprop="offers" itemscope itemtype="http://schema.org/Offer"> 
     <meta itemprop="price" content="100.00" /> 
     <link itemprop="availability" href="http://schema.org/InStock" />In stock 
    </div> 
</div> 

[1] http://schema.org/docs/gs.html

+0

tài liệu của họ nói "quy tắc chung" - không bao giờ - và những gì họ đang báo hiệu là không cố gắng từ khóa nội dung bằng cách sử dụng nội dung ẩn như một phần của chiến lược SEO hoặc bạn đi lang thang vào lãnh thổ hình phạt. Bạn vẫn có thể sử dụng nội dung ẩn cho các mục đích của riêng bạn, khi bạn muốn phá vỡ "quy tắc chung" chỉ cần không làm điều đó trong một nỗ lực xếp hạng mật độ từ khóa. –

0

Nếu chúng ta đang nói về Google penalities, bạn đã đọc cẩn thận các tài liệu hướng dẫn của đoạn trích chi tiết loại bạn đang làm việc trên .

By dụ, nếu tôi lấy đoạn trích chi tiết sản phẩm, sau khi tài liệu (https://support.google.com/webmasters/answer/146750?hl=en#offer_properties) chỉ các lĩnh vực quy định: Google nhận giá trị máy có thể đọc cụ thể cho các thẻ sản phẩm sau đây không được bỏ qua bởi Google khi ẩn:

  • loại
  • priceValidUntil
  • priceCurrency
  • giá
  • định danh
  • condition

Vì vậy, cách tốt nhất cho các trường này là sử dụng chúng trong thẻ meta.

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