2017-07-11 15 views

答えて

1

あなたはのpareを作る必要があります矢印を作成する子divのnt divとposition: absolute;をクリックします。

矢印を作る主なものはtransformプロパティです。

正常に動作しています。しかしここでは、矢印のサイズはあなたが望むだけの2倍です。

* {box-sizing: border-box;} 
 
.line {height: 20px; border-bottom: solid 2px #000; margin-top: 100px; position: relative; z-index: 1;} 
 
.arrow {content: ""; position: absolute; top: 100%; left: 50%; transform: translateX(-50%); height: 20px; width: 80px; z-index: 2; background-color: #fff;} 
 
.arrow .pin {width: calc(50% + 5px); height: 2px; background: #000; display: inline-block; float: left; transform: rotate(25deg); transform-origin: 0 0;} 
 
.arrow .pin:last-child {transform: rotate(-25deg); transform-origin: 100% 0; float: right; margin-top: -2px;}
<div class="line"> 
 
\t <div class="arrow"> 
 
\t \t <div class="pin"> 
 
\t \t \t 
 
\t \t </div> 
 
\t \t <div class="pin"> 
 
\t \t \t 
 
\t \t </div> 
 
\t </div> 
 
</div>

そしてそれは、矢印の40px x 10pxサイズです。

* {box-sizing: border-box;} 
 
.line {height: 20px; border-bottom: solid 2px #000; margin-top: 100px; position: relative; z-index: 1;} 
 
.arrow {content: ""; position: absolute; top: 100%; left: 50%; transform: translateX(-50%); height: 10px; width: 40px; z-index: 2; background-color: #fff;} 
 
.arrow .pin {width: calc(50% + 3px); height: 2px; background: #000; display: inline-block; float: left; transform: rotate(25deg); transform-origin: 0 0;} 
 
.arrow .pin:last-child {transform: rotate(-25deg); transform-origin: 100% 0; float: right; margin-top: -2px;}
<div class="line"> 
 
\t <div class="arrow"> 
 
\t \t <div class="pin"> 
 
\t \t \t 
 
\t \t </div> 
 
\t \t <div class="pin"> 
 
\t \t \t 
 
\t \t </div> 
 
\t </div> 
 
</div>

+0

私はこれを実装しようとしました。それはクロムでうまく動作します。 FFでは、境界に比べて矢印が薄く見えます。それに対する解決策はありますか? https://jsfiddle.net/w9rkzm5h/ – Hacker

+0

このルールをCSSの '@ -moz-document url-prefix(){.arrow .pin {height:2.2px; }} '。これはFirefoxでのみ動作します。更新されたフィドル[ここ](https://jsfiddle.net/w9rkzm5h/1/)。 –

+0

IEやその他のブラウザには何も置く必要はありませんか? – Hacker

0

これはかなり簡単です。

手順1:矢印を追加するdivのプロパティをposition: relative;に指定します。

ステップ2:CSSの矢印を追加:<div class="arrow-down"></div>そして、position: absolute;プロパティを適用して、必要に応じて配置することができます。

あなたがクラスボックスでのdivを持っていたのであれば、これはあなたがどうなるのかです:

HTML:

<div class="box"> 

    <div class="arrow-down"></div> 
</div> 

CSS:

// Arrow at the bottom 

.box { 
    width: 200px; 
    height: 150px; 
    background-color:red; 
    margin: 50px auto; 

    position: relative; 
} 

.arrow-down { 
    width: 0; 
    height: 0; 
    border-left: 20px solid transparent; 
    border-right: 20px solid transparent; 
    border-top: 10px solid #f00; 

    position: absolute; 
    bottom: -10px; 
    left: 80px; 
} 

はここのためのフィドルです同じ:https://jsfiddle.net/t2ne282z/

+0

矢印が下ではなくその上に来てあなただけの位置を変更する必要があります – Hacker

+0

は、トップ属性:下に:その場合には、ここに更新された詐欺があります:https://jsfiddle.net/t2ne282z/ – Aj334

+0

色や赤があることを確認しました。矢印は透明で、矢印が表示される線は表示されるべきではありません。 – Hacker

関連する問題