2016-04-12 23 views
0

私はプロジェクトのためにブートストラップ4の石積みカードレイアウトを使用しています。そのプロジェクトの中に私は<select>にカスタムスタイルを持っています。カスタムスタイルの一部は、:afterを使用してCSSで作成されたキャレットです。さまざまなブラウザが私に異なる結果をもたらし、誰かが解決策を持っている場合に備えてここに投稿したかったのです。私はこれがBootstrapの問題かCSSの仕様の問題なのかどうかは分かりません。奇妙なCSS:ブートストラップ4のカード列の効果の後

  • クロームカナリア:あなたは(私はそれだけで1列に設定されている場合)、モバイルに行くしない限り、最初の列は、それは、その後、悪い第一印象の後に正常に見えるが、どの列:すべてがうまく
  • Chromeを探しますそこにうまく表示されます。 1つ以上の列がある場合のみです。
  • Firefox:すべてが問題ありません。
  • Safari:最初の列は表示されますが、最初の列の後の列は、キャレットとテキストは表示されません。

ここCodepenリンクです:http://codepen.io/derekshull/pen/GZQaRYどうやらオーバーフロー削除

.select-fancy { 
 
    display: inline-block; 
 
    border: 1px solid #bac2c6; 
 
    position: relative; 
 
    padding: 5px 10px; 
 
    border-radius: 20px; 
 
    width: 100%; 
 
    overflow: hidden; 
 
    color: #656565; 
 
    box-shadow: inset 0 -2px 5px rgba(255, 255, 255, 0.4); 
 
    background: #eee; 
 
} 
 

 
.select-fancy, 
 
.select-fancy > * { 
 
    cursor: pointer; 
 
} 
 

 
.select-fancy select { 
 
    -moz-box-sizing: content-box; 
 
    -webkit-box-sizing: content-box; 
 
    box-sizing: content-box; 
 
    background: transparent; 
 
    border: 0; 
 
    outline: 0; 
 
    text-shadow: 1px 1px rgba(255, 255, 255, 0.7); 
 
    font-size: 14px; 
 
    width: calc(100% - 23px); 
 
    -webkit-user-select: none; 
 
    -moz-user-select: -moz-none; 
 
    -moz-user-select: none; 
 
    -ms-user-select: none; 
 
    user-select: none; 
 
    -webkit-appearance: none; 
 
    -moz-appearance: radio-container; 
 
    appearance: none; 
 
    float: left; 
 
    padding-left: 5px; 
 
} 
 

 
.select-fancy:after { 
 
    content: ''; 
 
    display: block; 
 
    white-space: nowrap; 
 
    position: absolute; 
 
    width: 0; 
 
    height: 0; 
 
    right: 11px; 
 
    top: 50%; 
 
    margin-top: -4px; 
 
    border-width: 8px 6px; 
 
    border-style: solid; 
 
    pointer-events: none; 
 
    border-color: #656565 transparent transparent transparent; 
 
} 
 

 
.select-fancy img { 
 
    width: 17px; 
 
    height: 17px; 
 
    float: left; 
 
    margin-top: 1px; 
 
} 
 

 
@media (max-width: 595px) { 
 
\t .card-columns { 
 
\t \t -webkit-column-count: 1; 
 
     -moz-column-count: 1; 
 
    \t column-count: 1; 
 
\t } 
 
} 
 

 
@media (min-width: 596px) and (max-width: 991px) { 
 
\t .card-columns { 
 
\t \t -webkit-column-count: 2; 
 
     -moz-column-count: 2; 
 
    \t column-count: 2; 
 
\t } 
 
}
<section class="card-columns"> 
 
    <div class="card card-block"> 
 
     <h2 class="card-title"><a href="#">Card Title</a></h2> 
 
     <p class="card-text"></p> 
 
     <fieldset class="clearfix"> 
 
     <div class="select-fancy"> 
 
      <select class="urlSelect" data-projectid="12"> 
 
      <option value="Homepage">Homepage</option> 
 
      <option value="Board Members">Board Members</option> 
 
      <option value="Events">Events</option> 
 
      </select> 
 
     </div> 
 
     </fieldset> 
 
    </div> 
 
    <div class="card card-block"> 
 
     <h2 class="card-title"><a href="#">Card Title</a></h2> 
 
     <p class="card-text"></p> 
 
     <fieldset class="clearfix"> 
 
     <div class="select-fancy"> 
 
      <select class="urlSelect" data-projectid="12"> 
 
      <option value="Homepage">Homepage</option> 
 
      <option value="Board Members">Board Members</option> 
 
      <option value="Events">Events</option> 
 
      </select> 
 
     </div> 
 
     </fieldset> 
 
    </div> 
 
    <div class="card card-block"> 
 
     <h2 class="card-title"><a href="#">Card Title</a></h2> 
 
     <p class="card-text"></p> 
 
     <fieldset class="clearfix"> 
 
     <div class="select-fancy"> 
 
      <select class="urlSelect" data-projectid="12"> 
 
      <option value="Homepage">Homepage</option> 
 
      <option value="Board Members">Board Members</option> 
 
      <option value="Events">Events</option> 
 
      </select> 
 
     </div> 
 
     </fieldset> 
 
    </div> 
 
</section>

答えて

0

:隠されたが、すべてを修正します。奇妙なことにそれをするだろう。それがどうして起こったのか不思議です。