對行內元素設定padding和margin不起作用
阿新 • • 發佈:2020-12-30
前言
看了表嚴肅表哥的電商網站專案,自己動手親自實現了一遍,前前後後遇到了幾個問題,特此總結一下。
1、問題
無論是padding還是margin,都只有left和right起作用,top和bottom不起作用,示例如下:
程式碼:
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="test.css" type="text/css">
<style>
div {
background-color: black;
width: 300px;
height: 50px;
}
.b {
padding: 20px;
}
</style>
</head>
<body>
<div></div>
<span> aaaaaaaa</span>
<span class="b">bbbbbbbb</span>
<span>ccccccc</span>
<div></div>
</body>
</html>
顯示結果:
可見只有padding-left和right在起作用,那麼如何讓padding-top和bottom也起作用呢?
2、解決方案
答:將行內元素變為塊級元素即可(margin同)。如下:
程式碼:
<!DOCTYPE html>
< html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="test.css" type="text/css">
<style>
div {
background-color: black;
width: 300px;
height: 50px;
}
.b {
display: inline-block;
padding: 20px;
}
</style>
</head>
<body>
<div></div>
<span>aaaaaaaa</span>
<span class="b">bbbbbbbb</span>
<span>ccccccc</span>
<div></div>
</body>
</html>
顯示結果: