【问题标题】:Why does the content of my blocks overflow on the other blocks?为什么我的块的内容会在其他块上溢出?
【发布时间】:2020-06-02 15:37:57
【问题描述】:

我在 Drupal 8 和 Bootstrap 上创建了一个页面,其中包含一个“了解更多”按钮来展开信息。

当信息被折叠时,块溢出。灰线和标签在上块溢出。

我该如何解决这个问题?谢谢

这里的灰线和标签溢出:

当信息展开时,它是好的:

树枝:

  <div class="card mb-5 p-0 overflow-hidden shadow rounded bg-white">
    {{ drupal_view('boutique_professionnel_page_diaporama', 'block_1') }}
    <div class="card-body pt-0">
      <div id="readmorecollapse">
        <div class="collapse" id="collapserm" aria-expanded="false">
          <div class="col-xs-12 col-sm-12 col-md-12 col-lg-12 p-0 border-bottom">
            <div class="mb-4">
              <div class="mr-4 float-left rounded-lg overflow-hidden">
                {{ store.field_professionnel_logo }}
              </div>
              <h1 class="mt-0">{{ store_entity.name.value }}</h1>
              {{ store.field_professionnel_description }}
            </div>
          </div>
          <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6 bs-left pl-0 mt-3">
            <div class="mb-3">
              {{ drupal_entity('user', store_entity.uid.target_id, 'store_default') }}
            </div>
            <div class="mb-3">
              {{ store.field_professionnel_ets_id }}
            </div>
            <div class="mb-3">
              <a class="text-decoration-none text-primary" href="mailto:{{ store_entity.mail.value }}">{{ store.mail }}</a>
            </div>
            <div class="mb-3">
              <a class="text-decoration-none text-primary" href="tel:{{ store_entity.field_professionnel_telephone.value }}">{{ store.field_professionnel_telephone }}</a>
            </div>
          </div>
          <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6 bs-right pr-0 mt-3">
            <div class="mb-3">
              <a class="text-decoration-none text-primary" href="geo:{{ store_entity.field_localisation.value }}">{{ store.address }}</a>
            </div>
            <div class="mb-3">
              {{ store.field_professionnel_accueil }}
            </div>
            <div class="mb-3">
              {{ store.field_professionnel_horaires }}
            </div>
          </div>
        </div>
        <div class="readmorebutton">
          <a role="button" class="collapsed btn btn-default btn-xs" data-toggle="collapse" href="#collapserm" aria-expanded="false" aria-controls="collapserm">
          </a>
        </div>
      </div>
    </div>
    <div class="card-footer d-flex flex-wrap justify-content-start pt-0">
      <div class="mt-3 mr-3">
        {{ store.flag_report_store }}
      </div>
      <div class="mt-3 mr-3">
        {{ store.flag_like_store }}
      </div>
      <div class="mt-3 mr-3">
        {{ drupal_block('shariff_block') }}
      </div>
    </div>
  </div>

CSS:

#readmorecollapse div.collapse[aria-expanded="false"] {
    height: 100px !important;
    overflow: hidden;
    visibility: visible;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;  
}

#readmorecollapse div.collapsing[aria-expanded="false"] {
    height: 42px !important;
}

#readmorecollapse .readmorebutton a {
    width: 100%;
}

#readmorecollapse .readmorebutton .collapsed  {
    box-shadow: 0px -10px 25px 0px rgba(255, 255, 253, 0.8);
}

#readmorecollapse .readmorebutton a.collapsed:after  {
    content: 'Afficher toutes les infos';
}

#readmorecollapse .readmorebutton a:not(.collapsed):after {
    content: 'Cacher';
}

【问题讨论】:

    标签: html css twitter-bootstrap twitter-bootstrap-3 bootstrap-4


    【解决方案1】:

    问题是您需要将overflow: hidden; 设置为div#collapserm 的第一个孩子。 css 代码必须是:

    /* Here you need to remove the overflow */
    #readmorecollapse div.collapse[aria-expanded="false"] {
        height: 100px !important;
        visibility: visible;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;  
    }
    
    /* Then add a new rule for the first child */
    #readmorecollapse div.collapse[aria-expanded="false"] div:nth-child(1) {
        overflow: hidden;
    }
    
    #readmorecollapse div.collapsing[aria-expanded="false"] {
        height: 42px !important;
    }
    
    #readmorecollapse .readmorebutton a {
        width: 100%;
    }
    
    #readmorecollapse .readmorebutton .collapsed  {
        box-shadow: 0px -10px 25px 0px rgba(255, 255, 253, 0.8);
    }
    
    #readmorecollapse .readmorebutton a.collapsed:after  {
        content: 'Afficher toutes les infos';
    }
    
    #readmorecollapse .readmorebutton a:not(.collapsed):after {
        content: 'Cacher';
    }
    

    【讨论】:

    • 感谢您的帮助,我对 CSS 进行了更改,但比以前更糟
    猜你喜欢
    • 2020-07-23
    • 1970-01-01
    • 2022-08-02
    • 2018-05-29
    • 2013-02-20
    • 2021-12-31
    • 2015-03-22
    • 2013-06-24
    • 2011-07-12
    相关资源
    最近更新 更多