0

ここにテストサイトがあります:

http://www.hugoproject.com/test.html

最初の行の下に 2 行目の本のアイコンを配置しようとしていますが、何を試してもうまくいきません。状況を明確にするために、次のコードは 1 つの本のアイコンを表示します。

<div class="project">
<a href="#" class="HS" class="project-link">Arrow<span></span></a>
</div>

コードが 2 セットある場合は 2 つのアイコンが表示され、コードが 3 セットある場合は 3 つのアイコンが表示されます。しかし、コードのセットが 4 つ以上ある場合、表示されるアイコンは 3 つだけです。最初の 3 つの下にアイコンを作成する追加のコード セットが必要です。

また、ブラウザ ウィンドウのサイズを変更すると、アイコンの一番上の行が動的にサイズ変更されます。この機能を維持し、スクロール バーがないようにアイコンの両方の行を 1 ページに収めたいと思います。

何か案は?

HTML

<div id="content">
<div id="home-projects-wrapper">

 <h1 class="home">Hello! My name is Brandon</h1>

<div id="home-projects">
<div id="projects" class="circle">
<div class="project-group">

<div class="project">
<a href="#" class="HS" class="project-link">Arrow<span></span></a>
</div>

<div class="project">
<a href="#" class="HS" class="project-link">Arrow<span></span></a>
</div>
                                               <div class="project">
<a href="#" class="HS" class="project-link">Arrow<span></span></a>
</div>

<div class="project">
<a href="#" class="HS" class="project-link">Arrow<span></span></a>
</div>

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

CSS

#container {
  transition: left .3s;
  -moz-transition: left .3s;
  -webkit-transition: left .3s;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  overflow-x: hidden;
}
  #container.open {
    left: 270px;
    position: absolute;
    width: 100%;
    height: 100%;
    transition: left .3s;
    -moz-transition: left .3s;
    -webkit-transition: left .3s;
    overflow-x: hidden;
  }
#content {
width: 80%;
max-width: 1170px;
margin: 7% auto;
position: relative;
font-size: 14px;
line-height: 22px;
color: #777777;
}
        .page-template-page-templateshome-php #content {
            width: auto;
            margin: 0 auto;
        position: static;
    }
    .single-post #content {
       width: 60%;
    }

#home-projects {
    text-align: center;
    overflow: hidden;
    position: relative;
}
    #projects {
        width: 100%;
    } 
  .project-group {
    width: 100%;
    height: 100%;
    position: absolute;
  }
.project {
 float: left;
 text-align: center;
 width: 33.3%;
 height:100%;
}
    .project-link {
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
        background-color: #adadad;
        position: relative;
        overflow: hidden;
        display: inline-block;
        width: 80%;
    }
    .circle .project-link, .circle .project-link .hover {
        border-radius: 100%;
        -moz-border-radius: 100%;
        -webkit-border-radius: 100%;
    }
    .project-link .hexagon-top {
        content: '';
        display: block;
        position: absolute;
        left: 0;
        border-style: solid;
        border-bottom-color: transparent;
        border-left-color: #dfdfdf;
        border-right-color: #dfdfdf;
        width: 0;
        height: 0;
        z-index: 2;
    }
    .project-link .hexagon-bottom {
        content: '';
        display: block;
        position: absolute;
        left: 0;
        bottom: 0;
        border-style: solid;
        border-top-color: transparent;
        border-left-color: #dfdfdf;
        border-right-color: #dfdfdf;
        width: 0;
        height: 0;
        z-index: 2;
    }
        .project-link .hover {
            position: absolute;
            width: 100%;
            height: 100%;
            font-size: 14px;
            text-align: center;
            color: #fff;
            background: #ec6136;
            text-decoration: none;
            text-transform: uppercase;
            display: block;
            opacity: 0;
            transition: all .3s;
            -moz-transition: all .3s;
            -webkit-transitin: all .3s;
        }
            .project-link .hover-text {
                display: block;
                margin-top: 45%;
            }
            .project-link .hover-text:after {
                content: '>';
                font-family: 'icon';
                font-size: 12px;
                margin-left: 15px;
            }
        .project-link:hover > .hover {
            opacity: .9;
        }
4

3 に答える 3

0

+divの幅に等しい設定幅で本のコンテナを設定します。booksmargins

次に bookdivを に設定する"float: left;"と、1 行に 3 冊の本が配置されます。

自動スケーリングを維持したい場合は、現在行っているようにパーセンテージでこれをすべて行う必要があります。

于 2013-07-28T10:16:45.940 に答える
0

現在持っているものを使い続けたい場合は、.project-group から position:absolute を削除するだけです

于 2013-07-28T10:24:14.323 に答える
0

ブロックの高さを定義する必要があります。

.project {
    float: left;
    text-align: center;
    width: 33.3%;
    height: 290px;
}

.HS {
    display: inline-block;
    position: relative;
    text-indent: -9999px;
    width: 100%;
    height: 290px;
    background-image: url("http://www.hugoproject.com/ftp1/images/icons.png");
    background-position: 0px 0px;
    background-size: 800%;
}

ただし、それで問題が完全に解決されるわけではありません。背景画像/アイコンの代わりに、ボックス内の画像を使用したい場合があります。JavaScript/jQuery を使用して、いつでも新しいディメンションを計算することもできます。

于 2013-07-28T10:50:38.657 に答える