사이트를 확인하고 CSS 스타일을 결정 하시겠습니까?
-
03-07-2019 - |
문제
나는 여기와 비슷한 막대를 상단에 두는 것을 목표로합니다. http://www.keltainenporssi.fi/현재 사이트의 색상은 빨간색이고 다른 사이트는 검은 색입니다.
내 목표에 어떻게 도달 하시겠습니까? 아마도 PHP에 의해?
의사 코드의 구문이있을 수 있습니다
if $site = A
use-styleA
if $site = B
use-styleB
else
use-FinalStyle
해결책
비 동적 접근 :
다음과 같이 각 사이트에 대한 CSS 규칙을 사용할 수 있습니다.
/* site-one.css */
#top-nav li.site-one a {
color: red;
}
/* site-two.css */
#top-nav li.site-two a {
color: red;
}
/* site-three.css */
#top-nav li.site-three a {
color: red;
}
HTML :
<ul id="top-nav">
<li class="page-one"><a href="pages/one">Page one</a></li>
<li class="page-two"><a href="pages/two">Page two</a></li>
<li class="page-three"><a href="pages/three">Page three</a></li>
</ul>
다른 팁
PHP와 같은 서버 측 스크립트를 사용하여 그러한 일을하는 것이 일반적입니다. 예를 들어:
<?PHP
echo '<ul id="top-nav">';
foreach($page as $pageId => $text) {
echo '<li';
if($curPage == $pageId)
echo ' class="active"';
echo '>';
echo '<a href="pages/' . htmlspecialchars($pageId) . '">';
echo htmlspecialchars($text);
echo '</a>';
echo '</li>';
}
echo '</ul>';
?>
이것은 다음과 같은 출력을 생성합니다. (가독성을 위해 형식)
<ul id="top-nav">
<li><a href="pages/home">Home</a></li>
<li class="active"><a href="pages/one">Page one</a></li>
<li><a href="pages/two">Page two</a></li>
</ul>
모든 도메인이 가져올 막대에 대한 단일 CSS를 가질 수 있습니다. CSS에 대한 중요한 규칙을 추가해야합니다. 그렇지 않으면 목록/div에 ID를 추가하거나 구현하는 데 사용하는 모든 것을 추가하여 막대를 "네임 스페이스"로 보호합니다.
예, 현재 사이트를 기반으로 앵커 요소의 클래스를 할당 할 수 있습니다.
제휴하지 않습니다 StackOverflow