0

私は自分のウェブページでこの効果を達成しようとしています..

ここに画像の説明を入力

赤いボックスはメニューを配置する場所です。赤いボックスの下部を斜めにしたいと思います。傾斜の右側のセクションは、背景に灰色の画像がある可能性があるため、透明にする必要があります。

私が思い付くことができる唯一のことは、要素を回転させることですが、それは私が望まない要素の内容も回転させます..赤い要素の一番下のbg(単色になります)のみを傾ける必要があります.

4

2 に答える 2

0

透明な境界線でそれを行うことができます:

html

<div class="bgone">
    <div class="content">This is where the menu would go.</div>
</div>
<div class="bgtwo"></div>

CSS

.bgone {
    height: 100px;
    background: black;
    position: relative;
}

.bgtwo {
    height: 50px;
    border-top: 100px solid black;
    border-right: 1000px solid transparent;

}
.content {
    position: absolute;
    top: 10px;
    left: 10px;
    color: #FFF;
}
于 2012-07-17T02:27:09.787 に答える
0

回転した部分を青色で強調表示するだけで、何が起こるかがわかります ;)

サイズを変更する場合は、 top: と left: の値をいじる必要があるかもしれません

編集:小さなメニューの例を追加しました(本当に小さい^^)

jsfiddle リンク

ここにhtml部分があります:

<div id="menucontainer">
    <ul>
        <li>some</li>
        <li>menu</li>
        <li>here</li>
    </ul>
</div>
<div id="rotatedDiv">
</div>
<div id="background"></div>

そしてここにcss部分:

#menucontainer{
    position: relative;
    z-index: 100;
    background: red;
    height: 100px;
}

#menucontainer ul {
    position: absolute;
    bottom: 0px;
    left: 30px;    
}

#menucontainer li {
    list-style: none;
    margin-left: 10px;
    background: #123;
    display: inline-block;
}

#rotatedDiv {
    z-index: 99;
    background: blue;
    position: absolute;
    top: 14px;
    left: -5px;
    height: 90px;
    width: 200%;
    -moz-transform: rotate(-2deg);
    -webkit-transform: rotate(-2deg);
    -o-transform: rotate(-2deg);
    -ms-transform: rotate(-2deg);
    transform: rotate(-2deg);
}

#background {
    background: green;    
}

考えられる方法で変更したいかもしれませんが、主要部分は明確である必要があります;)

于 2012-07-17T02:11:51.077 に答える