1 Востаннє редагувалося Yola (09.08.2020 18:55:34)

Тема: Чому через ширину інпута діви починають вилазити по вертикалі?

<style type="text/css">
.block {
    width: 100%;
    height: 30px;
    border-radius: 3px;
}

.block-inactive {
    border: 1px solid rgba(150,150,150,1);
}

.outer {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
}

.tag-ready {
    border-radius: 3px;
    padding: 3px 5px;
    margin: 6px 3px;
    background-color: rgba(150,150,150,1);
}

.tag-input {
    border-radius: 3px;
    margin: 3px 3px;
    width: 100%;
}
</style>

<div id=tags class="outer block block-inactive">
    <div class="tag-ready"><img width=10 height=10 src="close.png" />cpp</div>
    <div class="tag-ready"><img width=10 height=10 src="close.png" />c#</div>
    <div class="tag-ready"><img width=10 height=10 src="close.png" />asp.net</div>
    <input type="text" class="tag-input"/>
</div>

Чому додавання/прибирання width: 100% для tag-input так змінює результат? І як ціього уникнути?

Post's attachments

width100.png 7.67 kb, 100 downloads since 2020-08-09 

2 Востаннє редагувалося ostap34PHP (09.08.2020 19:04:53)

Re: Чому через ширину інпута діви починають вилазити по вертикалі?

Можу помилятись, але пригадується що при використанні flex, ширину треба вказувати іншим способом (через властивості flex-а)

Подякували: Yola, leofun012

3 Востаннє редагувалося Yola (09.08.2020 20:18:47)

Re: Чому через ширину інпута діви починають вилазити по вертикалі?

Замінив width: 100%; на flex: 1; і все стало добре. Тобто тепер у текстового поля flex-grow найбільше і він росте скільки можна. Дякую!

4

Re: Чому через ширину інпута діви починають вилазити по вертикалі?

швидше за все input має певну усталену ширину, і якщо явно не вказувати, яка ширина має бути, то використовується оте значення