0

When I resize the textarea element the other elements are not responsive. A sudden gap appears between the selected textarea and the textarea next to it.

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600&display=swap');
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}

.grid-container {
  position: relative;
  background-color: pink;
  display: grid;
  padding: 20px;
  grid-template-columns: auto auto auto auto auto auto;
  text-align: center;
}

.item {
  background-color: green;
  border: 1px solid black;
  font-size: 40px;
  resize: horizontal;
}
<link rel="stylesheet" href="https://unicons.iconscout.com/release/v4.0.0/css/line.css">

<div class="grid-container">
  <textarea class="item" id="item1">1</textarea>
  <textarea class="item" id="item2">2</textarea>
  <textarea class="item" id="item3">3</textarea>
  <textarea class="item" id="item4">4</textarea>
  <textarea class="item" id="item5">5</textarea>
  <textarea class="item" id="item6">6</textarea>
  <textarea class="item" id="item7">7</textarea>
  <textarea class="item" id="item8">8</textarea>
  <textarea class="item" id="item9">9</textarea>
  <textarea class="item" id="item10">10</textarea>
  <textarea class="item" id="item10">11</textarea>
  <textarea class="item" id="item10">12</textarea>
</div>

1
  • Your question isn't clear. What do you expect to happen when one textarea is wider than the one below it? Please see How to Ask, then revise your post title to ask a clear, specific question. Don't add tags. Commented Feb 23, 2023 at 19:52

1 Answer 1

1

The gap appears because of textareas in the same column and different row. You better use flex instead of grid.
In the snippet bellow, I created the two lines by separating items into two different divs. A more responsive way would be to use just one div, combined with flex-basis and flex-wrap on children.

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600&display=swap');
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}

.flex-container {
  position: relative;
  background-color: pink;
  display: flex;
  padding: 20px;
  grid-template-columns: auto auto auto auto auto auto;
  text-align: center;
}

.flex-container:not(:last-child) {
  padding-bottom: 0;
}

.flex-container:not(:first-child) {
  padding-top: 0;
}

.item {
  background-color: green;
  border: 1px solid black;
  font-size: 40px;
  resize: horizontal;
}
<link rel="stylesheet" href="https://unicons.iconscout.com/release/v4.0.0/css/line.css">

<div class="flex-container">
  <textarea class="item" id="item1">1</textarea>
  <textarea class="item" id="item2">2</textarea>
  <textarea class="item" id="item3">3</textarea>
  <textarea class="item" id="item4">4</textarea>
  <textarea class="item" id="item5">5</textarea>
  <textarea class="item" id="item6">6</textarea>
</div>
<div class="flex-container">
  <textarea class="item" id="item7">7</textarea>
  <textarea class="item" id="item8">8</textarea>
  <textarea class="item" id="item9">9</textarea>
  <textarea class="item" id="item10">10</textarea>
  <textarea class="item" id="item10">11</textarea>
  <textarea class="item" id="item10">12</textarea>
</div>

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.