css 基于父 class 的动态 class
css dynamic class based on parent class
我正在使用 Twitter 的 typeahead.js
在用户向其中输入信息时自动填充我页面上的两个不同的输入框。
库的工作方式是在输入框下方添加一个 <div>
元素和一个名为 tt-menu
的 class。
我的第一个输入框宽度是850px,所以我在我的CSS里面加了一个class如下,覆盖了typeahead.js的默认宽度"auto":
.tt-menu {
width: 850px;
}
这会强制输入框上的预输入下拉菜单与输入框本身相同,并且工作正常。
我的问题是我的第二个输入框只有 650px - 所以 typeahead 下拉菜单比输入框大 200px。
由于我的每个输入都有自己的 class,我想知道是否有办法根据其下方的输入框更改 tt-menu
class ,类似于:
.inputBoxA tt-menu {
width: 850px;
}
.inputBoxB tt-menu {
width: 650px;
}
但是这个解决方案不起作用。
编辑
如果已接受的答案不适用于碰巧看到此主题的人
.inputBoxA > tt-menu
最终对我有用的是
.inputBoxA .tt-menu
尝试使用不同的 CSS 选择器以更好地定义它是菜单的 子项。
您可以通过在 CSS 选择器中使用 >
来做到这一点,类似于:
.inputBoxA > tt-menu { width:850px; }
这会选择 .inputBoxA 父项下的所有 tt-menus。
如果这个具体示例不起作用,或者您想阅读更多关于这个概念的信息,请查看 here。
我正在使用 Twitter 的 typeahead.js
在用户向其中输入信息时自动填充我页面上的两个不同的输入框。
库的工作方式是在输入框下方添加一个 <div>
元素和一个名为 tt-menu
的 class。
我的第一个输入框宽度是850px,所以我在我的CSS里面加了一个class如下,覆盖了typeahead.js的默认宽度"auto":
.tt-menu {
width: 850px;
}
这会强制输入框上的预输入下拉菜单与输入框本身相同,并且工作正常。
我的问题是我的第二个输入框只有 650px - 所以 typeahead 下拉菜单比输入框大 200px。
由于我的每个输入都有自己的 class,我想知道是否有办法根据其下方的输入框更改 tt-menu
class ,类似于:
.inputBoxA tt-menu {
width: 850px;
}
.inputBoxB tt-menu {
width: 650px;
}
但是这个解决方案不起作用。
编辑
如果已接受的答案不适用于碰巧看到此主题的人
.inputBoxA > tt-menu
最终对我有用的是
.inputBoxA .tt-menu
尝试使用不同的 CSS 选择器以更好地定义它是菜单的 子项。
您可以通过在 CSS 选择器中使用 >
来做到这一点,类似于:
.inputBoxA > tt-menu { width:850px; }
这会选择 .inputBoxA 父项下的所有 tt-menus。
如果这个具体示例不起作用,或者您想阅读更多关于这个概念的信息,请查看 here。