inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

HTML+CSS+JS 포트폴리오 실전 퍼블리싱(시즌1)

가상클래스 before after 가상클래스 활용한 실전 퍼블리싱 02(보더 애니메이션 네비게이션 호버 이펙트)

가상클래스 질문 드려도 될까요? 너무 헷갈립니다 ㅠㅠㅁ

305

rudals8920

작성한 질문수 15

1

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <style>

    .nav {
      border1px solid black;
      width700px;
      height100px;
      marginauto;
      text-aligncenter;
      line-height100px;
    }

    .nav a {
      /* border: 1px solid black; */
      colorblack;
      text-decorationnone;
      margin-right15px;
      font-size1.5rem;
      positionrelative;
    }

    .nav a::before {
      content'';
      width100%;
      height3px;
      background-colorroyalblue;
      displayinline-block;
      positionabsolute;
      bottom-3px;
      left50%;
      transformtranslateX(-50%);
    }
  </style>
</head>

<body>
  <div class="nav">
    <a href="#">HOME</a>
    <a href="#">ABOUT</a>
    <a href="#">SERVICE</a>
    <a href="#">PORTFOLIO</a>
    <a href="#">CONTACT</a>
  </div>
</body>

</html>
a에 position:relative를 주고 a::before에 position:abosolute를 주면
a::before의 width:100% 값이 a의 콘첸츠 값만큼 가지는데
position을 주지않으면 nav의 width값 만큼 가집니다 왜 이렇게 작동하는지 잘 모르겠습니다 ㅠㅠㅠ
만약 a::before가상요소를 주게 되면 a::before는 a의 자식요소가 되는건가요
그리구 다른 질문인데요 .gnb li에 float:left를 주면 부모인 .gnb는
높이값을 왜 잃지 않고 가지고 있는건가요 ? ㅠ.ㅠ

jquery HTML/CSS

답변 2

2

코딩웍스(Coding Works)

a::before가상요소를 주게 되면 a::before는 a의 자식요소가 되는건가요?

네. 맞습니다. :before :after는 원래 요소의 자식요소입니다. 그리고 인라인 요쇼입니다. 그래서 크기값을 가질 수 없습니다. 크기값을 주기 위해 display: block 또는 display: inline-block으로 변경해주어야 합니다. 만약 position: fixed 또는 absolute를 주었다면 인라인블록으로 변경되었기 때문에 크기값을 가질 수 있습니다. 곧, :before :after에 position: fixed 또는 absolute를 주고 display: block 또는 display: inline-block를 적는건 불필요한 코딩입니다. display 속성에 대한 이해가 부족한 것 입니다. 지금 절 이해하고 있으시다고 생각합니다. 

.gnb li에 float:left를 주면 부모인 .gnb는 높이값을 왜 잃지 않고 가지고 있는건가요 ?

위에 코드에는 .gnb 도 없고 li 도 없는데요. 다른걸 말하시는것 같습니다.

코드에는 없지만 질문에 답은 .gnb li에 float:left를 주면 부모인 .gnb는 높이값을 잃습니다.

1

rudals8920

친절하게 답변 달아 주셔서 감사합니다!

class 값 한 번에 부여하는법

2

80

1

@media에서의 flex-direction: column으로 세로배치 관련 질문드립니다.

1

69

1

div#css-checker-widget의 해결방

1

60

2

input의 포커스되었을때 검정선이 사라지지 않아요

0

79

2

강의듣는법

1

74

1

아코디언 만들기 100%이하의 화면으로 보았을때

1

68

2

input checked 질문합니다.

0

76

1

Bracket Pair Colorizer - 비주얼 스튜디오

1

140

2

Part 1 영상 안나옵니다

1

89

1

제이쿼리 작동이 안됩니다

1

199

3

강의 내용 질문있습니다.

1

120

2

일정 부분만 주석하는 방법

1

211

2

폰트어썸

1

134

2

인접선택자에 대한 질문드립니다!

1

129

2

delay 적용 안됨

1

134

1

rotateY(360deg)가 적용이 안됩니다!

1

186

2

세로이동할때 height값

1

138

2

폰트어썸이 안되요..

1

486

2

화면 정중앙에 오게끔 할수있나요?

1

169

1

어코디언 네비게이션 중

1

126

1

라이브서버 문제

1

228

2

넷플릭스 어코디언 예제 질문

1

104

1

이번 강의에선 display flex가 무조건 적으로 필요한건가요 ?

1

156

1

active 관련 질문

1

146

2