- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在使用列表的水平下拉菜单中,我的问题是下拉菜单及其主选项卡根据其内容长度具有不同的宽度。
我需要做的是下拉列表中的内容有长单词或小单词,选项卡还必须根据下拉内容长度动态调整,反之亦然。
$("li.dropdown a").hover(function () {
$(this).parent().toggleClass('zclass');
});
$("li.dropdown:before").hover(function () {
$(this).parent().toggleClass('zclass');
});
$(".dropdown-content").hover(function () {
$(this).parent().toggleClass('zclass');
});
#other-menu {width:850px; background-color:#eee;}
#other-menu li{ list-style:none; float:left; padding:10px;}
li a, .dropbtn {
display: block;
color: #828282;
text-decoration: none;
}
li.dropdown {
display: block;
border-radius: 2px;
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
position:relative;
}
.dropdown-content {
display: none;
position: absolute;
background-color: #fff;
min-width: 100%;
white-space: nowrap;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
z-index: 999999;
padding: 5px 7px;
margin-top: 15px;
margin-left: -9px;
height: auto;
top: 25px;
font-family: 'Fira-Sans-Semibold', sans-serif;
text-transform: uppercase;
border-top: 1px solid #ccc;
border-radius: 2px;
-webkit-border-radius: 2px;
-moz-border-radius: 2px;s
}
.dropdown > .dropdown-content a {
padding: 3px 6px;
text-decoration: none;
text-align: left;
font-size: 12px;
letter-spacing: 1px;
}
.zclass {
z-index: 200;
}
.dropdown > .dropdown-content a:hover,.dropdown > .dropdown-content a:focus { color:#5A5A5A !important; text-decoration: none;}
.dropdown:hover:before {
min-width: 100%;
height: 50px;
content:'';
position:absolute; /* set styling box to be absolute position to not affect parent */
z-index:-1; /* set it behind the parent */
/*copy the properties the parent had*/
border-radius: 2px;
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
/* use positioning to grow its size in relation to parent */
top:-5px;
bottom:-5px;
left:0;
right:-15px;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
background: #fff;
border: 1px solid #eeeeee;
}
.dropdown a:hover {
text-decoration: none; color: #828282 !important;
}
.dropdown:hover .dropdown-content {
display: block;
}
#other-menu {
z-index: 2000;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul id="other-menu" class="hidden-xs">
<li><a href="#">Home</a></li>
<li class="dropdown">
<a class="dropbtn" href="#">News</a>
<div class="dropdown-content">
<a href="#">national</a>
<a href="#">international</a>
<a href="#">states</a>
<a href="#">cities</a>
</div>
</li>
<li class="dropdown">
<a class="dropbtn" href="#">opinion</a>
<div class="dropdown-content">
<a href="#">cartoon </a>
<a href="#">columns </a>
<a href="#">editorial </a>
<a href="#">interview </a>
<a href="#">lead </a>
<a href="#">letters </a>
<a href="#">States </a>
<a href="#">cities </a>
<a href="#">National </a>
<a href="#">International </a>
<a href="#">States </a>
<a href="#">cities </a>
<a href="#">National </a>
<a href="#">International </a>
<a href="#">States </a>
<a href="#">cities </a>
</div>
</li>
<li class="dropdown">
<a class="dropbtn" href="#">States</a>
<div class="dropdown-content">
<a href="#">Tamil Nadu</a>
<a href="#">Andha</a>
<a href="#">Kerala</a>
<a href="#">Thiruvananthapuram</a>
</div>
</li>
<li class="dropdown">
<a class="dropbtn" href="#">Cities</a>
<div class="dropdown-content">
<a href="#">Tamil Nadu</a>
<a href="#">Andha</a>
<a href="#">Kerala</a>
<a href="#">Karnataka</a>
</div>
</li>
<li class="dropdown">
<a class="dropbtn" href="#">World</a>
<div class="dropdown-content">
<a href="#">Tamil Nadu</a>
<a href="#">Andha</a>
<a href="#">Kerala</a>
<a href="#">Karnataka</a>
</div>
</li>
<li class="dropdown">
<a class="dropbtn" href="#">Opinion</a>
<div class="dropdown-content">
<a href="#">Tamil Nadu</a>
<a href="#">Andha</a>
<a href="#">Kerala</a>
<a href="#">Karnataka</a>
</div>
</li>
<li class="dropdown">
<a class="dropbtn" href="#">Life & Style</a><div class="dropdown-content">
<a href="#">Tamil Nadu</a>
<a href="#">Andha</a>
<a href="#">Kerala</a>
<a href="#">Karnataka</a>
</div></li>
<li class="dropdown">
<a class="dropbtn" href="#">Entertainment</a><div class="dropdown-content">
<a href="#">Tamil Nadu</a>
<a href="#">Andha</a>
<a href="#">Kerala</a>
<a href="#">Karnataka</a>
</div></li>
<li class="dropdown">
<a class="dropbtn" href="#">EBusiness</a><div class="dropdown-content">
<a href="#">Tamil Nadu</a>
<a href="#">Andha</a>
<a href="#">Kerala</a>
<a href="#">Karnataka</a>
</div></li>
<li class="dropdown">
<a class="dropbtn" href="#">ESport</a><div class="dropdown-content">
<a href="#">Tamil Nadu</a>
<a href="#">Andha</a>
<a href="#">Kerala</a>
<a href="#">Karnataka</a>
</div>
</li>
</ul>
<强> Fiddle demo
最佳答案
我正在寻找基于 Jquery 的解决方案,并且我仍在努力寻找纯 Css 选项。
我找到了一个 CSS 解决方案,只需对 html 进行一些小改动即可!
我将您的 html li
block 更改为:
<li class="dropdown">
<div class="holder">
<a class="dropbtn" href="#">News</a>
<div class="dropdown-content">
<a href="#">national</a>
<a href="#">international</a>
<a href="#">states</a>
<a href="#">cities</a>
</div>
</div>
</li>
并将你的CSS更改为:
#other-menu {
display: flex;
width:850px;
background-color:#eee;
}
#other-menu li {
list-style:none;
}
li a, .dropbtn {
display: block;
color: #828282;
text-decoration: none;
}
.dropbtn {
padding: 10px;
white-space: nowrap;
}
.dropdown {
position: relative;
}
.dropdown-content {
display: none;
position: relative;
background-color: #fff;
min-width: 100%;
white-space: nowrap;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
z-index: 999999;
padding: 5px 0;
height: auto;
top: 0px;
font-family: 'Fira-Sans-Semibold', sans-serif;
text-transform: uppercase;
border-top: 1px solid #ccc;
border-radius: 2px;
-webkit-border-radius: 2px;
-moz-border-radius: 2px;s
}
.holder > .dropdown-content a {
padding: 3px 6px;
text-decoration: none;
text-align: left;
font-size: 12px;
letter-spacing: 1px;
}
.zclass {
z-index: 200;
}
.holder > .dropdown-content a:hover,.dropdown > .dropdown-content a:focus { color:#5A5A5A !important; text-decoration: none;}
.holder:hover {
z-index: 999;
position: absolute;
top: 0;
left: 0;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
background: #fff;
border: 1px solid #eeeeee;
border-radius: 2px;
-webkit-border-radius: 2px;
-moz-border-radius: 2px;
}
.holder a:hover {
text-decoration: none; color: #828282 !important;
}
.holder:hover .dropdown-content {
display: block;
}
#other-menu {
z-index: 2000;
}
<强> Css Fiddle demo
<小时/>这是获取下拉列表宽度并将其插入最近的选项卡(父选项卡)的示例,请查看。
我的 Jquery 选项:
$(function(){
$('.dropdown-content').each(function(){
var dropdownWidht = $(this).width();
$(this)
.closest('.dropdown')
.find('.dropbtn')
.css('width', dropdownWidht);
})
})
关于javascript - 根据内容长度将选项卡或下拉菜单调整为相同的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40299855/
我的理解是 width: 100% 让元素的宽度与其父元素的宽度相同,而 width: inherit 只有在明确指定父元素的宽度时才这样做.这种理解是否正确? 如果是这样,在我看来,当 width:
并设置“高度”为全屏的 1/2。 这是我的代码: div{ background:red; } 最佳答案 我会结合使用 css 和 javascript(使
编辑 2: 问题似乎出在规则的“bigTable”元素上。显然,在布局模板上使用时继承了错误的最小宽度。我仍在调查此事。 不过,我将再尝试一次 div。一个大问题是使用固定导航和动态内容,但我已经为此
我的网站需要显示宽表。在它上面是标题,它应该和整个页面一样宽(在这种情况下,和表格一样宽)。但是,它的宽度与视口(viewport)(屏幕尺寸)一样宽,因此显示时看起来还不错,但是一旦用户滚动到侧面,
我有一个小问题。我总是使用 float 来安排我的元素。我正在转向 flexbox,我做了一些例子,一切都很好,但我正在做一个事情进展不顺利的例子。 我有一个包含 1 到 12 种产品的容器,每行 4
例如,它们在自动边距方面会导致完全不同的行为。 看看这个 fiddle :https://jsfiddle.net/L1rk46xy/ .fixed { display:fixed;
我尝试在帖子中将段落的宽度设置为 75%,并将图像的响应宽度设置为 100%。然而,总是在 默认。 Some texts Some texts Some texts Some texts 目前,我只
HTML 元素可以有 width/height 属性,也可以有 CSS width/height 属性: HTML 属性和 CSS 属性有什么区别,它们应该具有相同的效果吗? 最佳答案 有关该主题的
我有一个流动的 table ,现在需要一个固定的 thead。问题是当你固定 thead 时,th-s 不尊重 tbody 的 td-s 的宽度。列的大小都由 BootStrap 处理。我已经阅读了很
我想像这样布置一个区域: ---- ---- |A | |B | | | | | ---- ---- --------- |C | --------- 三个盒子中的每一个都是 .盒子
我遇到了很多问题。 1) 我正在使用 Bootstrap-Select 来获得具有搜索功能的现代选择框,但无论我尝试什么,我似乎都无法获得填充 col-span 的选择。 2) 我已将该行拆分为 2
http://jsfiddle.net/95EtZ/1/ 问题在行动中解决了一半。 现在它是用 javascript 中硬编码的容器宽度设置的。 我需要 js 来获取容器 div 的宽度——使用窗口滚
我想要两个宽度和高度均为 100% 的 div。我知道子 div 不会工作,因为父 div 没有特定的高度,但有没有办法解决这个问题? HTML: CSS: body
我需要使用 jQuery 更改 的高度和宽度 我尝试了以下代码 jQuery('#chart_popup').css('height','600px'); jQuery('#chart_popup')
在自定义 WPF 控件中,我想将控件的宽度设置为高度的函数。例如:Width = Height/3 * x; 实现此目的的最佳方法是什么,以便控件正确且流畅地调整大小(和初始大小)? 最佳答案 您可以
我正在使用igraph在R中绘制图形,执行plot(mygraph, vertex.color = "green")之类的操作。 有没有办法改变顶点边界的颜色和/或宽度? 最佳答案 查看下面的代码;
有没有办法使用jquery设置图像的高度和宽度?以下是我的代码 var img = new Image(); // Create image $(img).load(function(){
这个问题类似于 how-to-find-the-actual-width-of-grid-component-with-scrollbar-in-delphi 但我无法获取 CalcDrawInfo(
这里是 HTML/CSS 新手。 试图将我在 Codeacademy 上学到的知识付诸实践,但我遇到了一个问题,即我设置为 width:100% 的 header 最终离开了页面。我相信这是因为边框,
这里是 HTML/CSS 新手。 试图将我在 Codeacademy 上学到的知识付诸实践,但我遇到了一个问题,即我设置为 width:100% 的 header 最终离开了页面。我相信这是因为边框,
我是一名优秀的程序员,十分优秀!