css - padding-top 不起作用,但 padding-right 是

这是我的CSS:

body { 
margin: 0px;
background-color: white;
}

#navbar { 
background-color: red;
margin: 0 auto;
width: 900px;
height: 200px;
}

#navbar a { 
padding: 20px;
color: grey;
text-decoration: none;
font-weight: bold;
font-size: 20px;
}

导航栏是 body 内的一个 div,我在导航栏内有几个标签。

这是输出:

最佳答案

block 级”元素和“内联元素”之间存在差异。根据基本概念,“内联元素”的边距和填充仅在水平方向中有效,但在垂直方向中无效。

您的 Div 是 block 级元素,但 anchor 标记 是内联元素。给垂直空间使它成为一个 block 元素,正如您已经发现的那样,或者将 anchor 放在一个 div 中,它具有“填充”或“边距”形式的垂直空间!

div a {display:block;padding:20px;} OR div a{display:inline-block;padding:20px;}

在后两种情况下,填充现在也会在垂直方向上起作用,因为现在已经从内联形式转换为 block 级元素。希望,这有帮助!

https://stackoverflow.com/questions/29842440/

相关文章:

bash - ANSI 转义在 `printf` 中不起作用

asp.net-mvc - 如何在 web.config 中设置密码和用户名

java - String.split() 如果在字符串的最后部分,则忽略定界符之间的空值

PHP - 如何获取 n 深多维数组的所有数组值?

ruby - 我在哪里可以看到我的浏览器发送的 http 请求

sql - 如何在外键约束中使用两列

macos - 将 MAC 上远程桌面中的下移控制向下箭头发送到 Windows PC

python - 列出目录中的所有文件 - 按大小过滤

sql-server - 在任务管理器中误杀了sqlserver.exe进程,如何重启?

sql - 使用当前连接从 sql 存储过程调用 dll 函数