html - 請問css 中一個元素能做出這種選中效果么?
問題描述
如果做不出,也可以兩個元素,最好不要絕對定位
問題解答
回答1:首先是不太可能只用一個元素,因為想要實現自定義的 radio 或是 checkbox 時,都得靠 label 的 for 來實現,就是隱藏實際 input ,然後自定義 label 的樣式來實現,所以至少得兩個。
實現<input name='radios' type='radio' /><label for='radio1'></label><input name='radios' type='radio' /><label for='radio2'></label>
.circle-radio { visibility: hidden;}.circle-radio + label { display: block; width: 30px; height: 30px; border-radius: 50%; border: 2px solid #00AAFF;}.circle-radio:checked + label { display: block; background: #00AAFF; box-shadow: inset 0px 0px 0px 6px white;}回答2:
如果只是單純的表示這樣一個圖形的話,單個p是可以實現的,即通過背景的徑向漸變
<p id='a'></p><style> #a{width:100px;height:100px;border-radius:50%;background: -webkit-radial-gradient( #0af 0%,#0af 25%,transparent 26%,transparent 60%, #0af 61%, #0af 100%); }</style>
上述代碼是運行結果請看http://jsbin.com/vunoraxoko/e...
當然,如果你是想表示radio等單選或復選的話單個元素恐怕不能滿足你的要求
對于這一點,你可以參考樓上 @Tomoe 的回答
回答3:<p class='outer'><p class='inner'></p> </p>
.outer { width: 100px; height: 100px; margin: 0 auto; border: 3px solid blue; border-radius: 50px;}.inner { display: none; width: 50%; height: 50%; margin: 0 auto; margin-top: 25%; border-radius: 25px; background-color: blue;}p.outer:hover p.inner{ display: block;}
使用 border-radius 和 css 偽類選擇器 :hover預覽
相關文章:
1. 如何解決docker宿主機無法訪問容器中的服務?2. angular.js - 輸入郵箱地址之后, 如何使其自動在末尾添加分號?3. javascript - 如何使用nodejs 將.html 文件轉化成canvas4. javascript - html5的data屬性怎么指定一個function函數呢?5. docker-compose中volumes的問題6. 在mac下出現了兩個docker環境7. python - Scrapy存在內存泄漏的問題。8. javascript - 后臺管理系統左側折疊導航欄數據較多,怎么樣直接通過搜索去定位到具體某一個菜單項位置,并展開當前菜單9. angular.js - $stateChangeSuccess事件在狀態跳轉的時候不執行?10. java如何生成token?
