찾다
웹 프론트엔드JS 튜토리얼초급 기사: HTML, CSS 및 JS(코드 포함)를 사용하여 멋진 검은색 아날로그 시계를 만드는 방법

이전 글 "HTML/CSS와 Three.js를 사용하여 불을 뿜는 드래곤 게임 만들기(코드 공유) 가르쳐주세요

"에서 HTML/CSS와 Three.js를 사용하여 만드는 방법을 소개했습니다. 불을 뿜는 드래곤 게임. 다음 글에서는 JS를 사용하여 멋진 블랙 테마 아날로그 시계를 만드는 방법을 소개합니다.

초급 기사: HTML, CSS 및 JS(코드 포함)를 사용하여 멋진 검은색 아날로그 시계를 만드는 방법

HTML, CSS, JavaScript를 사용한 간단한 아날로그 시계

디자인이 마음에 드셨으면 좋겠습니다. 아래에서 이 디자인을 만드는 방법에 대한 전체 튜토리얼을 공유했습니다. 아래 튜토리얼이 도움이 되기를 바랍니다.

이를 위해서는 먼저 HTML과 CSS 파일을 만들어야 합니다.

1단계: 시계의 기본 구조 만들기

이 HTML 코드는 기본적으로 이 아날로그 시계의 기본 구조입니다. 저는 이 시계의 배경과 모양을 디자인하기 위해 CSS 코드를 사용했습니다. 위 이미지에서 볼 수 있듯이 네오모픽 디자인의 형태를 취하고 있습니다. 여기서는 CSS 코드를 사용하여 Neumorphism 디자인을 구현했습니다.

7px solid #282828。我使用box-shadow使其更清晰。border-radius 50%使这款手表呈圆形。我还使用了高度和宽度 30 rem。如果你想让这款手表更大,你可以增加它的尺寸。

HTML

<div class="clock">
       
</div>

CSS

 html {
  background: #282828;
  text-align: center;
  font-size: 10px;
}

body {
  margin: 0;
  font-size: 2rem;
  display: flex;
  flex: 1;
  min-height: 100vh;
  align-items: center;
}

.clock {
  width: 30rem;
  height: 30rem;
  border: 7px solid #282828;
  box-shadow: -4px -4px 10px rgba(67,67,67,0.5),
                inset 4px 4px 10px rgba(0,0,0,0.5),
                inset -4px -4px 10px rgba(67,67,67,0.5),
                4px 4px 10px rgba(0,0,0,0.3);
  border-radius: 50%;
  margin: 50px auto;
  position: relative;
  padding: 2rem;
 
}

演示效果

초급 기사: HTML, CSS 및 JS(코드 포함)를 사용하여 멋진 검은색 아날로그 시계를 만드는 방법

第 2 步:在时钟上标记 1 到 12

HTML

<div class="outer-clock-face">
	<div class="marking marking-one"></div>
	<div class="marking marking-two"></div>
	<div class="marking marking-three"></div>
	<div class="marking marking-four"></div>          
</div>

CSS

.outer-clock-face {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: 100%;
  background: #282828;
  
 
  overflow: hidden;
}

.outer-clock-face::after {
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  transform: rotate(90deg)
}

.outer-clock-face::before,
.outer-clock-face::after,
.outer-clock-face .marking{
  content: &#39;&#39;;
  position: absolute;
  width: 5px;
  height: 100%;
  background: #1df52f;
  z-index: 0;
  left: 49%;
}

演示效果

초급 기사: HTML, CSS 및 JS(코드 포함)를 사용하여 멋진 검은색 아날로그 시계를 만드는 방법

CSS

.outer-clock-face .marking {
  background: #bdbdcb;
  width: 3px;
}

.outer-clock-face .marking.marking-one {
  transform: rotate(30deg)
}

.outer-clock-face .marking.marking-two {
  transform: rotate(60deg)
}

.outer-clock-face .marking.marking-three {
  transform: rotate(120deg)
}

.outer-clock-face .marking.marking-four {
  transform: rotate(150deg)
}

演示效果

초급 기사: HTML, CSS 및 JS(코드 포함)를 사용하여 멋진 검은색 아날로그 시계를 만드는 방법

我使用下面的 HTML 和 CSS 代码制作了一个圆圈。结果,长线的中间被覆盖,并且它具有完整的 1 到 12 个标记大小。

HTML:

<div class="inner-clock-face">
         
 </div>

CSS

.inner-clock-face {
  position: absolute;
  top: 10%;
  left: 10%;
  width: 80%;
  height: 80%;
  background: #282828;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  z-index: 1;
}

