Да, у меня уже было это, но я решил, что есть способ растянуть его ...
аюсь выяснить, как получить два столбца моей сетки одинаковой высоты. Вот то, что я после:
xxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxx
x qqqqqqqqqqqqq x x qqqqqqqqqqqqqqq x
x qqqqqqqqqqqqq x x qqqqqqqqqqqqqqq x
x x x qqqqqqqqqqqqqqq x
x x x qqqqqqqqqqqqqqq x
xxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxx
Здесь x представляют границу сетки (display: grid), а q - метки и поля ввода. Здесь весь код и ссылка на то же самое на codepen.
.container {
font-family: Arial, Helvetica, Sans-Serif;
color: #666;
font-size: 12px;
position: absolute;
width: 100%;
margin: 0 auto;
border: 1px solid #666;
background-color: #fff;
height: 100%;
}
.outerGrid {
display: grid;
grid-template-columns: 1fr 2fr 3fr 1fr;
grid-template-rows: 80px 1fr 1fr 30px;
grid-gap: 20px;
grid-template-areas:
"title title title title"
". companyInfo contactInfo . "
". demoInfo demoInfo . "
"footer footer footer footer";
}
.companyInfoContainer {
grid-area: companyInfo;
}
.companyInfoBox {
padding: 20px;
border: 1px solid #666;
}
.contactInfoContainer {
grid-area: contactInfo;
}
.contactInfoBox {
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: auto;
grid-gap: 20px;
grid-template-areas: 'contactLeft contactRight';
border: 1px solid #666;
padding: 20px;
}
.titleRow {
display: flex;
-webkit-box-pack: justify;
justify-content: space-between;
align-content: flex-start;
margin-bottom: 10px;
color: #333;
font-size: 16px;
}
.formControl {
-webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
display: block;
height: 37px;
padding: 5px;
line-height: 1.25;
background-color: #fff;
width: 100%;
background-clip: padding-box;
border: 1px solid rgba(0,0,0,.15);
border-radius: .25rem;
transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
margin-bottom: 5px;
background-image: none;
}
.formTitleTop {
margin-bottom: 10px;
}
.formTitle {
margin: 10px 0;
}
... и HTML:
<div class='container'>
<div class="outerGrid">
<div class="companyInfoContainer">
<div class="titleRow">
<div>Company Information</div>
<div>* Required</div>
</div>
<div class="companyInfoBox">
<div class="formTitleTop">Company Name*</div><input type="text" class="formControl" value="">
<div class="formTitle">Website (leave blank if not website)</div>
<input type="text" class="formControl" value=""></div>
</div>
<div class="contactInfoContainer">
<div class="titleRow">
<div>Contact Information</div>
<div class="required">* Required</div>
</div>
<div class="contactInfoBox">
<div class="contactLeft">
<div class="formTitleTop">First Name*</div><input type="text" class="formControl" value="">
<div class="formTitle">Last Name*</div><input type="text" class="formControl" value="">
<div class="formTitle">Role*</div><input type="text" class="formControl" value=""><input type="button" value="Add Additional Contacts"></div>
<div class="contactRight">
<div class="formTitleTop">Phone Number*</div><input type="text" class="formControl" value="">
<div class="formTitle">Mobile Phone Number</div><input type="text" class="formControl" value="">
<div class="formTitle">Email Address*</div><input type="text" class="formControl" value=""></div>
</div>
</div>
</div>
</div>
codepen:https://codepen.io/GuitarJ/pen/QqZRYR
Я не могу заставить левый столбец растягиваться до высоты высоты правого столбца (что, я думаю, тоже высота строки. Я надеялся, что у CSS-сеток будет способ сделать это, но его сложно найти это точный вопрос.
Я также попытался установить высоту на 100%, но затем она не учитывала разрыв сетки и зашла слишком далеко.
Как я могу сделать, чтобы левая сторона была высотой строки?