HTML 下拉菜单自动宽度调整

2024-01-27

我创建了一个下拉菜单,该下拉菜单存在根据所选内容调整大小的问题。我使用以下 stackoverflow 答案作为调整下拉列表大小的灵感:https://stackoverflow.com/a/20091985/3166468 https://stackoverflow.com/a/20091985/3166468

由于某种原因,尽管发生了调整大小,但它总是调整太多或太少。这是 jsFiddle:https://jsfiddle.net/yadhwb97/3/ https://jsfiddle.net/yadhwb97/3/

这是 HTML:

<div class="dropdown">
  <select id="real_dropdown">
    <option disabled="">Options</option>
    <option value="long">Something super long in here</option>
    <option value="short">Short</option>
  </select>
</div>
<select id="width_tmp_select">
  <option id="width_tmp_option"></option>
</select>

这是 jQuery:

$(document).ready(function() {
  $('.dropdown').change(function(){
    $("#width_tmp_option").html($('.dropdown option:selected').text()); 
    $(this).width($("#width_tmp_select").width()+30);  
  });
});

当您选择下拉选项时,您将看到它如何调整大小太多或太小。如何才能正确调整大小?


问题是您的隐藏下拉菜单的字体大小不同。 添加font-size: 16px; to #width_tmp_select现在应该可以工作了。

$(document).ready(function() {
  $('.dropdown').change(function(){
    $("#width_tmp_option").html($('.dropdown option:selected').text()); 
    $(this).width($("#width_tmp_select").width());  
  });
});
.dropdown {
  width: 280px;
  overflow: hidden;
  background: url(https://secure.echobox.com/img/dropdown_arrow.png) no-repeat right transparent;
  border: 1px solid black;
  white-space: nowrap;
  background-size: 18px 5px;
}

.dropdown select {
  width: 100%;
  background: transparent;
  font-size: 16px;
  border: 0;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  font-family: "proxima-nova", Helvetica, Arial, sans-serif;
  white-space: nowrap;
  color: #56646E;
}

#width_tmp_select{
  display : none;
	font-size: 16px;
} 
<script src="https://code.jquery.com/jquery-3.1.1.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=" crossorigin="anonymous"></script>

<h2>
This "custom" dropdown doesn't resize correctly.
</h2>
<div class="dropdown">
  <select id="real_dropdown">
    <option disabled="">Options</option>
    <option value="long">Something super long in here</option>
    <option value="short">Short</option>
  </select>
</div>
<select id="width_tmp_select">
  <option id="width_tmp_option"></option>
