2

私は別の中にDIVを持っています。それらの1つは「プレーンテキスト」であり、私がやりたいことは、その幅を可能な限り最大にして自動にすることです。

コードは次のとおりです。

HTML:

<div class="artigo_nome"> <!-- here is the part that I need help -->
    <p>
        Computador Apple Imac 27P I5 3.5Ghz/8Gb/1Tb Md096Po/A
    </p>
</div>
<div class="artigo_definicoes round_corner">
    <div class="separador_artigo_imagem">
        <img src="img/artigos/fones.png" class="imagem_artigo" alt="artigo"/>
    </div>
    <div class="artigo_info">
       Computador Apple Imac 27P I5 3.5Ghz/8Gb/1Tb Md096Po/A<br />
       <span class="ler_mais">ver mais</span><br />
       <span class="comparar">adicionar para comprar</span>
    </div>
</div>

CSS:

.categoria_lista_artigos .artigo_nome{
    color:#6e6e6e;
    width:234px;
    height:34px;
    margin-left: -2px;
    border-radius:5px 5px 0 0;
    border-left:2px #aeaeae solid;
    border-right:2px #aeaeae solid;
    border-bottom:1px #aeaeae solid;
    /*background-color:#E6E6E6;*/
    position:relative;
    font-weight: 600;
    -webkit-box-shadow: 0px -3px 5px #e2e2e2;
    -moz-box-shadow:    0px -3px 5px #e2e2e2;
    box-shadow:         0px -3px 5px #e2e2e2;
    background: #ffffff; /* Old browsers */
    background: -moz-linear-gradient(top, #ffffff 0%, #cfcfcf 100%); /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#cfcfcf)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, #ffffff 0%,#cfcfcf 100%); /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, #ffffff 0%,#cfcfcf 100%); /* Opera 11.10+ */
    background: -ms-linear-gradient(top, #ffffff 0%,#cfcfcf 100%); /* IE10+ */
    background: linear-gradient(to bottom, #ffffff 0%,#cfcfcf 100%); /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#cfcfcf',GradientType=0 ); /* IE6-9 */
}

.categoria_lista_artigos .artigo_nome div {
    margin: auto;
    padding: 4px 13px;
    vertical-align: middle;
    line-height:13px;
}

さらに何か必要な場合は、言ってください。

4

1 に答える 1

9

必要なのは、テキスト行の幅に合わせて縮小することです。

次のように HTML を単純化できます。

<div class="artigo_nome">
Computador Apple Imac 27P I5 3.5Ghz/8Gb/1Tb Md096Po/A
</div>

次の CSS ルールを適用します。

.artigo_nome {
    border: 1px dotted blue;
    display: inline-block;
    max-width: 250px;
    padding: 10px;
    word-break: break-all; /* optional */
}

次の結果が得られます: http://jsfiddle.net/audetwebdesign/vVhWR/

inline-block、指定された値までの縮小幅を提供しmax-widthます。

長い単語をラップできるようにする場合は、word-breakプロパティを追加します。

注:簡単にするために、境界線/影/背景のスタイル設定を省略しましたが、簡単に元に戻すことができます。

于 2013-09-11T11:26:47.160 に答える