<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div class="message">Message</div>
</body>
<style>
.message{
margin-top: 2300px;
margin-bottom: 1000px;
}
</style>
<script>
let message = document.querySelector('.message')
function onEntry(entry) {
entry.forEach(change => {
if (change.isIntersecting) {
alert('Простотрено')
}
});
}
let options = {
threshold: [0.5] };
let observer = new IntersectionObserver(onEntry, options);
let elements = document.querySelectorAll('.message');
for (let elm of elements) {
observer.observe(elm);
}
</script>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div class="block">
<div class="inner"></div>
</div>
</body>
<style>
.block{
width: 450px;
height: 650px;
margin-left: 20px;
overflow-x: hidden;
}
.inner{ background-color: rgb(23, 81, 132);
border-radius: 35px;
transform: skew(8deg);
width: 500px;
margin-left: -100px;
height: 650px;
}
</style>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div class="flex">
<div></div>
</div>
</body>
<button class="btn">ADD</button>
<style>
.flex{
display: flex;
flex-direction: column;
}
.flex div{
width: 250px;
background: mediumpurple;
filter: drop-shadow(0px 0px 4px mediumpurple);
height: 250px;
margin: 15px;
border-radius:3px;
}
.styles{
width: 250px;
background: mediumpurple;
filter: drop-shadow(0px 0px 4px mediumpurple);
height: 250px;
margin: 15px;
border-radius:3px;
}
</style>
<script>
let btn = document.querySelector('.btn')
let flex = document.querySelector(".flex")
btn.onclick = function(){
let div = document.createElement('div')
div.classList.add('styles')
$(div).hide(0)
flex.append(div)
$(div).show(400)
}
</script>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" href="style.css">
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div class="photos-div">
<img src="img.jpg" alt="" width="260" height="500">
<img src="img2.jpg" alt="" width="400" height="500">
<div style="display: flex; flex-direction: column; ">
<img src="img3.jpg" alt="" height="244" width="260">
<img src="img4.jpg" alt=""height="244" width="260"></div>
</div>
</body>
</html>
*{
padding: 0;
margin: 0;
}
.photos-div{
display: flex;
flex-direction: row;
}
.photos-div img{
margin: 6px;
object-fit: cover;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<p class="p"></p>
</body>
<script>
let p = document.querySelector('.p')
let date = new Date
setInterval(() => {
if(date.getHours() == 8 && date.getMinutes() == 40){
p.textContent = "Урок окончен"
}
}, 0);
setInterval(() => {
if(date.getHours() == 8 && date.getMinutes() == 0){
p.textContent = "Урок начат"
}
}, 0);
</script>
</html>