1

4 つのプログレス バーがあります。それらは灰色の領域コンテナ内にとどまるはずです。下の画像のスクリーン ショットに示すように、代わりにフッターの下に配置されます。

バーのコードは、配置できるように作成されており、1 つの領域に固執するだけではありません。

それはプログレスバーへのコードです:

HTML:

<section class="container">
    <section class="wrapper">
        <div class="meter"> <span style="width: 90%"></span>

        </div>
        <div class="meter"> <span style="width: 70%"></span>

        </div>
        <div class="meter"> <span style="width: 50%"></span>

        </div>
        <div class="meter"> <span style="width: 90%"></span>

        </div>
    </section>
</section>

CSS:

.container {
    position: relative;
}

.wrapper {
    position: absolute;
    right: 0;
    top: 90px;
}

.meter {
    height: 15px;
    /* Can be anything */
    margin-bottom: 10px;
    background: #555;
    -moz-border-radius: 25px;
    -webkit-border-radius: 25px;
    border-radius: 25px;
    width: 210px;
    padding: 0px;
    -webkit-box-shadow: inset 0 -1px 1px rgba(255, 255, 255, 0.3);
    -moz-box-shadow : inset 0 -1px 1px rgba(255, 255, 255, 0.3);
    box-shadow : inset 0 -1px 1px rgba(255, 255, 255, 0.3);
}
.meter > span {
    display: block;
    height: 100%;
    -webkit-border-top-right-radius: 8px;
    -webkit-border-bottom-right-radius: 8px;
    -moz-border-radius-topright: 8px;
    -moz-border-radius-bottomright: 8px;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    -webkit-border-top-left-radius: 20px;
    -webkit-border-bottom-left-radius: 20px;
    -moz-border-radius-topleft: 20px;
    -moz-border-radius-bottomleft: 20px;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    background-color: rgb(43, 194, 83);
    background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, rgb(43, 194, 83)), color-stop(1, rgb(84, 240, 84)));
    background-image: -webkit-linear-gradient(center bottom, rgb(43, 194, 83) 67%, rgb(84, 240, 84) 69%);
    background-image: -moz-linear-gradient(center bottom, rgb(43, 194, 83) 37%, rgb(84, 240, 84) 69%);
    background-image: -ms-linear-gradient(center bottom, rgb(43, 194, 83) 37%, rgb(84, 240, 84) 69%);
    background-image: -o-linear-gradient(center bottom, rgb(43, 194, 83) 37%, rgb(84, 240, 84) 69%);
    -webkit-box-shadow: inset 0 2px 9px rgba(255, 255, 255, 0.3), inset 0 -2px 6px rgba(0, 0, 0, 0.4);
    -moz-box-shadow: inset 0 2px 9px rgba(255, 255, 255, 0.3), inset 0 -2px 6px rgba(0, 0, 0, 0.4);
    position: relative;
    overflow: hidden;
}
4

2 に答える 2

0

あなたは正しい考えを持っています。ただし、ラッパーを空の section.container に対して相対的に配置しています。section.container には幅と高さが設定されていないため、要素が本来あるべき場所に移動しません。

コンテナーに選択したものを与えるだけmin-heightで、その境界内でコンテナーを移動できます。

 <section class="container" style="min-height: 300px;">
   <section class="wrapper">
     <div class="meter"> <span style="width: 90%"></span>
     </div>
      ...
   </section>
 </section>

また、ページのコンテンツを section.container (この場合は p タグ) に入れます。次に、バーをページの任意の場所に移動できます。

position: absolute何かの中で移動する座標 (上、下、左、右) を指定できますposition: relative。その相対的なものに幅がない場合(または配置している要素よりも幅が狭い場合、ものの下にフッターを取得する必要があります。

于 2013-07-10T21:28:22.623 に答える
0

これらの新しい CSS を追加してみてください。

.wrapper {
    position:relative;
    top:20px;
    left:100px;
    padding:
}
.container {
    position:relative;
    float:left;
    top:0;
    left:0;
    width:100%;
    height:auto;
}
#footer{
    position:absolute;    
    left:0;
    bottom:0;
}
于 2013-07-10T02:52:17.747 に答える