.inner-clock-face::before {
  content: &#39;&#39;;
  position: absolute;
  top: 50%;
  border-radius: 18px;
  margin-left: -9px;
  margin-top: -6px;
  left: 50%;
  width: 16px;
  height: 16px;
  background: #4d4b63;
  z-index: 11;
}

演示效果

초급 기사: HTML, CSS 및 JS(코드 포함)를 사용하여 멋진 검은색 아날로그 시계를 만드는 방법

第 3 步:制作三只指针来指示时间

在这个单元格中,我使用了三只手,它们是使用下面的 HTML 和 CSS 代码制作的。

HTML

<div class="hand hour-hand"></div>
<div class="hand min-hand"></div>
<div class="hand second-hand"></div>

CSS

.hand {
  width: 50%;
  right: 50%;
  height: 6px;
  background: #61afff;
  position: absolute;
  top: 50%;
  border-radius: 6px;
  transform-origin: 100%;
  transform: rotate(90deg);
  transition-timing-function: cubic-bezier(0.1, 2.7, 0.58, 1);
}

.hand.hour-hand {
  width: 30%;
  z-index: 3;
}

.hand.min-hand {
  height: 3px;
  z-index: 10;
  width: 40%;
}

.hand.second-hand {
  background: #ee791a;
  width: 45%;
  height: 2px;
}

演示效果

초급 기사: HTML, CSS 및 JS(코드 포함)를 사용하여 멋진 검은색 아날로그 시계를 만드는 방법

第 4 步:使用 JavaScript 代码激活时钟

上面我们设计了整只手表,但这款手表还没有功能。这意味着这款手表的指针没有任何功能,也没有显示准确的时间。为此,我们需要使用 JavaScript 代码。

使用下面的 JavaScript,我已经给出了如何旋转这些手的说明。如果你了解基本的 JavaScript,你肯定会理解它。

我已经在下面充分解释了这段 JavaScript 代码是如何工作的。

JavaScript

