변경 사항
곧 “상단 메뉴” 및 유사한 스타일의 내비게이션(때로는 네비 필이라고도 함)은 Discourse 전체에서 업데이트되고 일관성 있는 스타일을 갖추게 될 것입니다.
상단 메뉴
변경 전:
![]()
변경 후:
![]()
프로필 메뉴
변경 전:
변경 후:
왜 변경되는가?
이를 통해 기본 CSS를 단순화하고 기본 Discourse 테마에서 “quaternary” 색상의 사용을 제거할 수 있습니다. 이 색상은 수년 동안 많은 테마에서 사용되어 왔으므로, 커스텀 CSS에서 사용할 수 있도록 계속 유지될 것입니다.
기본적으로 "danger red"와 매우 유사한 이 색상의 사용은 활성 필터를 강조 표시하는 등의 작업을 어렵게 만들었습니다. …왜냐하면 이 상태에서는 오류처럼 보이기 때문입니다:
변경 전:

변경 후:

테마에서 이 부분을 어떻게 변경합니까?
이 업데이트와 함께, CSS 커스텀 프로퍼티를 사용하여 테마에서 이러한 내비게이션 색상을 변경하는 것이 더 쉬워졌습니다. 새로운 변수가 몇 가지 있습니다:
:root {
--d-nav-color: var(--primary);
--d-nav-bg-color: transparent;
--d-nav-color--hover: var(--primary);
--d-nav-bg-color--hover: var(--d-hover);
--d-nav-color--active: var(--tertiary);
--d-nav-bg-color--active: transparent;
--d-nav-border-color--active: var(--d-nav-color--active);
--d-nav-underline-height: 0.125em;
}
따라서 각 내비게이션 인스턴스를 변경하기 위해 여러 세트의 커스텀 CSS를 추가하는 대신, 필요에 따라 변수를 변경할 수 있습니다. 예를 들어:
:root {
--d-nav-color--active: mediumorchid;
}
이 CSS를 적용하면 다음과 같은 결과가 나타납니다:

이 밑줄은 어디에서 오는 것입니까?
활성 내비게이션 항목의 "밑줄"이 border-bottom CSS 프로퍼티를 사용하지 않는다는 것을 알아차릴 수 있습니다. 대신 ::after 가상 요소를 사용하여 적용됩니다.
기존 테마는 이미 border 프로퍼티를 사용 중일 수 있으므로, 이 방법은 기존 스타일과 충돌하는 경우 밑줄을 제거하는 것이 더 쉬울 것입니다. 제거하려면:
:root {
--d-nav-underline-height: 0;
}

이전 스타일을 선호한다면?
새로운 CSS 변수를 사용하면 이를 되돌리는 것이 비교적 쉽습니다. 테마에서 다음을 적용할 수 있습니다:
:root {
--d-nav-color--hover: var(--quaternary);
--d-nav-bg-color--hover: var(--quaternary-low);
--d-nav-color--active: var(--secondary);
--d-nav-bg-color--active: var(--quaternary);
--d-nav-border-color--active: var(--primary-medium);
--d-nav-underline-height: 0;
}

이 내비게이션의 인스턴스 중 하나만 변경하려는 경우, :root 대신 #navigation-bar와 같이 ID 또는 클래스로 변수 변경 범위를 지정할 수 있습니다:
#navigation-bar {
--d-nav-color--hover: var(--quaternary);
--d-nav-bg-color--hover: var(--quaternary-low);
--d-nav-color--active: var(--secondary);
--d-nav-bg-color--active: var(--quaternary);
--d-nav-underline-height: 0;
}

또 다른 예시:
.user-navigation {
--d-nav-bg-color--active: lightcyan;
}

CSS를 변경하는 방법을 잘 모르겠다면 Making custom CSS changes on your site 을 확인해 보세요.
지금으로서는 여기까지입니다! 항상 그렇듯이, 질문이 있거나 문제를 겪는 경우 알려 주세요. ![]()




