The problem is that the first element to which I want to set its base length (which conditionally should be 100px) is somehow reduced.
.main{
display:flex;
flex-flow:row nowrap;
}
.item1{
flex:1 1 100px;
background:#979797;
}
.item2{
flex:1 1 auto;
background:#373737;
}
<div class="main">
<div class="item1">not 100px</div>
<div class="item2">Some text here Some text here Some text here Some text here Some text here Some text here Some text here Some text here Some text here Some text here Some text here </div>
<div>
As I found out that the flex-shrink property was to blame, if you change from 1 to 0 (for item1), then the first element will not participate in compression and it will retain its length, which was originally written to it. The question is why flex-shrink affects the first element if auto is written to the second element?