<!DOCTYPE html>
<title>CSS Flexbox: max-width of inflexible items</title>
<link rel="help" href="https://drafts.csswg.org/css-flexbox/#resolve-flexible-lengths">
<link rel="help" href="https://drafts.csswg.org/css-flexbox/#flexibility">
<link rel="bookmark" href="https://crbug.com/617956">
<meta name="assert" content="Inflexible items (flex factor 0 or flex basis violating the min/max size constraint) take max-width into account.">
<style>
.columns {
display: flex;
width: 800px;
}
.columns > div {
background: #aaa;
}
.column1 {
width: 800px;
overflow: auto;
max-width: 150px;
}
.column2 {
flex: 0.8 0 0;
}
.red {
position: absolute;
width: 510px;
background: red !important;
height: 10px;
z-index: -1;
}
.abspos {
position: absolute;
}
</style>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/check-layout-th.js"></script>
<body onload="checkLayout('.columns')">
<div id=log></div>
<p>You should see no red</p>
<div class="columns">
<div class="red"></div>
<div class="column1" data-expected-width="150">
Column 1
</div>
<div class="column2" data-expected-width="520">
Column 2
</div>
</div>
<p>This second part is just to ensure we don't assert</p>
<div class="columns">
<div class="column1 abspos" data-expected-width="150">
Column 1
</div>
<div class="column2" data-expected-width="640">
Column 2
</div>
</div>