1. 程式人生 > >css3實現8個小圓在一個大圓上平均分佈

css3實現8個小圓在一個大圓上平均分佈

一道面試題:只有一個ul,和8個li,實現佈局,8個小圓平均分佈在一個大圓邊緣,只用css實現。

解題關鍵:css3 中 transform,rotate,demo如下

     <div class="demo">
			<ul>
				<li>1</li>
				<li>2</li>
				<li>3</li>
				<li>4</li>
				<li>5</li>
				<li>6</li>
				<li>7</li>
				<li>8</li>
			</ul>
		</div>

     <style>
			.demo{
				width: 600px;
				height: 600px;
				background-color: #000000;
				padding: 100px;
				box-sizing: border-box;
			}
			ul,li{
				margin: 0;
				list-style-type: none;
				padding: 0;
			}
			ul{
				width: 400px;
				height: 400px;
				background-color:#fff;
				border-radius: 50%;
				position: relative;
			}
			li{
				width: 40px;
				height: 40px;
				position: absolute;
				background-color:red;
				border-radius: 50%;
				line-height: 40px;
				text-align: center;
				left: 50%;
				margin-left: -20px;
				margin-top: -20px;
			}
			li:nth-of-type(2){
				transform: rotate(45deg);
				transform-origin:20px 220px;
			}
			li:nth-of-type(3){
				transform: rotate(90deg);
				transform-origin:20px 220px;
			}
			li:nth-of-type(4){
				transform: rotate(135deg);
				transform-origin:20px 220px;
			}
			li:nth-of-type(5){
				transform: rotate(180deg);
				transform-origin:20px 220px;
			}
			li:nth-of-type(6){
				transform: rotate(225deg);
				transform-origin:20px 220px;
			}
			li:nth-of-type(7){
				transform: rotate(270deg);
				transform-origin:20px 220px;
			}
			li:nth-of-type(8){
				transform: rotate(315deg);
				transform-origin:20px 220px;
			}
			
		</style>

最終效果:

相關推薦

css3實現8一個平均分佈

一道面試題:只有一個ul,和8個li,實現佈局,8個小圓平均分佈在一個大圓邊緣,只用css實現。 解題關鍵:css3 中 transform,rotate,demo如下 <div c

第一個人10歲,第二比第一個2歲,以此類推,遞迴求第8個人的年齡

public static int Foo(int i){if(i<=0) return 0;if(i==1) return 10;if(i>1)  return Foo(i-1)+2;return i;}

學習Python中,注重這8細節,讓你在資料領域事半功倍

每個人都會遇到這個問題。 學習資料科學的過程,從來就不是一帆風順的。在寫程式碼的時候,你是否也經常不得不反覆搜尋同一個問題,同一個概念,甚至同一個語法結構的特性呢?對,你不是一個人在戰鬥。 我也一直在同樣的情況裡掙扎著。 雖然遇到問題上 StackOverflow 搜一

總結自己使用shell命令行經常使用到的8技巧

技巧 span get ash lan host tab localhost 沒有 原創blog,轉載請註明出處 Shell是命令解釋器 [[email protected]/* */ ~]# cat /etc/shells 查看本系統共支持哪些shel

CSS3實現五子棋Web遊戲,Canvas畫布和DOM兩種實現,並且具有悔棋和撤銷悔棋功能。

posit oct padding 角色 sar pac osi fse ech 用Canvas實現五子棋的思路: 1、點擊棋盤,獲取坐標x,y,計算出棋子的二維數組坐標i和j, 2、棋子的實現,先arc一個圓,再填充漸變色。 3、下完一步棋後切換畫筆和角色。 4、贏法算法

JavaScript 簡單使用的8案例

目錄: 1.抽獎系統 2.簡單驗證碼的使用 3.省市聯動 4.簡單輪播圖 5.表格資料增加和刪除 6.導航欄懸浮 、回到頂部 7.側邊欄iframe 的切換 8.摺疊選單 1.抽獎系統 <!DOCTYPE html> <html>

js實現點選圖看

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> <style> #o

為什麼8位元稱作一個位元組?

為什麼是 8 位呢?為什麼沒有定義 6 位、 7 位、 9 位等等?  『位元組』 從哪裡來? 位元組這個詞最早起源於 1956 年前後,由 IBM 公司提出。最早的拼寫方式是 bite,但是為了避免跟位 bit 混淆,用 y 代替了 i  

