Take the 2-minute tour ×
Webmasters Stack Exchange is a question and answer site for pro webmasters. It's 100% free, no registration required.

On the StackOverflow a question block (in the q-list on the index page and so on) represented by the following html code:

  <div class="question-summary narrow tagged-interesting" id="question-summary-19832613">
        <div onclick="window.location.href='/questions/19832613/how-to-display-only-transit-routesfor-trains-in-google-maps-api'" class="cp">
            <div class="votes">
                <div class="mini-counts">0</div>
                <div>votes</div>
            </div>
            <div class="status unanswered">
                <div class="mini-counts">0</div>
                <div>answers</div>
            </div>
            <div class="views">
                <div class="mini-counts">3</div>
                <div>views</div>
            </div>
        </div>
        <div class="summary">

            <h3>...</h3>
            <div class="tags t-javascript t-google-maps t-google t-google-maps-api-3">
            </div>
            <div class="started">
                <a href="/questions/19832613/how-to-display-only-transit-routesfor-trains-in-google-maps-api" class="started-link"><span title="2013-11-07 09:52:29Z" class="relativetime">1 min ago</span></a>
                <a href="/users/1309392/shirish">Shirish</a> <span class="reputation-score" title="reputation score " dir="ltr">189</span>
            </div>
        </div>
    </div>

It uses float positioning.

My questions is:

  • Would use of css styled tables be a better choice? (It's a table, isn't it?) Or it just depends on what are you prefer to use and doesn't affect the technical side (search engines or something)?

  • The background information (such as number of views, votes etc.) comes first in the code. And I know that search engines have a limit at viewing each page. So would it better to place div's depending on their importance and then markup them on the page using css methods (like negative margins and absolute positioning)? Or it isn't so important in this instance?

share|improve this question
add comment

1 Answer

up vote 0 down vote accepted

It's a table, isn't it?

It is somewhat like a table. There are certainly data points like views, votes, and answer count that are associated with each question. It doesn't really get displayed like a table in other ways though:

  • There is no table header.
  • There is no grid displayed
  • Items like the tags and author are displayed on a second line. In a true table, each would get its own table cell. You could manipulate the rowspan and cellspan of tables to get that same effect, but that would tie your table structure to a particular display.

Using div tags and CSS is much more flexible, as you can change a lot more about how the questions are displayed without changing the HTML markup. You only need to change the CSS.

doesn't affect the technical side (search engines or something)?

Search engines generally pay very little attention to the markup and display that you use. Occasionally they will notice and care when text is very big or small; or when when it is bolded. Choosing divs or tables isn't going to have any effect on how well your site ranks in search engines.

The background information (such as number of views, votes etc.) comes first in the code.

Search engines now download much larger documents than they did in the past. At one point Google suggested limiting documents to 100K. Today I've seen Google indexing well past that mark. Numbers before or after the question isn't going to change whether search engines see the text of the question. They also wont value the text differently either way.

share|improve this answer
    
Thank you for your detailed answer. Unfortunately, I can't give you an up vote –  Oleg9 Nov 7 '13 at 12:18
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.