2016-12-22 6 views
-3

.png 또는 .jpeg 이미지가 있습니다. 선택된 테마에 따라 이미지의 색상을 변경하고 싶습니다 (이전에 흰색이었을 수도 있습니다. 빨간색으로 변경하고 싶을 수도 있음). 어떻게해야합니까? 당신은 다른 도의 값으로 실험을해야하고, 이상적으로 무엇을 당신의 후 이미지에 이미지와 다를 수 있으므로하지 것이다동적으로 이미지 색상 변경

img#theImage { 
     filter: hue-rotate(90deg); 
} 

하지만만큼 가까이 :

+1

왜 (당신은 그냥 CSS를 사용할 수 없습니다) 이것에 대한 이미지를 필요합니까? 실패하면 이미지의 색조를 조정할 수있는 CSS 필터를 살펴보십시오. 그러나 이것이 원하는 것이 아닌 것 같습니다. – series0ne

+0

그런 경우 테마 –

+0

을 기반으로 이미지 자체를 변경해야합니다 실제로 우리 웹 사이트에서 소재 디자인을 사용하므로 서로 다른 시나리오 (예를 들어 마우스를 올리거나 클릭, 클릭 한 모양 등)에 따라 다른 색상을 원할 때 같습니다. –

답변

1

당신은 뭔가를 시도 할 수 있습니다 당신은 html/css/jquery를 사용할 것이다.

+0

실제로 필터 속성이 무엇입니까? –

+0

필터를 적용하면 여러 가지 필터가 하나씩 있지만이 필터는 특히 색조를 편집합니다. 자세한 내용은 다음을 참조하십시오. https://developer.mozilla.org/en/docs/Web/CSS/filter – Eamonn

+0

또한 색조 이동은 이미 그레이 스케일 인 이미지의 색상을 변경하지 않고 ** 변경하지 않습니다. – Eamonn

2

당신이

  • 에 의해 그것을 할 수는 클릭
을에 JS를 사용하여 컬러의 0.5 이하
  • 변화에 불투명도의 이미지
  • 변화의 위쪽에 <div> 태그를 추가

    아래에 스 니펫이 추가되었습니다.

    document.getElementById("green").addEventListener("click",function(){ 
     
    document.getElementById("canvas").style.backgroundColor = "green"; 
     
    }); 
     
    document.getElementById("red").addEventListener("click",function(){ 
     
    document.getElementById("canvas").style.backgroundColor = "red"; 
     
    }); 
     
    document.getElementById("blue").addEventListener("click",function(){ 
     
    document.getElementById("canvas").style.backgroundColor = "blue"; 
     
    });
    img{ 
     
        width:200px; 
     
        height:200px; 
     
        z-index:900; 
     
        } 
     
    #canvas{ 
     
        width:200px; 
     
        height:200px; 
     
        opacity:0.3; 
     
        z-index:999; 
     
        position:absolute; 
     
        } 
     
    button{ 
     
        float:right; 
     
        /*margin-top:200px;*/ 
     
        margin-right:10px; 
     
        }
    <div id="canvas"></div> 
     
    <img src="https://i.stack.imgur.com/wwy2w.jpg" id="image"> 
     
    
     
    <button id="green">green</button> 
     
    <button id="red">red</button> 
     
    <button id="blue">blue</button>