2013-08-16 5 views
0

페이드 효과를 줄 수 있도록 하단에 선형 그래디언트가있는 div 태그를 디자인하려고합니다.아래쪽 테두리는 Internet Explorer 7에서 그래디언트가있는 배경 이미지 만 사용합니다.

아래 CSS를 사용하여 Chrome, Internet Explorer 10, Firefox 등에서 할 수있었습니다.

필자는 인터넷 익스플로러 7에서 필터와 progId를 사용했으나 하단이나 상단뿐만 아니라 전체 div에 배경을 제공합니다.

불행히도 Internet Explorer 7이 CSS background-size 속성을 읽지 않기 때문이라고 생각합니다.

누구든지 div 태그의 아래쪽에 줄을 가져 오는 방법을 알고 있습니까?

<!DOCTYPE html> 
<html> 
<head> 
<style> 
div 
{ 
padding:20px 40px; 
overflow: hidden; 
background-image: linear-gradient(90deg, #000, #FFF, #000), linear-gradient(90deg, #000, #FFF, #000); 
background-image: -webkit-linear-gradient(90deg, #000, #FFF, #000), -webkit-linear-gradient(90deg, #000, #FFF, #000); 
background-image: -webkit-gradient(linear, 90deg, #000, #FFF, #000), -webkit-gradient(90deg, #000, #FFF, #000); 
background-image: -moz-linear-gradient(90deg, #000, #FFF, #000), -moz-linear-gradient(90deg, #000, #FFF, #000); 
background-image: -o-linear-gradient(90deg, #000, #FFF, #000), -o-linear-gradient(90deg, #000, #FFF, #000); 
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000', endColorstr='#ffffff',GradientType=1); 
background-size: 100% 2px; 
background-position: 0 100%;  
background-repeat: no-repeat; 
width: 100%; 
background-color: #111111; 
color:#ffffff; 
} 

</style> 
</head> 
<body bgcolor="#111111;"> 

<div>Example of what it looks like in Chrome, FF etc.</div> 

</body> 
</html> 
+0

'background-position : bottom;'시도 했습니까? – Joum

+0

당신은 아마 이미이를 봐 왔지만, 참조를 위해 도움이 될 수 있습니다 : https://developer.mozilla.org/en-US/docs/Web/CSS/background-size – Joum

+2

사람들은 IE 7- – Itay

답변

1

이것은 IE7의 최신 기능이없는 IE7 버그가 아닙니다. 얼마나 오래되었는지 정말 놀랍지 않습니다.

사용중인 filter 스타일은 IE7에서 일반적인 그래디언트 방법이지만 절대적으로 비표준이며 같은 방식으로 작동하지 않을 수 있습니다. 그것들은 원래 웹용으로 설계되지 않은 외부 구성 요소로서 activeX를 통해 IE로 퍼지 (fudged)됩니다. 훌륭하지 않아.

이 처리하는 방법에 대한 몇 가지 선택을 가지고 :

  1. 는 IE7 정말 그라디언트를 지원하지 않습니다에 동의하고 그것을 가을 백으로 일반 배경을 제공합니다.

  2. IE7은 filter 그라데이션을 사용할 수 있지만 매우 좋지는 않습니다.

  3. CSS3Pie과 같은 자바 스크립트 polyfill을 사용하면 filter 스타일보다 그라디언트를 잘 처리 할 수 ​​있습니다. 내가 사용하려는거야 사람의 생각으로 나는이 마지막 옵션에 초점을 맞출 것이다

. CSS3Pie는 (거의) 표준 CSS 그래디언트 (및 기타 기능)를 지원할 수 있도록 IE의 CSS 파싱을 해킹합니다.

filter 스타일보다 더 좋은 점은 IE의 VML 그래픽 언어를 사용하여 이러한 그라디언트를 렌더링한다는 것입니다. 이것은 filter보다 훨씬 융통성이 있으며, 복잡한 그라디언트를 허용합니다. 몇 가지 제한 사항이 있지만 일반적으로 결과는 입니다. 그라디언트의 경우보다 filter을 사용하는 것보다 낫습니다.

표준 CSS 구문을 사용하면 쓰기 및 유지 관리가 훨씬 쉬워집니다.

유일한 단점은 자바 스크립트 라이브러리라는 점이며, 과도하게 사용하면 사이트 속도가 느려질 수 있습니다. 나는 이것에 문제가 없었지만 핵심은이 라이브러리 (및 폴리 폴리은 일반적으로)의 사용을 최소한으로 유지하는 것입니다. 귀하의 사이트에 실질적인 변화를 일으킬 수있는 곳과 후퇴 옵션으로는 충분하지 않은 곳을 사용하십시오.

희망이 있습니다.

+0

1 라운드 작업 일을하려고 나는 IE7에 그것을 지원하기 위해 노력되지 않을 것이다,하지만 불행히도 나는 선택의 여지가 없어 .. 난 이미 'CSS3Pie을 알았지 만 didn를 그것을 회상해라. .. 큰 설명,. .. – Joum