如何只为不同的文本元素(在同一类下)更改CSS类的一部分?

anithi1

简介:在我的代码中,将鼠标悬停在文本元素上时,下面会出现一个图像。我想使用其他文本元素来执行此操作,唯一要更改的是图像URL。但是,我不想创建一个全新的item:hover类来更改悬停后出现的图像的url。有什么办法可以解决此问题?

我有两个样式相同的课程。

<h6 class = "item"> felucian garden spread </h6>
<h6 class = "item"> yobshrimp noodle salad </h6>

将鼠标悬停在“项目”上时,下面的CSS会显示图像。但是,我希望将鼠标悬停在“虾面条沙拉”上时会显示不同的图像。即使他们属于同一班级,有没有办法做到这一点?我试图避免为每个菜单项创建新的类和悬停事件。

.item:hover:after {
  content: "";
  background-image:url(felucian.jpg); // <- i want to change this part *only* for a different text, "yobshrimp noodle salad"
  background-size: 100% 100%;
  margin-left: 30%;
  display: block;
  height: 266px;
  width: 437px;
  -webkit-animation: fade-in-top 0.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
            animation: fade-in-top 0.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
  left: 150px;
  top: 50px;
  transition: all ease-in-out 1s
}
杰克·阿芙

无需撤消现有的HTML,实际上只能通过CSS Custom属性轻松实现。https://developer.mozilla.org/zh-CN/docs/Web/CSS/-- *

CSS-使用以下内容为背景图片创建自定义属性:

.item {
  --bg-url: url(felucian.jpg); /* you might want to set a default or something on the class */
}

.item:hover:after {
  content: "";
  background-image: var(--bg-url); /* use the custom prop like this */
  background-size: 100% 100%;
  margin-left: 30%;
  display: block;
  height: 266px;
  width: 437px;
  -webkit-animation: fade-in-top 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) both;
  animation: fade-in-top 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) both;
  left: 150px;
  top: 50px;
  transition: all ease-in-out 1s;
}

HTML-使用内联样式覆盖--bg-url

<h6 class = "item" style="--bg-url: url(felucian.jpg);"> felucian garden spread </h6>
<h6 class = "item" style="--bg-url: url(yobshrimp.jpg);"> yobshrimp noodle salad </h6>

面对类似的事情,我选择<img>在HTML中制作标签,并使用选择器使图像仅出现在悬停或焦点上,但这在技术上是可行的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何更改作为内部 html 一部分的一个元素的引导程序类?

querySelect 按 css 类的一部分

如何在休眠状态下仅审计超类的一部分?

如何定位CSS类名称的一部分?

在其他元素下隐藏移动文本的一部分

如何删除文本的一部分

如何返回从同一类继承的不同元素的数组?

如何删除元素的一部分?

如何仅更改状态的一部分?

如何从数组的一部分中找出不同的元素?

如何使用 JQuery 根据文本值为同一类的多个元素分配不同的属性

如何使用Selenium WebDriver和Python检索元素的文本的一部分?

如何使用Javascript用数组的一部分替换元素的内部HTML文本

如何传递String参数,使其成为类方法调用的一部分?

如何在正则表达式中否定类的一部分?

如何将常量列表导出为 JavaScript 类的一部分

如何将枚举类值用作for循环的一部分?

如何将类名的一部分定义为宏?

如何使用jQuery动态替换类的一部分?

我如何利用 TDD 删除类的面向公众的 API 的一部分?

如何检查继承的属性是否是类(子类)的一部分

如何更改richTextBox行文本的一部分?

如何将字符串的一部分更改为 JSX 元素?

如何使用CSS选择自定义元素的一部分?

如何使用CSS文件仅更改HTML文件的一部分?

如何复制ArrayList的一部分,更改并添加到同一ArrayList中?

使用 jQuery,如何将类添加到具有活动元素的 href 路径的一部分的 href 的元素?

通过类名的一部分查找类

jQuery-查找输入按类的一部分具有多个类