const secondHand = document.querySelector(&#39;.second-hand&#39;);
const minsHand = document.querySelector(&#39;.min-hand&#39;);
const hourHand = document.querySelector(&#39;.hour-hand&#39;);

JavaScript

function setDate() {
  const now = new Date();

  const seconds = now.getSeconds();   // second hand rotation
  const secondsDegrees = ((seconds / 60) * 360) + 90;   
  secondHand.style.transform = `rotate(${secondsDegrees}deg)`;

  const mins = now.getMinutes();    // minutes hand rotation
  const minsDegrees = ((mins / 60) * 360) + ((seconds/60)*6) + 90;  
  minsHand.style.transform = `rotate(${minsDegrees}deg)`;

  const hour = now.getHours();     // Hours hand rotation
  const hourDegrees = ((hour / 12) * 360) + ((mins/60)*30) + 90;   
  hourHand.style.transform = `rotate(${hourDegrees}deg)`;
}

JavaScript 代码详解

关于秒针

JavaScript

const seconds = now.getSeconds();   // second hand rotation
const secondsDegrees = ((seconds / 60) * 360) + 90;   
secondHand.style.transform = `rotate(${secondsDegrees}deg)`;

我已将秒针如何旋转存储在secondsDegrees中,然后我使用rotate (${secondsDegrees} deg) 来旋转秒针 1 分钟等于 60 秒所以我除以60圆的一周是360度,所以我乘以360

关于分针

JavaScript

const mins = now.getMinutes();    // minutes hand rotation
const minsDegrees = ((mins / 60) * 360) + ((seconds/60)*6) + 90;  
minsHand.style.transform = `rotate(${minsDegrees}deg)`;

我在minsDegrees中存储了如何转动分钟的指针然后我使用(${minsDegrees]deg위의 데모에서 볼 수 있듯이 저는 이 시계 주위에 테두리를 사용하여 코드 테두리를 만들었습니다: 7px solid #282828. 더 명확하게 하기 위해 box-shadow를 사용합니다. border-radius 50%는 시계를 둥근 모양으로 만듭니다. 나는 또한 30 rem의 높이와 너비를 사용했습니다. 이 시계를 더 크게 만들고 싶다면 크기를 늘릴 수 있습니다.

HTML

setInterval(setDate, 1000);

setDate();

CSS
초급 기사: HTML, CSS 및 JS(코드 포함)를 사용하여 멋진 검은색 아날로그 시계를 만드는 방법rrreee

데모 효과

WeChat 스크린샷_20210915105459.png2단계: 시계에 1부터 12까지 표시

HTML🎜rrreee🎜CSS 🎜rrreee🎜데모 효과🎜🎜WeChat 스크린샷_20210915105438.png🎜🎜CSS
🎜rrreee🎜데모 효과🎜🎜WeChat 스크린샷_20210915105631.png🎜🎜아래 HTML과 CSS 코드를 사용하여 원을 만들었습니다. 그 결과, 긴 줄의 중간 부분이 가려지고, 1~12까지의 전체 표시 크기를 가지게 됩니다. 🎜🎜HTML: 🎜rrreee🎜CSS
🎜rrreee🎜데모 효과🎜🎜WeChat 스크린샷_20210915105806.png🎜🎜3단계: 시간을 표시하기 위해 세 개의 손을 만듭니다🎜🎜이 셀에서는 세 개의 손을 사용했습니다. 아래 HTML 및 CSS 코드. 🎜🎜HTML🎜rrreee🎜CSS
🎜rrreee🎜데모 효과
🎜🎜WeChat 스크린샷_20210915110014.png🎜🎜4단계: JavaScript 코드를 사용하여 시계 활성화🎜🎜위에서는 시계 전체를 디자인했지만 이 시계는 아직 작동하지 않습니다. 이는 이 시계의 바늘이 기능이 없고 정확한 시간을 표시하지 않는다는 것을 의미합니다. 이를 위해서는 JavaScript 코드를 사용해야 합니다. 🎜🎜아래 JavaScript를 사용하여 이 손을 회전하는 방법에 대한 지침을 제공했습니다. 기본적인 JavaScript를 알고 있다면 확실히 이해할 수 있을 것입니다. 🎜🎜아래에서 이 JavaScript 코드가 어떻게 작동하는지 자세히 설명했습니다. 🎜🎜JavaScript
🎜rrreee🎜JavaScript🎜rrreee🎜JavaScript 코드 세부정보🎜🎜Miaozhen 정보
🎜

JavaScript🎜rrreee🎜 초침이 어떻게 회전하는지 secondsDegrees에 저장한 다음 rotate (${secondsDegrees} deg) 를 사용하여 초침을 회전시킵니다. 1분은 60초이므로 다음과 같이 나눕니다. 60일주는 360도이므로 360을 곱합니다🎜🎜분침에 대해서
🎜

JavaScript🎜rrreee🎜I' minsDegrees 의 m은 분침을 돌리는 방법을 저장한 다음 (${minsDegrees]deg)를 사용하여 분침을 돌렸습니다. 1시간은 60분이므로 60으로 나눴습니다. 분과 함께 초침 위치를 추가합니다. 분침은 초에 따라 올바른 위치에 있기 때문입니다. 🎜🎜JavaScript🎜rrreee🎜🎜🎜🎜추천 학습: 🎜HTML/CSS 비디오 튜토리얼🎜, 🎜JS 비디오 튜토리얼🎜🎜

위 내용은 초급 기사: HTML, CSS 및 JS(코드 포함)를 사용하여 멋진 검은색 아날로그 시계를 만드는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 掘金에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
JavaScript의 역할 : 웹 대화식 및 역동적 인 웹JavaScript의 역할 : 웹 대화식 및 역동적 인 웹Apr 24, 2025 am 12:12 AM

JavaScript는 웹 페이지의 상호 작용과 역학을 향상시키기 때문에 현대 웹 사이트의 핵심입니다. 1) 페이지를 새로 고치지 않고 콘텐츠를 변경할 수 있습니다. 2) Domapi를 통해 웹 페이지 조작, 3) 애니메이션 및 드래그 앤 드롭과 같은 복잡한 대화식 효과를 지원합니다. 4) 성능 및 모범 사례를 최적화하여 사용자 경험을 향상시킵니다.

C 및 JavaScript : 연결이 설명되었습니다C 및 JavaScript : 연결이 설명되었습니다Apr 23, 2025 am 12:07 AM

C 및 JavaScript는 WebAssembly를 통한 상호 운용성을 달성합니다. 1) C 코드는 WebAssembly 모듈로 컴파일되어 컴퓨팅 전력을 향상시키기 위해 JavaScript 환경에 도입됩니다. 2) 게임 개발에서 C는 물리 엔진 및 그래픽 렌더링을 처리하며 JavaScript는 게임 로직 및 사용자 인터페이스를 담당합니다.

웹 사이트에서 앱으로 : 다양한 JavaScript 애플리케이션웹 사이트에서 앱으로 : 다양한 JavaScript 애플리케이션Apr 22, 2025 am 12:02 AM

