CSS小练习之鼠标hover图片特效

本文介绍了一个CSS小练习,展示了如何利用相对定位、背景大小调整、伪元素和绝对定位等技巧,创建鼠标悬停时的图片特效。通过设置CSS属性如`background-size: cover;`、`transform: rotate() translateX() scale();`和`line-height`,实现了图片的等比例缩放、旋转和平移效果。同时,使用`nth-child()`选择器和伪元素`:before`、`:after`来增强视觉效果。
摘要由CSDN通过智能技术生成

深夜小练习


涉及知识点:

  1. position:relative;/相对定位 只给定位不给值的时候 对元素本身没有任何影响
  2. background-size:cover;/cover 等比例的放大缩小图片 直到占满盒子
  3. ul li:before,ul li:after/伪元素 通过样式给元素添加内容/
  4. position:absolute;/绝对定位 相对于已经定位的父元素 脱离文档流(在页面中不占位置)
  5. transform:rotate(45deg) translateX(-320px) scale(1.8);/transform变换 rotate旋转 deg角度 translateX位移
  6. line-height:45px;/特性:当值等于此元素的高度的时候 可以元素内一行文字上下居中/
  7. ul li:nth-child(1)/css3 新增 选择第几个子元素 /

效果图:

这里写图片描述


以放代码:
html

<body>
    <ul>
        <li>
            <div>
                <h3>大橘猫</h3>
                <p>十个橘猫九个胖,还有一个非常胖</p>
            </div>
        </li>
        /*此处省略后五个li*/
    </ul>
</body>

css

*{
    margin: 0;
    padding: 0;
}
 ul{
    width: 660px;
    height: 440px;
    margin:
可以使用Vue的`@mouseover`和`@mouseout`事件来实现CSS图文消息的鼠标hover悬停特效。 首先,在Vue的template中,使用v-for循环渲染出图文消息列表,并为每个消息绑定一个事件: ```html <template> <div> <div v-for="message in messages" :key="message.id" @mouseover="showMessage(message.id)" @mouseout="hideMessage()"> <img :src="message.image" alt="message image"> <p>{{ message.text }}</p> </div> </div> </template> ``` 在Vue的script中,定义`showMessage`和`hideMessage`方法,分别用于显示和隐藏鼠标悬停的消息: ```javascript <script> export default { data() { return { messages: [ { id: 1, image: 'image1.jpg', text: 'Message 1' }, { id: 2, image: 'image2.jpg', text: 'Message 2' }, { id: 3, image: 'image3.jpg', text: 'Message 3' }, ], hoverMessageId: null } }, methods: { showMessage(id) { this.hoverMessageId = id }, hideMessage() { this.hoverMessageId = null } } } </script> ``` 最后,在Vue的style中,使用CSS样式来实现鼠标悬停特效。可以使用`:hover`选择器来实现鼠标悬停时的效果,并根据`hoverMessageId`来判断当前鼠标悬停的消息: ```css <style scoped> div:hover:not([data-id='{{ hoverMessageId }}']) p { opacity: 0.5; } div[data-id='{{ hoverMessageId }}'] p { font-weight: bold; } </style> ``` 这样,在鼠标悬停某个图文消息时,该消息的文本会加粗显示,其他消息的文本会变得半透明。当鼠标离开图文消息时,所有消息都会恢复原来的样式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值