JavaScript 簡單使用的8案例

目錄: 1.抽獎系統 2.簡單驗證碼的使用 3.省市聯動 4.簡單輪播圖 5.表格資料增加和刪除 6.導航欄懸浮 、回到頂部 7.側邊欄iframe 的切換 8.摺疊選單 1.抽獎系統 <!DOCTYPE html> <html>

圖片怎麼優化的8技巧

假如你運營線上商城又或是大型電商網站,圖片優化是你必需求把握的。不僅僅是從招引潛在顧客,仍是新增圖片查詢流量,又或是提高網站載入速度,圖片優化扮演者十分要害的人物。但說到圖片優化,許多傳統意義上的SEO人會說,圖片要加alt標籤,圖片要緊縮…這樣的粗線條顯然是不行的。今日我就和我們深化共享一下圖片優化有必要了

推薦:web開發人員常用8工具!

 隨著技術發展,web網頁開發要求越來越高,開發者都希望能更快速更高效更完美地展示,但工欲善其事必先利其器,今天我們大聖眾包(www.dashengzb.cn)小編就為大家整理8個好用的web開發常用工具,希望可以收藏實踐下。   1、Bootstrap   Bo

跳水比賽,8個評委打分。運動員的成績是8個成績去掉一個最高分, 去掉一個最低分,剩下的6分數的平均分就是最後得分。 使用一維陣列 2.請把打最高分的評委和最低分的評委找出來。 3.找出最佳評委

package com.my; import java.io.*; /**  * 1.跳水比賽,8個評委打分。運動員的成績是8個成績去掉一個最高分, 去掉一個最低分,剩下的6個分數的平均分就是最後得分。 使用一維陣列  * 2.請把打最高分的評委和最低分的評委找出來。 3.

【QT】:QT實現一個訊號與多槽的關聯和實現訊號與一個槽的關聯

這個問題很簡單,我們定義一個按鈕就是一個訊號,而相應的事件就是一個槽。 而這裡用到的方法就是connect。 connect的兩個例項如下: connect(ui->pushButton_3,SIGNAL(clicked()),this,SLOT

費用流模板——EK+SPFA實現的最費用最

演算法原理 用兩個字的高度概括——貪心~ 用一句話的概括:每一次通過spfa找到花費最小的可行流,然後進行增廣,直到殘量網路中,源點不能達到匯點。 其實還是通過程式碼理解比較好。 code 這裡1是源點,n是匯點。 每次的讀入四個數:有向邊的兩個

關於用兩網址訪問一個服務器不同站點

com dex 監聽 listen 解決方法 rtu one 不同 mage 要求就是通過http://www.xiaolu.com訪問在位置f:myblog下的文件index.html;通過http://www.xiaolu1.com訪問在位置f:myblog1下的in

第一程式在開發板執行成功he…

1、編寫Helloworld 在/usr/local/arm/real2410下建立hello目錄 cd /usr/local/arm/real2410 mkdir hello 編寫如下程式碼,儲存在hello目錄下,檔名為hello.c #include <stdio.h> int ma

Python將一個文件按段落分隔為多文件的簡單方法

解決 list 之前 一點 open ews 切片 compile popu 今天幫同學處理一點語料。語料文件有點大,而且是以連續兩個換行符作為段落標誌,他想把它按段落分隔成多個小文件。即每3個段落組成一個新文件。因為曾經沒有遇到過類似的操作,在網上找了

css3實現圖片的變

out transform head body inner mar orm add gin 主要是使用 css3的animation,scale等於1是原圖大小,大於1是把圖片放大,小於1 是把圖片縮小。animation-delay用來延遲5秒觸發這個動畫 <

CSS3實現的幾loading效果

css linear 1.2 普通 dong 500px 交叉 yellow index     昨晚上閑的沒事突然想做幾個小loading效果,下面是昨晚上做的幾個小案例,分享給大家     1.水波loading:這個loading是我覺得非常簡單,但是看上去的效果卻非

Python將一個檔案按段落分隔為多檔案的簡單方法

今天幫同學處理一點語料。語料檔案有點大,並且是以連續兩個換行符作為段落標誌,他想把它按段落分隔成多個小檔案,即每3個段落組成一個新檔案。由於以前沒有遇到過類似的操作,在網上找了一些相似的方法,看起來都有點複雜。所以經嘗試,自己寫了一段程式碼,完美解決問題。 基本思路是,先讀原檔案內容,