Skip to content

Commit

Permalink
[css-anchor-position] Implement new inset-area proposal
Browse files Browse the repository at this point in the history
The new proposal is here:

w3c/csswg-drafts#9598 (comment)

inset-area now affects the containing block size and 'auto' insets
become 0 for inset-area.

Bug: 1477314

Change-Id: Ia2f0d5a1f866cd659f9e3f87ec2f639141df6a94
  • Loading branch information
Rune Lillesveen authored and chromium-wpt-export-bot committed Jan 11, 2024
1 parent de8d293 commit a56eb43
Show file tree
Hide file tree
Showing 3 changed files with 92 additions and 0 deletions.
38 changes: 38 additions & 0 deletions css/css-anchor-position/inset-area-abs-inline-container.html
@@ -0,0 +1,38 @@
<!DOCTYPE html>
<title>CSS Anchor Positioning: inset-area positioning with absolute inline container</title>
<link rel="help" href="https://drafts.csswg.org/css-anchor-position/#inset-area">
<link rel="match" href="inset-area-inline-container-ref.html">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
<style>
#in-flow {
font-family: Ahem;
font-size: 100px;
color: orange;
}
#inline-container {
position: absolute;
}
#anchor {
position: absolute;
top: 25px;
left: 100px;
width: 200px;
height: 50px;
anchor-name: --anchor;
background-color: cyan;
}
.anchored {
position: absolute;
anchor-default: --anchor;
background-color: blue;
}
#top-left { inset-area: top / left; }
#top-right { inset-area: top / right; }
#bottom-left { inset-area: bottom / left; }
#bottom-right { inset-area: bottom / right; }
</style>
<div id="in-flow">
<br>
<br>
&nbsp;&nbsp;<span id="inline-container">XXXX<span id="anchor"></span><div id="top-left" class="anchored"></div><div id="top-right" class="anchored"></div><div id="bottom-left" class="anchored"></div><div id="bottom-right" class="anchored"></div></span>
</div>
16 changes: 16 additions & 0 deletions css/css-anchor-position/inset-area-inline-container-ref.html
@@ -0,0 +1,16 @@
<!DOCTYPE html>
<title>CSS Test Reference</title>
<div style="position:relative">
<!-- The Ahem 'XXXX' text: -->
<div style="position:absolute; background-color:orange; left:200px; top:200px; width:400px; height:100px"></div>
<!-- The #anchor -->
<div style="position:absolute; background-color:cyan; left:300px; top:225px; width:200px; height:50px"></div>
<!-- top / left -->
<div style="position:absolute; background-color:blue; left:200px; top:200px; width:100px; height:25px"></div>
<!-- top / right -->
<div style="position:absolute; background-color:blue; left:500px; top:200px; width:100px; height:25px"></div>
<!-- bottom / left -->
<div style="position:absolute; background-color:blue; left:200px; top:275px; width:100px; height:25px"></div>
<!-- bottom / right -->
<div style="position:absolute; background-color:blue; left:500px; top:275px; width:100px; height:25px"></div>
</div>
38 changes: 38 additions & 0 deletions css/css-anchor-position/inset-area-inline-container.html
@@ -0,0 +1,38 @@
<!DOCTYPE html>
<title>CSS Anchor Positioning: inset-area positioning with inline container</title>
<link rel="help" href="https://drafts.csswg.org/css-anchor-position/#inset-area">
<link rel="match" href="inset-area-inline-container-ref.html">
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
<style>
#in-flow {
font-family: Ahem;
font-size: 100px;
color: orange;
}
#inline-container {
position: relative;
}
#anchor {
position: absolute;
top: 25px;
left: 100px;
width: 200px;
height: 50px;
anchor-name: --anchor;
background-color: cyan;
}
.anchored {
position: absolute;
anchor-default: --anchor;
background-color: blue;
}
#top-left { inset-area: top / left; }
#top-right { inset-area: top / right; }
#bottom-left { inset-area: bottom / left; }
#bottom-right { inset-area: bottom / right; }
</style>
<div id="in-flow">
<br>
<br>
&nbsp;&nbsp;<span id="inline-container">XXXX<span id="anchor"></span><div id="top-left" class="anchored"></div><div id="top-right" class="anchored"></div><div id="bottom-left" class="anchored"></div><div id="bottom-right" class="anchored"></div></span>
</div>

0 comments on commit a56eb43

Please sign in to comment.