CSS,Firefox和IE中的不同扩展和折叠行为

时间:2017-09-26 06:35:06

标签: html css css3 flexbox internet-explorer-10

我有一个展开菜单的面板,其他类似:

collapsed panel

当我在IE 10和Firefox 55.0.3中展开面板时,它看起来像这样:

expanded panel

但是在Chrome中,它运作良好

Chrome expanded

.tbl-main.Expandable搜索面板和结果面板(tbl-container)上有两个部分。我使用flex布局来覆盖parent.Search面板只有15px.ttl-main的重要性必须是.tbl-container。这里很好。但浏览器表现得很奇怪。这是我的html和css代码

.tbl-main {
  height: 100%;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.3);
  display: -webkit-box;  /* OLD - iOS 6-, Safari 3.1-6 */
  display: -moz-box;  /* OLD - Firefox 19- (doesn't work very well) */
  display: -ms-flexbox;  /* TWEENER - IE 10 */
  display: -webkit-flex;  /* NEW - Chrome */
  display: flex;  /* NEW, Spec - Opera 12.1, Firefox 20+ */
  -webkit-box-direction: normal;
  -moz-box-direction: normal;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
}

.tbl-searchpanel {
  min-height: 15px;
  background: yellow;
}

.tbl-container {
  min-height: 50px;
  background-color: blue;
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.tbl-searchpanel input {
  display: none;
  visibility: hidden;
}

.tbl-searchpanel label {
  display: block;
  padding: 0.5em;
  text-align: center;
  border-bottom: 1px solid #CCC;
  color: #666;
  background-color: lightcoral;
  min-height: 100%;
}

.tbl-searchpanel label:hover {
  color: #000;
}

.tbl-searchpanel label::before {
  font-family: Consolas, monaco, monospace;
  font-weight: bold;
  font-size: 15px;
  content: "+";
  vertical-align: central;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 3px;
  background: radial-gradient(ellipse at center, #CCC 50%, transparent 50%);
}

#expand {
  width: 100%;
  height: 250px;
  overflow: hidden;
  transition: height 0.5s;
  /*background: url(http://placekitten.com/g/600/300);*/
  /*color: #FFF;*/
  background-color: red;
  display: none;
}

#toggle:checked~#expand {
  display: block;
}

#toggle:checked~label::before {
  content: "-";
}
<div class="tbl-main">

  <div class="tbl-searchpanel">
    <input id="toggle" type="checkbox" />
    <label for="toggle"></label>
    <div id="expand"></div>
  </div>

  <div class="tbl-container">
  </div>

</div>

1 个答案:

答案 0 :(得分:0)

c规则

中删除min-height: 100%;

Stack snippet

&#13;
&#13;
.tbl-searchpanel label
&#13;
html, body {
  height: 100%;
  margin: 0;
}

.tbl-main {
  height: 100%;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.3);
  display: -webkit-box;  /* OLD - iOS 6-, Safari 3.1-6 */
  display: -moz-box;  /* OLD - Firefox 19- (doesn't work very well) */
  display: -ms-flexbox;  /* TWEENER - IE 10 */
  display: -webkit-flex;  /* NEW - Chrome */
  display: flex;  /* NEW, Spec - Opera 12.1, Firefox 20+ */
  -webkit-box-direction: normal;
  -moz-box-direction: normal;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
}

.tbl-searchpanel {
  min-height: 15px;
  background: yellow;
}

.tbl-container {
  min-height: 50px;
  background-color: blue;
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.tbl-searchpanel input {
  display: none;
  visibility: hidden;
}

.tbl-searchpanel label {
  display: block;
  padding: 0.5em;
  text-align: center;
  border-bottom: 1px solid #CCC;
  color: #666;
  background-color: lightcoral;
  /* min-height: 100%;                     removed  */
}

.tbl-searchpanel label:hover {
  color: #000;
}

.tbl-searchpanel label::before {
  font-family: Consolas, monaco, monospace;
  font-weight: bold;
  font-size: 15px;
  content: "+";
  vertical-align: central;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 3px;
  background: radial-gradient(ellipse at center, #CCC 50%, transparent 50%);
}

#expand {
  width: 100%;
  height: 250px;
  overflow: hidden;
  transition: height 0.5s;
  /*background: url(http://placekitten.com/g/600/300);*/
  /*color: #FFF;*/
  background-color: red;
  display: none;
}

#toggle:checked~#expand {
  display: block;
}

#toggle:checked~label::before {
  content: "-";
}
&#13;
&#13;
&#13;