반응형
내 탐색 모음에서 목록 항목의 전체 영역을 링크로 클릭 할 수 있습니까?
모든 것이없는 목록으로 만든 가로 탐색 모음이 있고 각 목록 항목에는보기 좋게 보이도록 패딩이 링크로 작동하는 유일한 영역은 텍스트 자체입니다. 사용자가 목록 항목의 아무 곳이나 클릭하여 링크를 활성화하도록 선택해야합니까?
#nav {
background-color: #181818;
margin: 0px;
overflow: hidden;
}
#nav img {
float: left;
padding: 5px 10px;
margin-top: auto;
margin-bottom: auto;
vertical-align: bottom;
}
#nav ul {
list-style-type: none;
margin: 0px;
background-color: #181818;
float: left;
}
#nav li {
display: block;
float: left;
padding: 25px 10px;
}
#nav li:hover {
background-color: #785442;
}
#nav a {
color: white;
font-family: Helvetica, Arial, sans-serif;
text-decoration: none;
}
<div id="nav">
<img src="/images/renderedicon.png" alt="Icon" height="57" width="57" />
<ul>
<li><a href="#">One1</a></li>
<li><a href="#">Two</a></li>
<li><a href="#">Three</a></li>
<li><a href="#">Four</a></li>
</ul>
</div>
<div>
<h2>Heading</h2>
</div>
'li'항목에 패딩을 넣지. 대신 앵커 태그를 설정하고 display:inline-block;
패딩을 적용하십시오.
앵커 태그 css 속성을 다음과 같이 정의합니다.
{display:block}
그러면 앵커가 전체 목록 영역을 차지하고 옆의 빈 공간에서 클릭이 작동합니다.
앵커 태그에 li
. 이렇게하면 모든 영역을 차지합니다.
다음을 사용하십시오.
a {
display: list-item;
list-style-type: none;
}
이 파티에 매우 늦었지만 어쨌든 앵커를 플렉스 아이템으로 스타일링 할 수도 있습니다. 이는 특히 동적으로 크기가 조정되거나 정렬 된 목록 항목에 유용합니다.
a {
/* This flexbox code stretches the link's clickable
* area to fit its parent block. */
display: flex;
flex-grow: 1;
flex-shrink: 1;
justify-content: center;
}
(주의 : 플렉스 박스는 여전히 잘 지원되지 않는 obv입니다. 자동 접두사를 구출하세요!)
또는 jQuery를 사용할 수 있습니다.
$("li").click(function(){
window.location=$(this).find("a").attr("href");
return false;
});
이 CSS 속성과 값을 다음에서 사용해야합니다 li
.
pointer-events:all;
따라서 jQuery 또는 JavaScript로 링크를 처리하거나 a
태그를 사용할 수 있지만 내부의 다른 모든 태그 요소 li
에는 CSS 속성이 있어야합니다.
pointer-events:none;
아래 CSS를 적용하기 만하면됩니다.
<style>
#nav ul li {
display: inline;
}
#nav ul li a {
background: #fff;// custom background
padding: 5px 10px;
}
</style>
항상 hiperlink 태그로 전체 태그 li을 래핑 할 수 있습니다. 여기 내 솔루션이 있습니다.
#nav {
background-color: #181818;
margin: 0px;
overflow: hidden;
}
#nav img {
float: left;
padding: 5px 10px;
margin-top: auto;
margin-bottom: auto;
vertical-align: bottom;
}
#nav ul {
list-style-type: none;
margin: 0px;
background-color: #181818;
float: left;
}
#nav li {
display: block;
text-align: center;
float: left;
width: 40px;
padding: 25px 10px;
}
#nav li:hover {
background-color: #785442;
}
#nav a {
color: white;
font-family: Helvetica, Arial, sans-serif;
text-decoration: none;
}
<div id="nav">
<img src="/images/renderedicon.png" alt="Icon" height="57" width="57" />
<ul>
<a href="#"><li>One1</li></a>
<a href="#"><li>Two</li></a>
<a href="#"><li>Three</li></a>
<a href="#"><li>Four</li></a>
</ul>
</div>
<div>
<h2>Heading</h2>
</div>
반대로 목록 항목을 하이퍼 링크 안에 넣으십시오.
예를 들어 코드를 사용하면 다음과 같습니다.
<a href="#"><li>One</li></a>
반응형
'IT' 카테고리의 다른 글
Logstash가 파일을 재분석하도록 강제하는 방법은 무엇입니까? (0) | 2020.09.09 |
---|---|
생성자가 @JsonCreator로 주석을 달았을 때 그 인수에 @JsonProperty로 주석을 달아야하는 이유는 무엇입니까? (0) | 2020.09.09 |
지도에 삽입하는 데 선호되는 / 관용적 인 방법은 무엇입니까? (0) | 2020.09.09 |
내 웹 사이트의 로고를 브라우저 탭의 아이콘 이미지로 설정해야 할 필요가 있습니까? (0) | 2020.09.09 |
JavaScript의 상속 유형 상속의 좋은 예 (0) | 2020.09.09 |