最新の Chrome と Safari では、絶対配置の要素を withleftおよびrightset に設定するというアイデアを紹介する簡単な例を作成しましたが、結果は大きく異なります。この質問とこの0回答へのコメントに基づいて、 CSS仕様で概説されている方法に基づいて一貫して機能すると思いますが、そうではありません。これはなぜですか?
特定の幅を設定すると解決することは承知していますが、1) クロスブラウザーの違いの理由、および 2) 明示的な幅を指定するよりも中央に配置するより良い方法はありますか?
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
.vis {
width: 100%;
position: relative;
}
.btn {
position: absolute;
left: 0;
right: 0;
margin:auto;
display:block;
}
</style>
<title>Document</title>
</head>
<body>
<div class="vis">
<button class="btn">Test!</button>
</div>
</body>
</html>