</select>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HTML 下拉菜单自动宽度调整 的相关文章

  • 固定宽度可变高度网格CSS

    我们如何在网格布局中实现固定宽度和可变高度 就像www pinterest com http www pinterest com主页布局 我认为他们正在使用 Javascript 只是想知道是否还有其他方法 只需使用float left不管
  • 我的 CSS 未在 Internet Explorer 11 和 Firefox 中加载!仅适用于 Chrome

    我正在创建一个简单的网页 我的 CSS 只能在 Chrome 中使用 它在 Firefox 和 IE11 中都不起作用 这是我的 HTML h1 b u Adding a new Visitor u b h1 br div class wr
  • 将父容器扩展至 100% 高度以容纳浮动内容

    我正在为一个客户项目而苦苦挣扎 我的全部divs 没有绝对定位 height 100 for html body 和容器divs 但静态内容未达到其内容 在 910 像素处 我可以将溢出属性更改为auto 并且背景会继续向下到内容的末尾 但
  • 设置浏览器窗口最小化的最小尺寸限制?

    有没有办法在所有浏览器中手动设置浏览器窗口的最小尺寸 你可以试试 body min width 600px 一旦视口小于 600 像素 您将得到一个水平滚动条 这仅适用于支持 min width CSS 属性的现代浏览器 我认为不可能限制用
  • php中的条件格式化html表与时间戳比较

    echo table style width 100 tr echo td Order td echo td Destination td echo td Location td echo td Status td echo td Time
  • 在我的 index.php 中加载 CSS 和 JS 等资源时出现错误 403

    我使用的是 Linux Elementary OS 并在 opt 中安装了 lampp My CSS and JS won t load When I inspect my page through browser The console
  • div 边框上的内边距

    我想在 css 边框上添加填充 将其拉入 div 内 远离边缘 使用 css 可以吗 css3 很好 webkit 这是设计 我通过将一个 div 放在一个 div 中 然后给内部 div 一个边框来做到这一点 我想让标记尽可能精简 所以如
  • 如何将udp发送到udp node.js服务器?

    我对此很陌生 所以我真的不知道我在做什么 但我已经设置了一个 node js udp 服务器 我想从客户端 来自网站 向它发送一个数据包 但我不知道如何在 javascript 中做到这一点 或者是否可能 我不是在研究如何从 Node js
  • HTML5 历史 API

    我如何使用 HTML5 历史 api 我确实经历过https developer mozilla org en DOM Manipulated the browser history https developer mozilla org
  • 网站 YouTube 嵌入视频不断播放

    我正在使用 youtube 提供的 iframe 在我的网站上嵌入视频 我还使用了一个 css 弹出窗口 这是我从这个页面学到的http www pat burt com web development how to do a css po
  • 在网页上的文本框中键入内容时删除所有空格

    我如何在用户打字时即时删除输入到文本框中的空格 function var txt myTextbox var func function txt val txt val replace s g txt keyup func blur fun
  • 防止浮动换行,直到元素达到最小宽度

    我有可变宽度的 HTML 布局 内容左侧有一个固定宽度的菜单 div 可变宽度 由 css max width 和 min width 设置 对于非常窄的浏览器窗口 我希望内容包裹在菜单下方 我目前通过设置来实现这一点float left在
  • 为什么需要重置浏览器?

    好吧 我知道这可能不是最好的标题why我们需要重置浏览器 因为浏览器有不同的默认设置 我的问题太长 无法放入标题中 如果每个人 90 的时间都需要使用重置样式表 为什么浏览器需要设置默认样式 无论如何我们都会删除它们 对吗 因为某些规则默认
  • 防止用户在下拉菜单中选择默认值

    我试图阻止用户选择默认的下拉菜单选项 有没有办法在下拉菜单选项中添加文本而不是值 我的代码
  • 如何并排放置两个

    我有两个 div 我想要并排放置的元素 如下所示 navigation content 我想要导航 div 根据需要尽可能大 但不能更大 收缩以适应行为 内容 div 然后应该填充剩余的空间 如何在不指定百分比 例如 20 80 的情况下使
  • 如何使用 JavaScript 获取没有 HTML 元素的纯文本?

    我的 HTML 中有 1 按钮和一些文本 如下所示 function get content I don t know how to do in here
  • Google Chrome 106 可拖动导致元素消失

    使用拖放元素时 绝对定位元素中包含的大多数其他元素都会从屏幕上消失 如果我调整窗口大小 这些元素会出现 但在开始拖动时会再次消失 我在最新版本的 Google Chrome 106 和 Beta 版本 107 0 5304 18 以及现在的
  • 在d3.js中将2D形状转换为3D,并根据ANGULAR中的值调整高度

    我正在使用 d3 js v6 创建以下 2D 图表表示的 3D 图表 这个圆圈中有多个正方形 每个正方形都根据值分配了一种颜色 值越大 正方形越暗 现在我想将其转换为 3D 形状 其中当值变高时 只有特定正方形的高度会增加 因此结果在某种程
  • 如何在背景剪辑中包含文本装饰:文本;影响?

    我在用 webkit background clip text border and color transparent在锚标记上 下划线似乎永远不可见 我想要的是将文本装饰包含在背景剪辑中 这是我的CSS background clip
  • 防止文本区域出现新行

    我正在开发聊天功能 使用 Vue 并使用文本区域作为输入 以便溢出换行 并且对于编写较长消息的用户来说更具可读性 不幸的是 当用户按下 Enter 键并提交时 光标会在提交之前移动到新行 从而使用户体验感觉不佳 关于如何使用普通 Javas

