【问题标题】:bootstrap css repeated items randomly skippedbootstrap css重复项目随机跳过
【发布时间】:2016-05-06 00:32:30
【问题描述】:

我正在重复一个项目列表 (ng-repeat),页面上似乎随机跳过的空格最终变为空白。

当我检查元素时,Strauss 博士之后的下一个 div 确实是 Schimmel 博士,这让我相信列表中没有未显示的元素。我认为这是一个CSS问题。

HTML:

<div class="row user-doctors">
    <div class="col-md-4" ng-repeat="doctor in doctors |limitTo: 9">
         <div class="card-white">
          <div class="img-wrapper">
            <div class="row" ng-show="doctor.recommend">
              <div class="col-md-12" 
                   tooltip="{{ userFirstName }} recommends Dr. 
                            {{ doctor.last_name }}" tooltip-placement="top">
                  <i class="fa fa-check recommend-icon"></i>
              </div>
            </div>
            <img src="{{doctor.photo_url}}" ng-click="goToDoctor(doctor)">
            <div class="text-container">
              <span>Dr. {{ doctor.last_name }}</span>
            </div>
          </div>
          <div class="row">
            <div class="col-md-2"><i class="fa fa-medkit"></i></div>
            <div class="col-md-10">{{ doctor.city }}, {{ doctor.state }}</div>
            <div class="col-md-2"><i class="fa fa-stethoscope"></i></div>
            <div class="col-md-10">{{ doctor.specialty }}</div>
          </div>
        </div>
    </div>
  </div>
</div>

css

  .user-doctors {
    .card-white {
      margin: 20px;
      padding: 10px;
      .img-wrapper {
        position: relative;
        width: 100%;
        .recommend-icon {
          color: #5cb85c;
          position: absolute;
          right: 15px;
        }
      }
      img {
        padding-bottom: 10px;
        margin: 0 auto;
        width: 150px;
        height: auto;
      }
      .text-container {
        position: absolute;
        width: 95%;
        bottom: 0;
        word-wrap: break-word;
        background: -webkit-linear-gradient(transparent, rgba(0, 0, 0, .7));
        @extend .center;
        margin-bottom: 5px;
        span {
          font-weight: bold;
          font-size: 14px;
          color: white;
          text-decoration: none;
        }
      }
      .col-md-10 {
        padding-left: 2px;
      }
    }
  }

【问题讨论】:

  • 我认为丢失的记录只是因为你有ng-show="doctor.recommend",我宁愿说如果你想显示推荐的医生,那么你应该去过滤,ng-repeat="doctor in doctors | filter: {recommend: true} |limitTo: 9
  • @PankajParkar 啊,谢谢。你是对的。我能够删除 ng-show 并且没有空格。随时提供答案

标签: html css angularjs twitter-bootstrap angular-ui-bootstrap


【解决方案1】:

基本上隐藏记录只是因为ng-show="doctor.recommend"条件显示元素并占用空间,而只是隐藏它的内部内容。

我宁愿建议您只使用过滤器,例如显示recommend 医生。

ng-repeat="doctor in doctors | filter: {recommend: true} |limitTo: 9

【讨论】:

  • 谢谢。但是,我确实想向不推荐的医生展示。这只是我想有条件地包括的行。我在行上尝试了ng-if,但没有帮助。
  • @user2954587 你想首先实现什么?
  • doctor.recommend有条件地显示复选框
  • @user2954587 好的..但是上面的代码应该可以工作&doctor.city&你在 UI 上显示的其他数据呢?它出现在 HTML 上吗?
  • 是的,显示所有其他信息,只是没有复选框。如果我删除了ng-show,那么所有人都会得到复选框,并且不会丢失任何元素。我也尝试过移动ng-ifng-show 的各种组合,但ng-if 似乎无论如何都包含了DOM 中的元素
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-05-14
  • 2014-07-30
  • 1970-01-01
  • 1970-01-01
  • 2019-09-11
  • 1970-01-01
相关资源
最近更新 更多