2014-11-21 15 views
10

Vì vậy, tôi có một div tôi muốn thay đổi màu sắc khi được nhấp. Tôi có ba div trên tất cả và tôi muốn biểu thị cái nào là div hoạt động khi nhấp vào nóThay đổi màu nền div khi nhấp chuột chỉ sử dụng css

Về cơ bản tôi muốn sử dụng thuộc tính hoạt động CSS nhưng không có thay đổi div cụ thể khi chuột xuất hiện. Sắp xếp như một tiêu điểm. Tôi cũng đang sử dụng bootstrap nếu đó là hữu ích

Đây là một ví dụ về html

<div> 
    Section 1 
</div> 
<div> 
    Section 2 
</div> 
<div> 
    Section 3 
</div> 

bất cứ ai có thể cho tôi biết làm thế nào tôi có thể thực hiện điều này mà không sử dụng javascript?

+1

Tôi không biết nếu nó có thể được thực hiện nhưng tôi thấy điều này: http://tympanus.net/codrops/2012/12/17/css-click-events/ - cho nó một thử? – ochi

+0

có thể trùng lặp với [active (selected), hover và không hoạt động tab/div css logic] (http://stackoverflow.com/questions/6177636/activeselected-hover-and-inactive-tab-div-css-logic) –

+2

I nghĩ rằng bạn có thể tìm thấy câu trả lời trong [đây] [1] [1]: http://stackoverflow.com/questions/19260401/change-background-on-button-click-using-css-only – Ehsan

Trả lời

20

Hãy DIV bạn có thể đặt tiêu, bằng cách thêm tabIndex:

<div tabindex="1"> 
Section 1 
</div> 

<div tabindex="2"> 
Section 2 
</div> 

<div tabindex="3"> 
Section 3 
</div> 

Sau đó, bạn có thể sử dụng đơn giản :focus pseudo-class

div:focus { 
    background-color:red; 
} 

Demo: http://jsfiddle.net/mwbbcyja/

+0

Điều này hoạt động, miễn là bạn không có các mục khác trên trang có thể lấy tiêu điểm. – dave

+0

Vâng, nếu bạn nhấp vào mục khác đó - DIV sẽ mất tiêu điểm và khôi phục kiểu gốc. Nếu đó không phải là hành vi dự định, OP nên xây dựng. –

+0

Tôi đã thử điều này và thích dave nói miễn là có những thứ khác trên trang nó dường như không hoạt động. Cảm ơn mặc dù –

-3

Hãy thử dùng

này
div .active { 
    background-color:blue; 
    } 
+2

Điều này không làm những gì được hỏi: "* khi nhấp *". "hoạt động" là * không * cùng một điều. –

0
div:focus { 
    background-color:'color'; 
} 
+2

Chào mừng bạn đến với StackOverflow. Câu trả lời của bạn có khả năng nhận được phiếu bầu. Đọc [** Làm cách nào để viết câu trả lời hay? **] (https://stackoverflow.com/help/how-to-answer) để biết lý do. –

Các vấn đề liên quan