그림과 말을 교환하는 여러 가지 방법과 아이디어_경험 교환

WBOY
풀어 주다: 2016-05-16 12:10:22
원래의
1402명이 탐색했습니다.

오늘 한 친구가 웹페이지를 만들 때 문제에 직면했습니다. 그는 링크의 배경을 유지하고 싶었지만 링크의 텍스트도 사라지기를 원했습니다! 하지만 오랫동안 작업한 후에도 나는 여전히 이 텍스트를 지울 수 없었습니다. 표준을 공부하는 많은 친구들이 이 문제에 직면했다고 생각합니다. 여기서는 이제 막 학습을 시작하는 친구들에게 도움이 되기를 바라면서 일반적으로 사용되는 몇 가지 방법을 적어보고 아이디어를 설명하겠습니다.

"말을 위한 그림"은 텍스트 표현을 그림으로 바꾸는 것을 의미합니다. 우리 모두는 브라우저의 텍스트 표현이 매우 좋지 않다는 것을 알고 있습니다. 텍스트는 들쭉날쭉하고 둥글게 표시될 수 없으며 많은 효과를 가질 수 없습니다. 일반적인 상황에서는 웹 페이지의 콘텐츠 부분에 영향을 미칠 필요가 없지만, WEB 표준에서는 로고와 제목에 이러한 부분이 필요한 경우가 많습니다. 표를 사용하면 어딘가에 사진을 게시하기만 하면 됩니다. 이 방법은 비교적 간단하지만 검색에 도움이 되지 않습니다. 따라서 웹페이지가 양호한 상태이고 검색에 도움이 되는지 확인하기 위해 표준적인 방식으로 이를 수행해야 합니다. 일반적으로

그림과 같이 표시됩니다. (display:none;) 이는 컨테이너의 내용뿐만 아니라 컨테이너 자체도 사라지게 합니다. 따라서 내부 부분이 사라진 후에도 컨테이너 안의 배경이 정상적으로 표시될 수 있도록 컨테이너 내에 또 다른 컨테이너를 만들어야 합니다. 예:

코드 복사 코드는 다음과 같습니다.
#logo {display:none; background:URL; width:300px; height:100px;}

이렇게 쓰면 전혀 아무것도 보이지 않습니다. 그렇다면 올바른 작성 방법은 무엇입니까? 예를 보세요:

코드 복사 코드는 다음과 같습니다.
#logo {배경:URL; 너비:300px; 높이:100px;}#logo 범위 {display:none;}
위의 코드에 주의하세요. 배경은 #logo 아래에 정의되어 있으며 #logo 범위에는 display:none; 외에는 스타일이 없습니다. display:none; 속성이 정의된 컨테이너에는 아무 것도 표시되지 않으므로 다른 스타일을 정의하는 것은 낭비입니다. 이것만으로는 여전히 문제가 있습니다. 이것은 링크가 없는 예입니다. 그러면 링크가 있는 경우 어떻게 해야 합니까? 또 다른 예를 살펴보겠습니다.

코드 복사 코드는 다음과 같습니다.
#logo {배경:URL:300px;}# logo a {display:none;}

이 코드가 무엇을 표시할 수 있는지 짐작할 수 있나요? 사실은 배경이 표시되지만 링크가 사라진 것입니다. 위에서 말했듯이, display:none 속성이 할당된 컨테이너 자체도 사라집니다. 그러면 우리는 이 A 태그에 컨테이너를 추가해야 한다는 것을 분명히 알 수 있습니다. 예시를 다시 살펴보겠습니다.

코드 복사 코드는 다음과 같습니다.
< div id="logo ">제목 내용
#logo {배경:URL; width:300px; height:100px;}#logo a 스팬 {display:none;}
맞나요? 여전히 작동하지 않는 이유는 무엇입니까? A가 블록 수준 태그가 아니라는 것은 A의 높이와 너비가 콘텐츠에 의해 결정된다는 것을 의미합니다. 이제 콘텐츠가 사라졌으므로 높이와 너비 속성이 더 이상 존재하지 않습니다. 이므로 링크는 핫존이 없는 링크가 되었습니다. 불이 들어오지 않을 수도 있습니다. 위의 코드를 다시 수정해야 합니다.

코드 복사 코드는 다음과 같습니다.
#logo a {배경:URL 너비:300px; 100px; 디스플레이:블록;}#로고 범위 {display:none;}

여기서 A 태그의 속성은 강제로 블록 수준 요소가 되도록 하려면 display:block과 함께 추가되어야 합니다. 이렇게 하면 A 태그는 너비 300, 높이 100의 배경만 있고 텍스트 내용은 없는 링크 형태가 됩니다. 위의 A 태그에 SPAN 태그가 추가된 것을 모두가 보셨는데, 이는 약간 중복된 것 같습니다. 스팬 없이도 효과를 얻을 수 있나요? 네, 하지만 생각이 다릅니다. 다음과 같은 위치 이동 방법입니다.

위치 이동: 즉, 콘텐츠가 표시 영역 밖으로 이동됩니다. 이 방법을 이해하기 위해 코드를 살펴보겠습니다.

코드 복사 코드는 다음과 같습니다.
#logo, #logo a {width:300px;overflow:hidden;}#logo a {배경 :URL; 패딩:100px 0 0; 디스플레이:블록;}
CSS에서 #logo 및 A에는 오버플로가 숨겨져 있습니다(overflow:hidden;). 즉, 크기가 300*100을 초과하면 숨겨지세요. A는 패딩으로 정의되어 있습니다: 100px 0 0; 이 상단 패딩은 콘텐츠를 디스플레이 영역 밖으로 밀어냅니다. 그렇다면 왜 #logo는 Overflow:hidden;도 사용합니까? IE에는 작은 버그가 있기 때문에 A의 내용은 오버플로되거나 숨겨질 수 없으므로 상위 태그에 Overflow:hidden을 추가해야 합니다.

위는 제가 가장 일반적으로 사용하는 두 가지 예입니다. 물론 다른 방법도 있고 각각의 단점도 있지만 다양한 방법은 서로 보완적이기도 합니다. 신청시 상황에 따라 선택하여 사용하시면 됩니다.
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!