鼠标移动到图片上,图片显示阴影边框,其他一些样式积累

2 篇文章 0 订阅

css:

#md-large-widget-content hover img {
	box-shadow: 6px 6px 6px rgba(0,0,0,0.3);
}
.ct-coll-item a.ct-coll-thumb:hover img{
	box-shadow: 6px 6px 6px rgba(0,0,0,0.3);
	opacity: 0.9;
}
html:

<div class="ct-coll-item">
<a class="ct-coll-thumb" href="###">
<img src="image/a.jpg"/>
</a>
</div>

在网上看到一个左右移动的css效果挺不错的,记录下:

css:

/**左右移动样式start*/
.ct-post-nav{
	clear:both;
	padding-top:30px;
	margin-top:20px;
	border-top: 1px solid whiteSmoke;
}
.ct-post-nav a img,
.ct-post-nav a:hover img{
	margin: 0px 10px 0px 0px;
	width: 50px;
}
.ct-post-nav .ct-post-prev a img{
	margin: 0px 10px 0px 0px;
	float: left;
}
.ct-post-nav .ct-post-next a img{
	margin: 0px 0px 0px 10px;
	float: right;
}
.ct-post-nav div{
	display:block;
	width:245px;
	position:relative;
	font-size:14px;
	color: #999;
}
.ct-post-nav div strong{
	color: #BBB;
	text-transform: uppercase;
	font-size: 11px;
}
.ct-post-nav div a{
	display:block;
}
.ct-post-nav div.ct-post-prev{
	float:left;
	padding-left:40px;
}
.ct-post-nav div.ct-post-next{
	float:right;
	text-align:right;
	padding-right:40px;
}
.ct-post-nav div a:after{
	position:absolute;
	color:#F4F5F7;
	font-size:56px;
	font-weight: normal;
	margin-top:-11px;
	height:22px;
	line-height:22px;
	top:55%;
}
.ct-post-nav .ct-post-prev a:after{
	content: '«';
	left:0px;
}
.ct-post-nav .ct-post-next a:after{
	content: '»';
	right:0px;
}
.ct-post-nav div:hover a:after{
	color:#54829B;
}
.ct-post-nav div:hover a{
	color:#333;
}
/**左右移动样式end*/

html:

<!--左右移动样式html start-->
<div class="ct-post-nav">
<div class="ct-post-prev">
<a></a>
</div>
<div class="ct-post-next">
<a></a>
</div>
</div>
<!--左右移动样式html end-->

一个before after在样式中的用法:

/**测试before的使用 当然还有after*/
.icon-right:before {
    content: "abcdefg";
}
html:

<!--测试before的使用-->
<p>
<span class="arrowIcon icon-right">xx</span>
</p>
附一个下载地址: http://download.csdn.net/detail/he20101020/6681793


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,这是一个使用CSS3伪元素和动画实现的图片放大镜效果。首先,我们需要一个包含图片的HTML元素,以及一个圆形区域来实现放大镜效果。HTML代码如下: ```html <div class="image-container"> <img src="your-image-url" alt="your-image-alt"> <div class="zoom-area"></div> </div> ``` 接下来,我们需要使用CSS样式来定位和样式化元素。其中,`.image-container` 用于定位图片和放大镜区域,`.zoom-area` 用于创建圆形区域和实现放大动画。CSS代码如下: ```css .image-container { position: relative; overflow: hidden; width: 300px; /* 图片容器宽度 */ height: 200px; /* 图片容器高度 */ } .image-container img { display: block; width: 100%; height: auto; } .zoom-area { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100px; /* 放大镜区域宽度 */ height: 100px; /* 放大镜区域高度 */ border-radius: 50%; /* 圆形边框 */ border: 2px solid #fff; /* 圆形边框样式 */ box-shadow: 0 0 5px rgba(0, 0, 0, 0.3); /* 阴影效果 */ opacity: 0; /* 初始状态透明 */ transition: opacity 0.3s ease-in-out; /* 过渡动画 */ pointer-events: none; /* 禁止鼠标事件触发 */ } .image-container:hover .zoom-area { opacity: 1; /* 鼠标移入后显示 */ } ``` 接下来,我们需要使用CSS伪元素来实现放大效果。这里使用 `::before` 伪元素作为放大的内容,使用 `transform: scale()` 属性来实现放大和定位。CSS代码如下: ```css .image-container:hover .zoom-area::before { content: ""; position: absolute; top: 0; left: 0; width: 600px; /* 放大后的宽度 */ height: 400px; /* 放大后的高度 */ background-image: url(your-image-url); /* 放大后的图片 */ background-size: cover; background-position: center; transform: scale(3); /* 放大倍数 */ transform-origin: 50% 50%; /* 放大中心点 */ } ``` 最后,我们需要使用JavaScript来实现放大镜区域的跟随效果。这里使用 `mousemove` 事件来监听鼠标移动,并使用 `transform: translate()` 属性来实现跟随。JavaScript代码如下: ```js const container = document.querySelector(".image-container"); const zoomArea = document.querySelector(".zoom-area"); container.addEventListener("mousemove", function(e) { const x = e.clientX - this.offsetLeft; const y = e.clientY - this.offsetTop; const dx = x / this.offsetWidth * 100; const dy = y / this.offsetHeight * 100; zoomArea.style.transform = `translate(-50%, -50%) translate(${dx}%, ${dy}%)`; }); ``` 这样,我们就完成了一个使用CSS3伪元素和动画实现的图片放大镜效果

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值