如何使用sass/css将div的宽度设置为等于另一个div?

Ser*_*hiy 6 css sass

我有第一个元素:

 <div layout="column" layout-align="start center" class="focusBox flex "></div>
Run Code Online (Sandbox Code Playgroud)

这是css:

.focusBox {
 margin-top: 2%;
 border: 1px solid $alto;
 height: calc(100vh - 182px);
 background-color: $white;
}
Run Code Online (Sandbox Code Playgroud)

和第二个要素:

<div flex class="subFolderBox" ></div>
Run Code Online (Sandbox Code Playgroud)

这是css:

.subFolderBox {
  margin-bottom: 1%;
  border: 1px solid $alto;
}
Run Code Online (Sandbox Code Playgroud)

如何使用sass或css将第一个元素的宽度设置为秒?

dgk*_*nca 11

您可以display: inline-grid与包装器一起使用。不需要 JavaScript。列完全相等。

.second_div,
.first_div {
  border: 1px solid black;
  padding: 2px 4px;
  display: inline-block;
}

.wrapper {
  display: inline-grid;
  grid-template-columns: 1fr 1fr;
}
Run Code Online (Sandbox Code Playgroud)
<div class="wrapper">
  <div class="first_div">A very very very very long text</div>
  <div class="second_div">A word</div>
</div>
Run Code Online (Sandbox Code Playgroud)

动态版:

.second_div,
.first_div {
  border: 1px solid black;
  padding: 2px 4px;
  display: inline-block;
}

.wrapper {
  display: inline-grid;
  grid-auto-flow: column;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  margin: 20px 0;
}
Run Code Online (Sandbox Code Playgroud)
<div class="wrapper">
  <div class="first_div">A very very very very long text</div>
  <div class="second_div">A word</div>
</div>

<div class="wrapper">
  <div class="first_div">A very very very very long text</div>
  <div class="second_div">A word</div>
  <div class="second_div">A word word word</div>
</div>

<div class="wrapper">
  <div class="first_div">A very very very very long text</div>
  <div class="second_div">A word</div>
  <div class="second_div">A word</div>
  <div class="second_div">A word word word</div>
</div>
Run Code Online (Sandbox Code Playgroud)


Rah*_*hul 6

我不确定 css/scss 但如果你喜欢 jquery 你可以这样做

$(document).ready(function() {
  $(".second_div").css({
    'width': ($(".first_div").width() + 'px')
  });
});
Run Code Online (Sandbox Code Playgroud)
.second_div,
.first_div {
  border: 1px solid black;
  padding: 2px 4px;
  display: inline-block;
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="first_div">First Div some text</div>
<div class="second_div">Second.width </div>
Run Code Online (Sandbox Code Playgroud)