JavaScript는 웹 사이트, 모바일 응용 프로그램, 데스크탑 응용 프로그램 및 서버 측 프로그래밍에서 널리 사용됩니다. 1) 웹 사이트 개발에서 JavaScript는 HTML 및 CSS와 함께 DOM을 운영하여 동적 효과를 달성하고 jQuery 및 React와 같은 프레임 워크를 지원합니다. 2) 반응 및 이온 성을 통해 JavaScript는 크로스 플랫폼 모바일 애플리케이션을 개발하는 데 사용됩니다. 3) 전자 프레임 워크를 사용하면 JavaScript가 데스크탑 애플리케이션을 구축 할 수 있습니다. 4) node.js는 JavaScript가 서버 측에서 실행되도록하고 동시 요청이 높은 높은 요청을 지원합니다.

Python vs. JavaScript : 사용 사례 및 응용 프로그램 비교Python vs. JavaScript : 사용 사례 및 응용 프로그램 비교Apr 21, 2025 am 12:01 AM

Python은 데이터 과학 및 자동화에 더 적합한 반면 JavaScript는 프론트 엔드 및 풀 스택 개발에 더 적합합니다. 1. Python은 데이터 처리 및 모델링을 위해 Numpy 및 Pandas와 같은 라이브러리를 사용하여 데이터 과학 및 기계 학습에서 잘 수행됩니다. 2. 파이썬은 간결하고 자동화 및 스크립팅이 효율적입니다. 3. JavaScript는 프론트 엔드 개발에 없어서는 안될 것이며 동적 웹 페이지 및 단일 페이지 응용 프로그램을 구축하는 데 사용됩니다. 4. JavaScript는 Node.js를 통해 백엔드 개발에 역할을하며 전체 스택 개발을 지원합니다.

JavaScript 통역사 및 컴파일러에서 C/C의 역할JavaScript 통역사 및 컴파일러에서 C/C의 역할Apr 20, 2025 am 12:01 AM

C와 C는 주로 통역사와 JIT 컴파일러를 구현하는 데 사용되는 JavaScript 엔진에서 중요한 역할을합니다. 1) C는 JavaScript 소스 코드를 구문 분석하고 추상 구문 트리를 생성하는 데 사용됩니다. 2) C는 바이트 코드 생성 및 실행을 담당합니다. 3) C는 JIT 컴파일러를 구현하고 런타임에 핫스팟 코드를 최적화하고 컴파일하며 JavaScript의 실행 효율을 크게 향상시킵니다.

자바 스크립트 행동 : 실제 예제 및 프로젝트자바 스크립트 행동 : 실제 예제 및 프로젝트Apr 19, 2025 am 12:13 AM

실제 세계에서 JavaScript의 응용 프로그램에는 프론트 엔드 및 백엔드 개발이 포함됩니다. 1) DOM 운영 및 이벤트 처리와 관련된 TODO 목록 응용 프로그램을 구축하여 프론트 엔드 애플리케이션을 표시합니다. 2) Node.js를 통해 RESTFULAPI를 구축하고 Express를 통해 백엔드 응용 프로그램을 시연하십시오.

JavaScript 및 웹 : 핵심 기능 및 사용 사례JavaScript 및 웹 : 핵심 기능 및 사용 사례Apr 18, 2025 am 12:19 AM

웹 개발에서 JavaScript의 주요 용도에는 클라이언트 상호 작용, 양식 검증 및 비동기 통신이 포함됩니다. 1) DOM 운영을 통한 동적 컨텐츠 업데이트 및 사용자 상호 작용; 2) 사용자가 사용자 경험을 향상시키기 위해 데이터를 제출하기 전에 클라이언트 확인이 수행됩니다. 3) 서버와의 진실한 통신은 Ajax 기술을 통해 달성됩니다.

JavaScript 엔진 이해 : 구현 세부 사항JavaScript 엔진 이해 : 구현 세부 사항Apr 17, 2025 am 12:05 AM

보다 효율적인 코드를 작성하고 성능 병목 현상 및 최적화 전략을 이해하는 데 도움이되기 때문에 JavaScript 엔진이 내부적으로 작동하는 방식을 이해하는 것은 개발자에게 중요합니다. 1) 엔진의 워크 플로에는 구문 분석, 컴파일 및 실행; 2) 실행 프로세스 중에 엔진은 인라인 캐시 및 숨겨진 클래스와 같은 동적 최적화를 수행합니다. 3) 모범 사례에는 글로벌 변수를 피하고 루프 최적화, Const 및 Lets 사용 및 과도한 폐쇄 사용을 피하는 것이 포함됩니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경