HTML, CSS 및 Javascript에서 Microsoft와 같은 호버 효과가 있는 버튼 만들기
4815 단어 incodercsshtmljavascript
웹에서 많은 종류의 버튼 호버 효과를 보았을 수 있지만 오늘 이 블로그에서는 Microsoft와 같은 버튼 호버 효과를 만드는 방법을 보여 드리겠습니다. 버튼 호버 효과를 확인할 수 있습니다here.
이 디자인[마이크로소프트와 같은 호버 효과가 있는 버튼]에는 위 이미지에서 볼 수 있는 것처럼 파란색 배경의 버튼이 있습니다. 커서 위치.
다음을 좋아할 수 있습니다.
이 호버 효과의 기본 개념은 Javascript를 사용하여 버튼에 마우스를 올려 놓을 때 X 오프셋과 Y 오프셋을 가져와야 한다는 것입니다. 내가 말하려는 내용을 이해하기 어렵다면 소스 코드를 확인하거나 미리 볼 수도 있습니다.
미리보기를 사용할 수 있습니다here.
HTML 코드
<!-- --------------------- Created By InCoder --------------------- -->
<!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>Microsoft Button Design clone - InCoder</title>
<link rel="stylesheet" href="main.css">
</head>
<body>
<div class="btnContainer">
<div class="blur"></div>
<button class="inBtn">Submit</button>
</div>
<script src="script.js"></script>
</body>
</html>
CSS 코드
/* --------------------- Created By InCoder --------------------- */
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
*{
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: 'Poppins', sans-serif;
}
body{
display: flex;
height: 100vh;
align-items: center;
justify-content: center;
background-color: #393536;
}
.btnContainer{
--x: 0%;
--y: 0%;
width: 10rem;
height: 3rem;
overflow: hidden;
position: relative;
border-radius: .5rem;
background-color: red;
}
.btnContainer::before{
content: '';
opacity: 0;
width: 3rem;
height: 3rem;
cursor: pointer;
position: absolute;
filter: blur(1rem);
transition: all .1s linear;
top: calc(var(--y) - 1rem);
left: calc(var(--x) - 1.2rem);
background: radial-gradient(white, #3984ff00 80%);
box-shadow: 0 0 20px rgb(255 255 255 / 20%);
}
.btnContainer:hover::before {
opacity: 1;
}
.inBtn{
border: 0;
width: 100%;
height: 100%;
color: #fff;
cursor: pointer;
font-size: 1.1rem;
background-color: #4b91d7;
}
자바스크립트 코드
// --------------------- Created By InCoder ---------------------
let inBtn = document.querySelector('.btnContainer .inBtn')
btnContainer = document.querySelector('.btnContainer')
inBtn.addEventListener('mousemove', e => {
btnContainer.style.setProperty('--x', `${e.offsetX}px`)
btnContainer.style.setProperty('--y', `${e.offsetY}px`)
btnContainer.classList.add('active')
})
Reference
이 문제에 관하여(HTML, CSS 및 Javascript에서 Microsoft와 같은 호버 효과가 있는 버튼 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/incoderweb/create-button-with-hover-effect-like-microsoft-in-html-css-and-javascript-1gbl텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)