CSS float: возможно ли центрированное решение? - PullRequest
1 голос
/ 22 июня 2009

У меня есть теговое облако, в котором теги (в Div) должны плавать по центру. Поплавка нет: центр, поэтому я ищу чистое решение. Мой HTML выглядит примерно так:

<div id="tagcloud">
  <div class="tag">Tag 1</div>
  <div class="tag">Tag 2</div>
  <div class="tag">Tag 3</div>
  <div class="tag">Tag 4</div>
</div>

Дивы должны плавать с пробелом в обе стороны (по центру). Я не уверен, как это объяснить лучше. Есть идеи?

спасибо!

обновление У тегов .tag должна быть гибкая ширина, чтобы в них помещалось различное содержимое.

Также должно быть возможно иметь несколько тегов в одной строке (если они достаточно короткие)

Мой CSS пока:

.tag {
  padding: 5px 0 0 0;
  float: left;
  margin: auto; }
  .tag img {
    border-right: 1px solid #fff;
    margin: 0;
    float: left;
    vertical-align: top; }
  .tag a {
    font: bold 10px Verdana;
    margin: 0;
    background-color: #ccc;
    padding: 3px 4px 3px 4px;
    height: 16px;
    float: left;
    text-decoration: none;
    vertical-align: top;
    cursor: pointer;
    color: #000; }

#tagcloud {
  margin-top: 7px;
  text-align: center; }
  #tag_box #tagcloud .tag {
    margin-left: auto;
    margin-right: auto; }

Мой HTML:

            <div id='tagcloud'>
              <div class='tag' id='tag_1004'>
                <img alt="Tag_22x17" src="/images/tag_22x17.png?1245428671" />
                <span class='name'><a href="/tags/design">design</a></span>
              </div>
              <div class='tag' id='tag_1005'>
                <img alt="Tag_22x17" src="/images/tag_22x17.png?1245428671" />

                <span class='name'><a href="/tags/degeneration">degeneration</a></span>
              </div>
              <div class='tag' id='tag_1006'>
                <img alt="Tag_22x17" src="/images/tag_22x17.png?1245428671" />
                <span class='name'><a href="/tags/deggendorf">deggendorf</a></span>
              </div>
              <div class='tag' id='tag_1007'>
                <img alt="Tag_22x17" src="/images/tag_22x17.png?1245428671" />

                <span class='name'><a href="/tags/hamburg">hamburg</a></span>
</div>

Ответы [ 4 ]

2 голосов
/ 22 июня 2009

Возможно, это может помочь?

.tag
{
margin-left:auto;
margin-right:auto;
width:100px;
}
1 голос
/ 22 июня 2009

Это работает на моем компьютере

   <style>
.tag {
  padding: 5px 0 0 0;
  display:inline;
  margin: auto; }



  .tag img {
  }


  .tag a {
    font: bold 10px Verdana;
    margin: 0;
    background-color: #ccc;
    padding: 3px 4px 3px 4px;
    height: 16px;

    text-decoration: none;
    vertical-align: top;
    cursor: pointer;
    color: #000; }



#tagcloud {
  margin-top: 7px;
  text-align: center; }



</style>
1 голос
/ 22 июня 2009

Попробуйте это

.tag
{
text-align:center;
display:inline;
}

#tagcloud{
text-align:center;
}
1 голос
/ 22 июня 2009

Если вы установите одинаковые значения ширины стилей #tagcloud и .tag, вы можете просто выровнять текстовый центр.

#tagcloud, .tag {
  width:100px;
  text-align:center;
}

другой вариант будет следующим:

#tagcloud {
  width:100px;
  text-align:center;
}

.tag {
  display:inline;
}
...