html - 将最大宽度设置为详细信息标签而不影响下拉箭头
问题描述
我有以下标记:
details {
border-bottom: 1px solid #3C3C3B;
}
details summary {
outline: none;
font-weight: 600;
padding: 30px 0px;
cursor: pointer;
}
details summary::-webkit-details-marker {
background: url(https://image.flaticon.com/icons/svg/3/3907.svg) center no-repeat;
color: transparent;
width: 30px;
height: 20px;
float: right;
}
details[open] summary::-webkit-details-marker {
background: url(https://image.flaticon.com/icons/svg/3/3581.svg) center no-repeat;
color: transparent;
width: 30px;
height: 20px;
float: right;
}
<details>
<summary>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor. Lorem ipsum dolor sit amet </summary>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation</p>
</details>
我不希望文本流过下拉箭头所在的区域。所以它看起来像这样:
设置max-width
打开details
或summary
不起作用,因为箭头在summary
标签上设置样式。我该怎么办?
解决方案
由于在这种情况下标记的宽度是已知的,因此我们可以将 padding-right 应用于 . 之后的任何内容summary
。
details {
border-bottom: 1px solid #3C3C3B;
max-width: 80%;
}
details summary {
outline: none;
font-weight: 600;
padding: 10px 0px;
cursor: pointer;
}
details summary::-webkit-details-marker {
background: url(https://image.flaticon.com/icons/svg/3/3907.svg) center no-repeat;
color: transparent;
width: 30px;
/* known value*/
height: 20px;
float: right;
}
details[open] summary::-webkit-details-marker {
background: url(https://image.flaticon.com/icons/svg/3/3581.svg) center no-repeat;
color: transparent;
width: 30px;
height: 20px;
float: right;
}
summary+* {
padding-right: 30px;
/* known value */
}
<details>
<summary>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor. Lorem ipsum dolor sit amet </summary>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation</p>
</details>
推荐阅读
- android - Android动态链接安装后需要点击两个按钮
- python - 在 Flask Restful API 中使用 Python 脚本
- c++ - 如何理解“MoveOnCopy(T&&) -> MoveOnCopy
“ 定义? - windows - 使用 cerbero 在 Windows 中从源代码构建 gstreamer .... 构建 gst-libav-1.0 的问题
- vim - 需要对 tmux 进行一些说明
- google-cloud-platform - 如何查找 Google Cloud VM 集群的 Web 接口端口
- javascript - 在反应中将参数传递给组件实时更新
- python - TypeError:“WebElement”对象不可迭代
- scala - 当实现只是抛出新错误时,Scala Array apply 方法如何返回索引处的值
- c# - 读取文本文件 c# 并按大小分隔