
在将非语义化HTML转换为语义化HTML时,开发者常遇到
理解
标签及其默认样式
HTML5引入了
大多数现代浏览器会为
figure { display: block; margin-block-start: 1em; /* 垂直方向的起始外边距 */ margin-block-end: 1em; /* 垂直方向的结束外边距 */ margin-inline-start: 40px; /* 水平方向的起始外边距 */ margin-inline-end: 40px; /* 水平方向的结束外边距 */}
这些默认的margin,尤其是水平方向的margin-inline-start和margin-inline-end(在从左到右的文本流中对应margin-left和margin-right),会占据
问题场景分析
考虑以下HTML结构和CSS样式:
HTML 结构示例:
相关CSS样式示例:
img { max-width: 100%; /* 图片最大宽度为其父容器的100% */ height: auto;}.accommodation-item { background-color: white; border-radius: 10px; box-shadow: 10px 5px 5px #E0DDDD; margin-right: 10px; margin-left: 10px; margin-bottom: 10px; width: min-content; max-width: 180px; /* 父容器最大宽度180px */ cursor: pointer;}.accommodation-picture { border: 3px solid white; border-radius: 10px 10px 0px 0px; box-sizing: border-box; width: 180px; /* 期望图片宽度180px */ height: 100px; object-fit: cover;}
在这个例子中:
.accommodation-item 设置了 max-width: 180px。
浏览器为
因此,
标签的全局样式 max-width: 100% 会使其最大宽度受限于其父元素(即
尽管 .accommodation-picture 类试图将图片宽度设置为 180px,但由于父容器
解决方案:重置
的默认外边距
解决此问题的关键在于取消
修正后的CSS示例:
figure { margin: 0; /* 移除figure的默认外边距 */}img { max-width
以上就是图形标签()与图片尺寸异常:深入解析与解决方案的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1585067.html
微信扫一扫
支付宝扫一扫