我正在为一个移动的网络应用程序使用Ionic框架,我试图改变鼠标悬停时的Ionic列表项的背景色,但它不会改变。
这是我的html中的内容:
<ion-list>
<ion-item ng-repeat="item in items" href="#/newpage">
<div>{{item.color}}</div>
</ion-item>
</ion-list>
这是CSS中的内容:
ion-item:hover {
background-color: red;
border-color: red;
}
边框颜色可以工作,但是它只突出显示项目的左、上、右边框,而不是下边框。悬停时背景颜色根本不会改变。是否有可能ion-item中的href标记禁用了CSS?如果我删除href标记,它可以正常工作。
我已经在网上寻求帮助,但没有找到解决方案或解释这个问题。任何帮助都是赞赏。谢谢。
6条答案
按热度按时间nwsw7zdq1#
在
ion-item
上使用href
属性将生成以下HTML(为清晰起见,删除了一些属性):您需要更改
a
元素的背景颜色:注意,
.item
部分用于为选择器提供更高的特异性,否则将使用.item
的默认背景色。也可以用
!important
来解决,但我更喜欢前者:设计边框的样式比较麻烦,因为列表元素根据列表中的位置(第一个、最后一个或其他)有不同的边距。可以解决这个问题,但当一个元素悬停时,它会将相邻的元素推到1px。可能也可以解决这个问题,但可能需要一堆新的CSS。
另一种解决方案是使用插入框阴影:
演示:http://plnkr.co/edit/TCRbWhIQ6xJRx2qrgExs?p=preview
luaexgnf2#
要修改默认离子列表项的背景色,您需要将这些选择器与
!important
一起使用,这也取决于您是否使用href
属性带有
href
:更改普通项目的颜色
悬停时
不带
href
:更改普通项目的颜色
悬停时
zzwlnbp83#
在Ionic 4中,这就是我使用
--background-hover
css变量的效果。希望这有帮助!
oprakyz74#
在Ionic 4中,如果你想为你的整个应用定制,而不仅仅是一个特定的项目列表,你可以更新变量.scss,分别是ion-item标签/组件的CSS自定义属性。
否则,请附加ID或类名。
ion-item#myid:hover
或ion-item.myclass:hover
有关其他属性,请参见:https://ionicframework.com/docs/api/item#css-custom-properties
每个Ionic标签都有这些属性可以自定义。
3qpi33ja5#
myzjeezk6#
对于最基本的方法,将其放在全局变量中。(将类item-hover添加到某个东西中...)
最好总是使用一个自定义的实用程序类,以免影响其他方面,如表单输入 Package 器等。
干杯!