2015-02-02 4 views
-1

나는 워드 프레스 포스트 루프에서 다음 라디오 버튼 코드를하고있는 중이 야하고있다 :한 번만

<input id="<?php the_title(); ?>" type="radio" name="phoneSelect" value="test"> 
       <label for="<?php the_title(); ?>">Select</label> 

각 생성 라디오 버튼 =에 대해서도 고유 라벨을 할당하는 고유 ID를 ""이 . 다음과 같은 스타일을 지정하면 체크 된 요소는 하나의 라디오 버튼에서만 작동합니다. 나는 다른 라디오 버튼을 선택하면 첫 번째 단추는 스타일을 변경하지만 다음 라디오 버튼이 CSS 설정을 적용하지 않는다

input[type=radio] { 
    display:none; 
    } 

    input[type=radio] + label { 
    display:inline-block; 
    margin:-2px; 
    padding: 4px 12px; 
    margin-bottom: 0; 
    font-size: 14px; 
    line-height: 20px; 
    color: #333; 
    text-align: center; 
    text-shadow: 0 1px 1px rgba(255,255,255,0.75); 
    vertical-align: middle; 
    cursor: pointer; 
    background-color: #f5f5f5; 
    background-image: -moz-linear-gradient(top,#fff,#e6e6e6); 
    background-image: -webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6)); 
    background-image: -webkit-linear-gradient(top,#fff,#e6e6e6); 
    background-image: -o-linear-gradient(top,#fff,#e6e6e6); 
    background-image: linear-gradient(to bottom,#fff,#e6e6e6); 
    background-repeat: repeat-x; 
    border: 1px solid #ccc; 
    border-color: #e6e6e6 #e6e6e6 #bfbfbf; 
    border-color: rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25); 
    border-bottom-color: #b3b3b3; 
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0); 
    filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); 
    -webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05); 
    -moz-box-shadow: inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05); 
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px rgba(0,0,0,0.05); 
    } 

    input[type=radio]:checked + label { 
     background-image: none; 
    outline: 0; 
    -webkit-box-shadow: inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05); 
    -moz-box-shadow: inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05); 
    box-shadow: inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05); 
     background-color:#e0e0e0; 
    } 

(PHP는 실행되지 않기 때문에 명백하게) JSfiddle 문제를 복제 할 수 있습니다 다음 http://jsfiddle.net/83uc5xy5/

<div><input type="radio" name ="test" id="test"/> 
    dasdas 
</div> 
<input type="radio" name ="test" id="test"/> 

CSS :

input[type="radio"]:checked{ 
    margin-top:50px; 
} 
+0

그것은 나를 위해 작동합니다 ... [jsFiddle] (http://jsfiddle.net/alexwcoleman/cgd4t188/). –

+0

@leftside 수동으로 다른 ID를 설정하면 올바르게 작동합니다. 이드는 the_title(); 여전히 고유해야합니다 –

+0

ID는 중요하지 않습니다. jsFiddle을 다시 확인하십시오 - ID가 없습니다. –

답변

1

은 작업 예입니다

상단에서 50px로 선택된 체크 박스를 이동합니다.

+0

수동으로 다른 ID를 설정하면 잘 작동합니다. 이드는 the_title(); –

+0

이것은 어디에서나 id 유형을 사용하여 라디오 유형의 입력에 스타일을 적용합니다. – emanuilov