将为大家详情如何用 CSS 来布局图片。
圆角图片
实例
圆角图片:
img {
border-radius: 8px;
}
实例
椭圆形图片:
img {
border-radius: 50%;
}
尝试一下 ?
缩略图
我们用 border
属性来创立缩略图。
实例
img {
border: 1px solid #ddd;
border-radius: 4px;
padding: 5px;
}
尝试一下 ?
实例
a {
display: inline-block;
border: 1px solid #ddd;
border-radius: 4px;
padding: 5px;
transition: 0.3s;
}
a:hover {
box-shadow: 0 0 2px 1px rgba
(0, 140, 186, 0.5);
}
响应式图片
响应式图片会自动适配各种尺寸的屏幕。
实例中,你可以通过重置浏览器大小查看效果:
假如你需要自由缩放图片,且图片放大的尺寸不大于其原始的最大值,则可用以下代码:
实例
img {
max-width: 100%;
height: auto;
}
尝试一下 ?
提醒: Web 响应式设计更多内容可以参考 CSS 响应式设计教程。
图片文本
如何定位图片文本:
实例
左下角左上角右上角右下角居中
尝试一下:
左上角 ? 右上角 ? 左下角 ? 右下角 ? 居中 ?
卡片式图片
实例
div.polaroid {
width: 80%;
background-color: white;
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}
img {width: 100%}
div.container {
text-align: center;
padding: 10px 20px;
}
图片滤镜
CSS filter
属性使用为元素增加可视效果 (例如:模糊与饱和度) 。
注意: Internet Explorer 或者 Safari 5.1 (及更早版本) 不支持该属性。
实例
修改所有图片的颜色为黑白 (100% 灰度):
img {
-webkit-filter: grayscale(100%); /* Chrome, Safari, Opera */
filter: grayscale(100%);
}
提醒: 访问 CSS 滤镜参考手册 查看更多内容。
响应式图片相册
实例
.responsive {
padding: 0 6px;
float: left;
width: 24.99999%;
}
@media only screen and (max-width: 700px){
.responsive {
width: 49.99999%;
margin: 6px 0;
}
}
@media only screen and (max-width: 500px){
.responsive {
width: 100%;
}
}
尝试一下 ?
图片 Modal(模态)
本实例演示了如何结合 CSS 和 JavaScript 来一起渲染图片。
首先,我们用 CSS 来创立 modal 窗口 (对话框), 默认是隐藏的。
而后,我们用 JavaScript 来显示模态窗口,当我们点击图片时,图片会在弹出的窗口中显示:
实例
// 获取模态窗口
var modal = document.getElementById('myModal');
// 获取图片模态框,alt 属性作为图片弹出中文本形容
var img = document.getElementById('myImg');
var modalImg = document.getElementById(“img01”);
var captionText = document.getElementById(“caption”);
img.onclick = function(){
modal.style.display = “block”;
modalImg.src = this.src;
modalImg.alt = this.alt;
captionText.innerHTML = this.alt;
}
// Get the element that closes the modal
var span = document.getElementsByClassName(“close”)[0];
// When the user clicks on (x), close the modal
span.onclick = function() {
modal.style.display = “none”;
}
如您还有不明白的可以在下面与我留言或者是与我讨论QQ群308855039,我们一起飞!