一个高级的图片欣赏网页代码 用html+css+javescript
时间: 2024-03-24 18:41:46 浏览: 58
以下是一个高级的图片欣赏网页的代码示例,使用了 HTML、CSS 和 JavaScript 来创建一个动态和交互式的页面:
HTML 代码:
```html
<!DOCTYPE html>
<html>
<head>
<title>图片欣赏</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<header>
<h1>图片欣赏</h1>
</header>
<main>
<div class="gallery">
<img src="image1.jpg" alt="美景1" class="gallery-image">
<img src="image2.jpg" alt="美景2" class="gallery-image">
<img src="image3.jpg" alt="美景3" class="gallery-image">
<img src="image4.jpg" alt="美景4" class="gallery-image">
<img src="image5.jpg" alt="美景5" class="gallery-image">
<img src="image6.jpg" alt="美景6" class="gallery-image">
<img src="image7.jpg" alt="美景7" class="gallery-image">
<img src="image8.jpg" alt="美景8" class="gallery-image">
<img src="image9.jpg" alt="美景9" class="gallery-image">
</div>
</main>
<script type="text/javascript" src="script.js"></script>
</body>
</html>
```
CSS 代码:
```css
body {
margin: 0;
padding: 0;
font-family: Arial, sans-serif;
}
header {
background-color: #333;
color: white;
padding: 20px;
}
h1 {
margin: 0;
}
main {
padding: 20px;
}
.gallery {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}
.gallery-image {
width: 30%;
margin-bottom: 20px;
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
cursor: pointer;
transition: transform 0.2s ease-in-out;
}
.gallery-image:hover {
transform: scale(1.1);
}
```
JavaScript 代码:
```javascript
// 获取所有图片元素
const images = document.querySelectorAll('.gallery-image');
// 创建模态框元素
const modal = document.createElement('div');
modal.classList.add('modal');
document.body.appendChild(modal);
// 创建模态框图片元素
const modalImage = document.createElement('img');
modalImage.classList.add('modal-image');
modal.appendChild(modalImage);
// 添加事件监听器,当图片被点击时打开模态框
images.forEach(image => {
image.addEventListener('click', () => {
modalImage.src = image.src;
modal.style.display = 'block';
});
});
// 添加事件监听器,当模态框被点击时关闭模态框
modal.addEventListener('click', () => {
modal.style.display = 'none';
});
```
在这个示例中,我们使用 HTML 标记来创建一个标题 (`<h1>`) 和一个包含所有图片的 `<div>` 元素,并给每个图片添加了一个 `class` 属性,以便我们可以在 CSS 和 JavaScript 中选择它们。
在 CSS 中,我们创建了一个基本的样式,包括一个简单的标题、一个包含所有图片的 `<div>` 元素,并使用 Flexbox 布局来创建一个自适应的图库。我们还为每个图片添加了一些基本的样式,如宽度、阴影和鼠标指针。
在 JavaScript 中,我们首先获取所有图片元素,然后创建一个模态框元素和一个模态框图片元素。我们使用 `forEach()` 方法为每个图片元素添加一个事件监听器,当图片被点击时,将其 `src` 属性设置为模态框图片元素的 `src` 属性,并显示模态框元素。我们还为模态框元素添加了一个事件监听器,当模态框被点击时,将其隐藏。
请注意,这只是一个示例,实际上,一个真正的图片欣赏网页将包含更多的 HTML、CSS 和 JavaScript 代码来创建更复杂的布局和功能。
阅读全文