当前位置: 首页 > news >正文

第一版代码

<!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>最终修复滚动条 Demo</title><!-- 引入Element Plus样式 --><linkrel="stylesheet"href="https://unpkg.com/element-plus/dist/index.css"/><style>html {font-size: 16px;}body {font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,"Helvetica Neue", Arial, sans-serif;display: flex;justify-content: center;align-items: center;min-height: 100vh;margin: 0;padding: 20px;box-sizing: border-box;background-color: #f0f2f5;}.display-box {display: inline-flex;flex-direction: column;position: relative;min-width: 200px;max-width: 560px;min-height: 200px;max-height: 300px;background-color: #ffffff;border-radius: 8px;box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);}.display-box::before {content: "";position: absolute;inset: 0;border-radius: inherit;pointer-events: none;background: red;-webkit-mask: linear-gradient(to right, white, transparent) top 0 left6px / calc(33.33% - 6px) 1px no-repeat,linear-gradient(to bottom, white, transparent) top 6px left 0 / 1pxcalc(33.33% - 6px) no-repeat,linear-gradient(to left, white, transparent) bottom 0 right 6px /calc(33.33% - 6px) 1px no-repeat,linear-gradient(to top, white, transparent) bottom 6px right 0 / 1pxcalc(33.33% - 6px) no-repeat,radial-gradient(circle at bottom right,transparent 7px,white 7px,white 8px,transparent 8px)top left / 8px 8px no-repeat,radial-gradient(circle at top left,transparent 7px,white 7px,white 8px,transparent 8px)bottom right / 8px 8px no-repeat;mask: linear-gradient(to right, white, transparent) top 0 left 6px /calc(33.33% - 6px) 1px no-repeat,linear-gradient(to bottom, white, transparent) top 6px left 0 / 1pxcalc(33.33% - 6px) no-repeat,linear-gradient(to left, white, transparent) bottom 0 right 6px /calc(33.33% - 6px) 1px no-repeat,linear-gradient(to top, white, transparent) bottom 6px right 0 / 1pxcalc(33.33% - 6px) no-repeat,radial-gradient(circle at bottom right,transparent 7px,white 7px,white 8px,transparent 8px)top left / 8px 8px no-repeat,radial-gradient(circle at top left,transparent 7px,white 7px,white 8px,transparent 8px)bottom right / 8px 8px no-repeat;}.display-box-content {padding: 1.25rem;padding-right: 2.5rem;box-sizing: border-box;overflow-y: auto;scrollbar-width: thin;scrollbar-color: #c1c1c1 #f1f1f1;}/* 标题容器样式 */.title {font-size: 0.875rem;color: #303133;line-height: 1.5;display: flex;align-items: center;margin-bottom: 0.5rem;}.title .label {font-weight: bold;color: red;font-size: 1rem;margin-right: 0.5em;flex-shrink: 0; /* 防止标签被压缩 */}/* 标题文本样式 - 实现省略号效果 */.title-text {flex: 1; /* 占据剩余空间 */white-space: nowrap; /* 不换行 */overflow: hidden; /* 隐藏溢出 */text-overflow: ellipsis; /* 显示省略号 */min-width: 0; /* 确保flex项目可以收缩 */}.details {margin-top: 0.5rem;}.suggestion {margin-top: 1rem;}.details h3,.suggestion h3 {font-size: 1rem;color: #303133;margin-top: 0;margin-bottom: 0.25rem;font-weight: 600;}.details-content,.suggestion-content {font-size: 0.875rem;color: #606266;line-height: 1.7;}.details-content {min-height: 50px;}</style></head><body><div id="app"><div class="display-box"><div class="display-box-content"><!-- 使用Element Plus的Tooltip组件包裹标题 --><el-tooltip:content="titleText"placement="top":disabled="!isTitleOverflow"effect="light"><div class="title" ref="titleRef"><span class="label">标题:</span><span class="title-text">{{ titleText}}此版本已修复滚动条问题。当内容足够多时,滚动条现在会正确出现。此版本已修复滚动条问题。当内容足够多时,滚动条现在会正确出现。此版本已修复滚动条问题。当内容足够多时,滚动条现在会正确出现。</span></div></el-tooltip><div class="details"><h3>详情</h3><div class="details-content"></div></div><div class="suggestion"><h3>建议</h3><div class="suggestion-content"><p>使用Flexbox布局是解决此类高度和溢出问题的现代标准方法。</p></div></div></div></div></div><!-- 引入Vue和Element Plus --><script src="https://unpkg.com/vue@3/dist/vue.global.js"></script><script src="https://unpkg.com/element-plus"></script><script>const { createApp, ref, onMounted, onBeforeUnmount } = Vue;const app = createApp({setup() {const titleText = ref("关于系统功能更新的详细说明");const isTitleOverflow = ref(false);const titleRef = ref(null);// 检查标题是否溢出const checkTitleOverflow = () => {if (titleRef.value) {const titleElement = titleRef.value.querySelector(".title-text");if (titleElement) {// 比较元素的滚动宽度和可视宽度isTitleOverflow.value =titleElement.scrollWidth > titleElement.clientWidth;}}};// 组件挂载后检查溢出状态onMounted(() => {checkTitleOverflow();// 添加窗口大小变化监听window.addEventListener("resize", checkTitleOverflow);});// 组件卸载前移除监听onBeforeUnmount(() => {window.removeEventListener("resize", checkTitleOverflow);});return {titleText,isTitleOverflow,titleRef,};},});// 使用Element Plusapp.use(ElementPlus);app.mount("#app");</script></body>
</html>
http://www.dtcms.com/a/419864.html

相关文章:

  • 2025年AI费控系统避坑指南:智能风控+预算管控能力对比
  • Windows的多路复用IOCP
  • 做网站的规范暴雪公司现状
  • 前端提效工具清单,常用前端效率工具推荐与开发提效实战经验
  • 做的网站怎么把技术支持去掉个人社保缴费年限怎么查询
  • 李宏毅机器学习笔记15
  • 数字化转型:开发者思维破局之道
  • 网站会员功能介绍营销背景包括哪些内容
  • 【NCS随笔】peripheral_hids_mouse例程修改为不使用PIN码绑定
  • 第三方软件验收测试:【AutoIt与Selenium结合测试文件上传/下载等Windows对话框】
  • 网站的二级目录是什么10个不愁销路的小型加工厂
  • K8S中关于容器对外提供服务网络类型
  • 建设网站需要虚拟空间嘛专业网站制作公司采用哪些技术制作网站?
  • 超声波水表:原理、实现与核心技术解析
  • 怎样 建设电子商务网站直播网站app开发
  • Nginx 核心功能配置:访问控制、用户认证、HTTPS 与 URL 重写等
  • 大模型显存占用完全指南:从训练到推理的计算公式与实战案例(建议收藏)
  • 惠州做网站采招网招标官网
  • 烟台做网站找哪家好哪个网站可以做海报
  • 【星海出品】计算机科学之磁盘数据读取时间逻辑
  • 模力通AI风格仿写 让公文写作告别“风格焦虑”
  • 构建AI智能体:四十七、Agent2Agent多智能体系统:基础通信与任务协作实现
  • 天猫建设网站的意义张家港网站建设做网站
  • python爬虫进阶版练习(只说重点,selenium)
  • 东莞网站设计教程为企业做好服务保障
  • 福州网站建设q.479185700強网页翻译网站
  • 134、【OS】【Nuttx】【周边】效果呈现方案解析:端口映射(三)
  • 网站开发 报价单网站源码asp
  • Java HHH000490: Using JtaPlatform implementation
  • 网站关键词检测郑州外贸网站推广