css - 奇怪的 CSS :after effect in card columns in Bootstrap 4

标签 css twitter-bootstrap twitter-bootstrap-4 column-count

我正在为一个元素使用 Bootstrap 4 masonry card 布局,在该元素中我有一个 <select>具有自定义样式。部分自定义样式是使用 CSS 使用 :after 制作的插入符。 .不同的浏览器给我不同的结果,我想把它贴在这里以防有人有解决方案。我不确定这是 Bootstrap 问题还是 CSS 规范问题,所以也许有人也可以阐明这一点。

  • Chrome Canary:一切正常
  • Chrome:第一列看起来不错,但第一列之后的任何列看起来都不好,除非您转到移动设备(我将其设置为仅 1 列),然后在那里显示正常。仅当有超过 1 列时。
  • Firefox:一切正常
  • Safari:显示第一列,但第一列之后的任何列都不会显示插入符和文本。

这是一个代码笔链接: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) {
	.card-columns {
		-webkit-column-count: 1;
        -moz-column-count: 1;
    	column-count: 1;
	}
}

@media (min-width: 596px) and (max-width: 991px) {
	.card-columns {
		-webkit-column-count: 2;
        -moz-column-count: 2;
    	column-count: 2;
	}
}
<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>

最佳答案

显然移除了 overflow:hidden;修复一切。奇怪的是它会那样做。仍然很好奇为什么会这样。

关于css - 奇怪的 CSS :after effect in card columns in Bootstrap 4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36579528/

相关文章:

html - Bootstrap 4 由边框包围的导航栏菜单

jquery - 选择其他特定 div 时,将某些 div 的不透明度设置为 .7

html - 如何创建一个三 Angular 形的div并附加另一个div

javascript - 在 Bootstrap v5.0.0-alpha1 中,我可以将什么用于媒体(BS 3/4)?

twitter-bootstrap - 如何使列大小小于 col-xx-1

twitter-bootstrap - 内联形式的输入宽度 - Bootstrap 4

html - Django 模板中的导航栏

javascript - 在播放 youtube 视频时淡出页面

javascript - fancybox 无法在页面加载时打开

html - 使轮播以页面为中心?