随机推荐

  • 在 C++ 中修改 const int [重复]

    这个问题在这里已经有答案了 运行下面的代码显示 x ptr 那么为什么x和 ptr不相等呢 const int x 10 int ptr int x ptr ptr 1 cout lt lt x lt lt lt lt x lt lt lt
  • Python 中的队列与 JoinableQueue

    在Python中使用多处理模块时有两种队列 Queue 可连接队列 它们之间有什么区别 Queue from multiprocessing import Queue q Queue q put item Put an item on th
  • 如果行程计数不恒定,为什么 #pragma-unrolled 循环的性能会下降?

    我有以下使用循环展开的代码 pragma unroll for int i 0 i
  • 从另一台计算机访问 Rails 开发服务器

    我正在使用 webrick 在 Mac OS X Lion 上开发我的 Rails 应用程序 我正在尝试从另一台计算机访问该网站 用于测试 我的电脑的内部IP是10 1 10 100 访问10 1 10 100显示我的计算机上运行的 apa
  • Mercurial 和 xcuserdata、.ds_store 和 .git

    这里是善变的菜鸟 我在使用 Mercurial 和 xcuserdata ds store 和 git 等文件时遇到很多麻烦 我已经无计可施了 当前的设置有一个充当中间人的中央存储库 我们对其进行推送和拉取更改 在创建 hgignore 文
  • SKVideoNode仅在SCNSphere的一小部分上

    我使用 SKVideoNode 作为 360 视频球体的材质 但它仅在球体的 xy 正部分上渲染视频 我从 URL 流式传输视频 它是 m3u8供参考 请参阅 SKVideoNode 作为 SCNSphere 的纹理 https stack
  • 如何用 Perl 正则表达式替换重叠匹配?

    我想找到所有出现的 BBB 在一个字符串中并将它们替换为 D 例如 我有 ABBBBC 并想要生产 ADBC and ABDC 首先替换第一个BBB 然后替换另一个BBB 在 Perl 中有没有好的方法可以做到这一点 str ABBBBC
  • 我们如何冻结 Google Sheet 的一个单元格

    你能帮我冻结 Google 表格中的单元格吗 e 请参考我添加的图像复选框如果我勾选了该复选框一次 那么它不应该再次取消勾选 或者如果我在单元格中写入一些内容 它将被冻结 在 Google 表格中 无法 冻结 锁定 电子表格所有者编辑复选框
  • ActiveRecord 中的析取

    是否可以使用ActiveRecordnamed scopes 使用 sql 创建一个查询OR条款 当我使用 Model scope1 scope2 生成的查询是这些范围的结合 我回复是因为这是 活动记录分离 的第一个谷歌结果 使用 Rail
  • Noscript 标签、JavaScript 禁用警告和 Google 处罚

    当用户禁用 JavaScript 或使用 Noscript 等脚本阻止插件时 我一直使用 noscript 标签来显示警告 如果 JavaScript 被禁用 网站将无法正常运行 并且用户可能无法在没有警告的情况下弄清楚网站无法运行的原因
  • JavaFx 2 - TableView,返回所选项目

    我想从 TableView 中获取所选项目作为字符串 但它返回整个路径 在上图中 当我单击选择单元格时 我想要得到 Indicator selected is Shannon Entropy 当我得到 Indicator selected
  • 如何在Python中绘制k距离图

    如何在 DBSCAN 中绘制 在 python 中 给定最小点值的距离图 我正在寻找拐点和相应的 epsilon 值 在 sklearn 中 我没有看到任何返回此类距离的方法 我错过了什么吗 您可能想使用 numpy 提供的矩阵运算来加速距
  • 在 Angular 中创建新项目时,npm 抛出错误

    当我尝试使用 Git Bash 控制台使用 ng new 命令创建新的 Angular 项目时发生错误 我之前创建的项目从来没有出现过这个问题 这是调试日志的链接https drive google com open id 10ddECha
  • Metro UI:我正在切换 xaml 但图像未加载

    我有一个多 xaml 地铁应用程序 我想通过单击按钮在 xaml 之间切换 private void Button Click 1 object sender RoutedEventArgs e Window Current Content
  • 计算以零为底的累积和 (cumsum)

    我想修改cumsum功能 我希望将负值更改为 0 并且当有新值时D值不等于 0 然后使用D S 下面的例子 TD lt data frame product rep A 7 data seq as Date 2020 01 01 as Da
  • 缩短 JBoss Seam 应用程序中 REST 服务的路径

    我对 JBoss 和 Seam 还很陌生 我的项目有一个 REST 风格的服务 Path media Name mediaService public class MediaService GET Path test public Resp
  • AngularJS 未检测到 Access-Control-Allow-Origin 标头?

    我正在本地虚拟主机上运行一个角度应用程序 http foo app 8000 http foo app 8000 它正在向另一个本地 VirtualHost 发出请求 http bar app 8000 http bar app 8000
  • iisreset 后应用程序池未启动

    在开始之前 我知道使用 iisreset 被认为是不好的做法 但无论如何都不应该发生这种情况 我们有什么 多台在 Windows Server 2003 R2 64 和 32 位 上安装 IIS6 的计算机 多个 WCF Web 服务 NE
  • iOS 10 中使用自动调整单元格大小的 collectionViewContentSize

    在 iOS 10 之前 我有一个自调整大小的表视图 它仅由 UICollectionView 和使用标准 UICollectionViewFlowLayout 的自调整大小单元格组成 集合视图单元格的大小使用自动布局来调整 为了使表格单元格
  • HTML 下拉菜单自动宽度调整

    我创建了一个下拉菜单 该下拉菜单存在根据所选内容调整大小的问题 我使用以下 stackoverflow 答案作为调整下拉列表大小的灵感 https stackoverflow com a 20091985 3166468 https sta