❶ 請簡述什麼是CSS3 Spring如何使用Spring
css3是css層疊樣式表技術的升級版本,意思是層疊樣式表三級。Spring框架是一個開放源代碼的J2EE應用程序框架。
Spring使用方法:
1、下載jar包。
2、創建一個實體類。
3、編寫Spring配置文件。
4、編寫測試代碼通過Spring進行屬性注入。
Spring解決了開發者在J2EE開發中遇到的許多常見的問題,提供了功能強大IOC、AOP及Web MVC等功能。
❷ CSS面試須知,哪些需要掌握得CSS技巧
主要都圍繞知識點的理解與css兼容性問題上,請參考下面的
2.1 link和@import都可以為頁面引入CSS文件,其區別是?
將樣式定義在單獨的.css的文件里,link和@import都可以在html頁面引入css文件。有link和@import兩種方式,導入方式如下:
link方式:<link rel=」stylesheet」 type=」text/css」 href=」aa.css」>
@import方式:<style type=」text/css」>@import 「aa.css」;</style>
link和@import兩種導入css文件的區別:
祖先的差別。Link屬於XHTML標簽,而@import完全是CSS提供的一種方式。Link標簽除了可以載入CSS外,還可以做很多其他的事情,比如定義RCC,定義rel連接屬性等;@import就只能載入css了。
載入順序的差別。當一個頁面被載入的時候,link引用的CSS會同時被載入,而@import引用的CSS會等到頁面全部被下載完再被載入。所以有時候瀏覽@import載入CSS的頁面時開始會沒有樣式(就是閃爍),網速慢時更為明顯。
兼容性的差別。由於@import是CSS2.1提出的所有老的瀏覽器不支持,@import只有在IE5以上的才能識別,而link標簽無此問題。
使用DOM控制樣式時的差別。當使用javaScript控制DOM去改變樣式的時候,只能使用link標簽,因為@import不是DOM可以控制的。
@Import可以在css中再次引入其他樣式表,比如可以創建一個主樣式表,在主樣式表中再引入其他的樣式表。
2.2 如何理解CSS樣式表的層疊性?
CSS使用層疊的原則來考慮繼承、層疊次序和優先順序等重要特徵,從而判斷相互沖突的規則中哪個規則應該起作用。
繼承性是指,許多CSS的樣式規則不但影響選擇器所定義的元素,而且會被這些元素的後代繼承。
層疊性是指,當一個web頁面使用多個樣式表,多個樣式表中的樣式可層疊為一個。在多個樣式表之間所定義的樣式沒有沖突的時候,瀏覽器會顯示所有的樣式。
優先順序是指,當發生樣式定義沖突時,瀏覽器首先會按照不同樣式規則的優先順序來應用樣式。CSS樣式的優先順序如下所示(其中數字3擁有最高的優先權):
1.瀏覽器預設設置;
2.外部樣式表(.css文件)或者內部樣式表(位於<head>元素內部);
3.內聯樣式(作為某個元素的style屬性的值)。
同等優先順序下,以最後定義的樣式為准,important比內聯高。
2.3 哪些屬性可以繼承?
Css中可以繼承的屬性如下:
文本相關屬性:font-family、font-size、font-style、font-variant、font-weight、font 、letter-spacing、line-height、text-align、 text-indent、 text-transform 、word-spacing 、color;
列表相關屬性:list-style-image、list-style-position、list-style-type、list-style;
表格相關屬性:border-collapse、border-spacing、caption-side、table-layoute;
其他屬性:Cursor、visibility;
2.4 CSS選擇器中,元素選擇器和類選擇器的區別是什麼?
元素選擇器是常見的CSS選擇器,即文檔的元素就是最基本的選擇器。選擇器通常是某個HTML元素,比如<p>、<h1>、<em>、<a>等,甚至可以是<html>元素本身。
類選擇器用於將樣式規則與附帶class屬性的元素匹配,其中該class屬性的值為類選擇器中指定的值。使用類選擇器時,首先要定義樣式類,其語法為:
.className{ };
所有能夠附帶class屬性的元素都可以使用此樣式聲明。只需要將class屬性的值設置為」className」,則可以將類選擇器的樣式與元素關聯。
在實際使用時,如果需要為某種元素定義樣式,則往往使用元素選擇器;如果要應用樣式而不考慮具體設計的元素,最常用的方法就是使用類選擇器。
2.5 簡要描述CSS中的定位機制
CSS中,除了默認的流定位方式以外,還有如下幾種定位機制:浮動定位、相對定位、絕對定位和固定定位。
浮動定位是將元素排除在普通流之外,並且將它放置在包含框的左邊或者右邊,但是依舊位於包含框之內。
相對定位將元素相對於它在普通流中的位置進行定位。
絕對定位是指將元素的內容從普通流中完全移除,並且可以使用偏移屬性來固定該元素的位置。
固定定位是指將元素的內容固定在頁面的某個位置。
2.6 display屬性和 visibility屬性的區別?
可以使用display屬性定義建立布局是元素生成的顯示框類型。
1.如果將display屬性設置為block,可以讓行內元素表現得像塊級元素一樣;
2.如果將display屬性設置為inline,可以讓塊級元素表現得像內聯元素一樣;
3.可以通過把display屬性設置為none,讓生成的元素根本沒有框。這樣的話,該框及其所有內容就不在顯示,不佔用文檔中的空間。
在DIV設計中,室友display:none屬性後,HTML元素(對象)的寬度。高度等各種
屬性都將」丟失」;而使用visibility:hidden屬性後,HTML元素(對象)僅僅是在視覺上看不見(完全透明),而它所佔據的空間位置仍然存在,也即是說它仍具有高度、寬度等屬性值。
2.7 簡述對CSS的盒子模型的理解?
CSS盒子模型也叫做框模型,具備內容(content)、填充(padding)、邊框(border)、邊距(margin)這些屬性。在CSS中,每個元素都被視為一個框,而每個框都有三個屬性:
border:元素的邊框(可能不可見),用於將框的邊緣與其他框分開;
margin:外邊距,表示框的邊緣與相鄰框之間的距離,也稱為頁邊空白;
padding:內邊距,表示框內容和邊框之間的空間。
盒子模型的結構如圖所示:
由上圖可以看出,width和height指的是內容區域的寬度和高度。增加內邊距、外邊距和邊框不會影響到內容區域的尺寸,但會增加元素框的總尺寸。
因此,如果在一個具有邊框的元素中放置文本,往往需要設置一些內邊距,以便文本的邊緣不要接觸邊框,這樣更便於閱讀。而外邊距則可以在多個元素框之間創建空白,避免這些框都擠在一起。因此,在設計頁面時,經常會使用padding屬性和margin屬性來設置頁面的布局。但是,必須注意的是,一旦用了padding屬性或者margin屬性設置了元素的邊距以後,會增加元素在頁面布局中所佔的面積。
2.8 簡述CSS3中的偽類選擇器?
CSS3提供了大量偽類選擇器,瀏覽器對於有些偽類選擇器的支持還不太好。目前,常用的偽類選擇器有:
目標偽類:即 :target,突出顯示活動的HTML錨,用於選取當前活動的目標元素;
元素狀態偽類:比如 :enabled、:disabled、:checked;
結構偽類: 比如 :first-child、:last-child、:empty、:only-child;
否定偽類:即 :not(selector),匹配非指定元素/選擇器的每個元素。
2.9 為什麼建議設置背景圖像的同時還設置背景顏色?
一般建議在使用背景圖片的同時提供background-color屬性,並且將其設置為和圖像主要顏色類似的顏色。這樣,如果正在載入頁面,或者因為各種原因無法顯示背景圖像時,頁面可以使用這種顏色作為背景色。
2.10 如何居中div?如何居中一個浮動元素?
給div設置一個寬度,然後設置元素的左右外邊距為auto,比如,margin:0 auto。則可以實現div居中顯示。
對於浮動元素,設置其左右外邊距為關鍵字auto是無效的。此時,如果需要設置其居中顯示,可以:1.精確計算其左外邊距並進行設置,實現居中顯示。
2.使用一個居中顯示的div元素包含次浮動元素,
代碼如:<div style=」margin:0 auto;」><div style=」float:left;」></div></div>
2.11 在設置文本的字體時,為什麼建議設置替換字體?
可以使用font-family屬性來指定文本的字體,代碼如下所示:font-family:name/inherit;
此時,name為首選字體的名稱。如果字體名稱有多個單詞,即中間有空格,則需要將字體名稱用一對單引號或者雙引號包圍起來。
但是,如果用戶機器上並沒有安裝name所指定的字體,則會顯示默認字體。因此,如果可以指定一種替代字體,替代字體可以和指定字體不完全相同,相似且不會影響頁面的布局,就可以解決問題了。
我們可以為font-family屬性指定多種字體,且多種字體之間用逗號隔開,這樣可以為頁面指定一個字體列表。如果用戶機器沒有第一種字體,則瀏覽器會查找字體列表中的下一種字體替代默認字體顯示。如果找遍了字體列表還是沒有可以使用的字體,瀏覽器才會使用默認字體顯示頁面。代碼如下所示:
h1{font-family:Georgia,serif;}
此時,如果用戶機器上沒有安裝Georgia,但安裝了Times字體(serif字體系列中的一種字體),瀏覽器就可能對<h1>元素使用Times。盡管Times與Georgia並不完全匹配,但至少足夠接近。
因此,我們建議在所有font-family規則中都提供一個通用字體系列。這樣就提供了一條後路,在用戶機器無法提供與規則匹配的特定字體時,就可以選擇一個通用字體作為替換。
2.12 內聯元素可以實現浮動嗎?
在CSS中,任何元素都可以浮動。浮動元素會生成一個塊級框,而不論它本身是何種元素。因此,對於內聯元素,如果設置為浮動,會產生和塊級框相同的效果。
2.13 什麼情況下需要額外設置表格的顯示規則?
默認情況下(不額外設置表格的顯示規則時),表格按照自動表格布局進行顯示,即瀏覽器在顯示表之前查看每一個單元格,然後基於所有格的設置計算表單大小,而列的寬度是由列段元個中沒有折行的最寬的內容設定的。此時,單元格的大小會適應內容的大小。
自動表格布局的演算法在表格復雜時會比較慢,這是由於它需要在確定最終的布局之前訪問表格中多有的內容。在不能提前確定每一列的大小時,這種方式會非常適用。
如果額外設置表格的顯示規則,即設置table-layout屬性的值為fixed,則稱為固定表格布局。在固定表格布局中,水平布局僅取決於表格寬度,列寬度,表格邊框寬度,單元格間距,而與單元格的內容無關。瀏覽器將使用某列指定的寬度來計算布局,並使用該寬度計算該列中所有其他單元格的寬度。
固定表格布局與自動表格布局相比,允許瀏覽器更快地對表格進行布局。因為如果指定使用固定表格布局,瀏覽器在接收到第一行後就可以顯示表格。如果表格龐大且已經指定了大小,則會加速表的顯示。
2.14 簡要描述CSS中content屬性的作用
content屬性與:before及:after偽元素配合使用,來插入生成內容,可以在元素之前或之後放置生成的內容。可以插入文本、圖像、引號,並可以結合計數器為頁面元素插入編號。比如,查看如下代碼:
body {counter-reset:chapter;}
h1:before { content:」第」counter(chapter)」章」;}
h1 { counter-increment:chapter;}
使用content屬性,並結合:before選擇器和計數器counter,可以在每個<h1>元素前插入新的內容。
2.15 CSS Sprite是什麼,談談這個技術的優缺點
CSS Sprite是一種網頁圖片應用處理方式,就是把網頁中一些背景圖片整合到一張圖片文件中,再利用CSS的」background-image」,」background-repeat」,」background-position」的組合進行背景定位。
其優點在於:①減少網頁的http請求,提高性能,這也是CSS Sprite最大的優點,
也是其被廣泛傳播和應用的主要原因;
②減少圖片的位元組,多張圖片合並成1張圖片的位元組小於多張圖片的位元組總和;
③較少了命名困擾,只需對一張集合的圖片命名,不需要對每一個小元素進行命名提高製作效率;
④更換風格方便。只需要在一張或少張圖片上修改圖片的顏色或樣式,整個網頁的風格就可以改變,維護起來更加方便;
但是CSS Sprite也存在一些不可忽視的缺點:
①圖片合成比較麻煩;
②背景設置時,需要得到每一個背景單元的精確位置;
③維護合成圖片時,最好只是向下加圖片,而不是更改已有圖片。
2.16 對CSS3有了解嗎?列舉幾個CSS3的新特性並簡要描述
CSS3作為CSS技術的升級版本,著力於模塊化發展,將規范分解為一些小的模塊,如選擇器、盒子模型、列表模塊、背景和邊框等;並加入了很多新的模塊和屬性,比如賦值選擇器、文字陰影、邊框圓角、邊框陰影、漸變、過渡、多欄布局、2D/3D轉換、動畫等。
其中,CSS3提供了一些復雜選擇器,用於實現頁面復雜情況下的元素選擇,如屬性選擇器,一些偽類和偽元素選擇器;漸變用於為元素設置漸變效果的背景;轉換可以實現元素的變換,比如位移、縮放、旋轉等;過渡可以實現簡單的動畫效果;動畫屬性則可以實現復雜的動畫,可以實現逐幀製作動畫。
2.17 過渡與動畫的區別是什麼?
過渡屬性transition可以在一定的事件內實現元素的狀態過渡為最終狀態,用於模擬一種過渡動畫效果,但是功能有限,只能用於製作簡單的動畫效果;
動畫屬性animation可以製作類似Flash動畫,通過關鍵幀控制動畫的每一步,控制更為精確,從而可以製作更為復雜的動畫。
2.18 什麼是CSS reset?
CSS reset,又叫做CSS重寫或者CSS重置,用於改寫HTML標簽的默認樣式。
有些HTML標簽在瀏覽器里有默認的樣式,例如p標簽有上下邊距,li標簽有列表標識符號等。這些默認樣式在不同瀏覽器之間也會有差別,例如ul默認帶有縮進的樣式,在IE下,它的縮進是通過margin實現的,而Firefox下,它的縮進是由padding實現的。著必然會帶來瀏覽器兼容問題。
因此,在CSS代碼中,可以使用CSS代碼去掉這些默認樣式,即重新定義標簽樣式,從而覆蓋瀏覽器的CSS默認屬性,即CSS reset。
需要注意的是,在進行樣式重寫時,不建議使用 * 選擇器進行重寫,這樣會降低效率,影響性能。
2.19 如何清除浮動元素所帶來的影響?
浮動定位是指將元素排除在普通流之外,並且將它放置在包含框的左邊或者右邊,但是依舊位於包含框之內。也就是說,浮動的框可以向左或向右移動,直到它的外邊緣碰到包含框或另一個浮動框的邊框為止。
由於浮動框不在文檔的普通流中,所以元素浮動之後,其原有位置不再保留,其他元素的位置會受到影響。
如果需要清除左側或者右側浮動元素帶來的影響,則可以使用clear屬性來設置。另外,包含框呃逆的子元素浮動後,如果包含框沒有設置具體的高度,則其高度會發生變化,此時,可以使用overflow屬性來清除子元素浮動後帶來的影響。
2.20 談談你對瀏覽器兼容性問題的理解
瀏覽器的類型及版本的不同會造成CSS效果不盡相同,因此需要實現瀏覽器兼容,也可以針對不同的瀏覽器編寫不同的CSS。
目前,各主流瀏覽器的新版本,對應W3C的標准支持很好,因此,首先保證代碼符合W3C的標准,這是解決瀏覽器兼容問題的前提。
其次,對於某些支持受限的屬性,針對不同的瀏覽器添加相應的前綴,比如-webkit-、-o-、-moz-。
第三,對於IE的低版本,可以編寫帶有特定前綴的代碼,實現版本識別。比如:
.bb{
background-color:#f1ee18;/*所有識別*/
.background-color:#f1ee18\9;/*IE6 7 8識別*/
+background-color:#f1ee18;/*IE6 7識別*/
_background-color:#f1ee18;/*IE6識別*/
}
另外,對於特定的兼容性問題,特殊解決。常見的特殊問題有:
1.使用CSS reset:對於有些HTML標簽,瀏覽器默認的margin和padding不同,可以使用CSS代碼改寫默認的樣式效果,從而實現統一
2.IE低版本中,不能使用auto關鍵字實現塊級元素居中顯示,可以改用設置父元素的text-align;
3.子元素設置上外邊距時,父元素需要設置邊框或者外邊距;
4.外邊距合並問題。
❸ css3 linear-gradient線性漸變如何使用才有效果求源碼
linear-gradient這個CSS3的線性漸變屬性,目前瀏覽器還沒同一,需要加前綴,例如:
<!doctypehtml>
<htmllang="en">
<head>
<metacharset="UTF-8">
<title>Document</title>
</head>
<style>
#div1{
width:200px;
height:100px;
background:-moz-linear-gradient(left,#ace,#f96);/*Mozilla*/
background:-webkit-gradient(linear,050%,100%50%,from(#ace),to(#f96));/*Oldgradientforwebkit*/
background:-webkit-linear-gradient(left,#ace,#f96);/*newgradientforWebkit*/
background:-o-linear-gradient(left,#ace,#f96);/*Opera11*/
}
</style>
<body>
<divid="div1"></div>
</body>
</html>
你測試一下,基本上除了比較老的IE以外,都能顯示了。
❹ html5和css3各種不兼容,為什麼公司的面試要求都要呢
1、HTML5是更先進更標準的HTML,新增加了標簽,可以更好的兼容JS,同時節省代碼。
HTML5主要是符合現代媒介的需要,比如iPad為代表的平板電腦,還有手機,說到底就是充分的照顧到各種瀏覽媒介的兼容性。
2、CSS3對CSS的定義更為嚴謹,同時也加入了一些新的標簽功能,使網頁視覺呈現方面更良好,主要是視覺的渲染,比如有些圖片效果的視覺,CSS3呈現的與其相差無幾。在豐富頁面的同時,有更多兼容非主流瀏覽器的方案。
3、對於瀏覽器不兼容問題只存在於低版本的IE瀏覽器,主流的火狐、谷歌、360瀏覽器都已經兼容HTML5和CSS3,而且也是趨勢必然的結果。
❺ Web前端面試指導(四十):CSS3有哪些新特性
第 1 選擇器
第 2 RGBA和透明度
第 3 多欄布局
第 4 多背景圖
第 5 Word Wrap
第 6 文字陰影
第 7 @font-face屬性
第 8 圓角(邊框半徑)
第 9 邊框圖片
第 10 盒陰影
第 11 盒子大小
第 12 媒體查詢
第 13 語音
❻ css3、js、html5哪個更重要、今天面試問我這個問題
現在的網頁效果,上面三個玩意缺了哪個都玩不好,說哪個重要應該沒有標准答案的。估計只有提問的人自己心裡才知道。
❼ html5+css3常見面試題(一)
1. Doctype作用? 嚴格模式與混雜模式如何區分?它們有何意義?
1.聲明位於文檔中的最前面,處於 標簽之前。告知瀏覽器的解析器,用什麼文檔類型 規范來解析這個文檔。
2.嚴格模式的排版和 JS 運作模式是 以該瀏覽器支持的最高標准運行。
3.在混雜模式中,頁面以寬松的向後兼容的方式顯示。模擬老式瀏覽器的行為以防止站點無法工作。
4.DOCTYPE不存在或格式不正確會導致文檔以混雜模式呈現。
2.
❽ HTML5+CSS3小實例:手風琴式載入動畫
HTML5+CSS3做一個手風琴式的載入動畫,這動畫、這質感、這配色,就問你喜不喜歡?!這個案例的知識點主要是:css的自定義屬性 + 動畫延遲 + 顏色濾鏡(hue-rotate)。
效果:
源碼:
❾ 小說中的彈幕怎麼實現的,是JavaScript和css3 最好有源碼發我看看。
就是javasceipt彈出一個div,如果已經有div了,則向上移動一個div的height就可以了
❿ 用HTML5+CSS3做一個精美的網頁要求一個首頁五個子頁
可以去css模板之家在線看效果,找到你喜歡的免費下載源碼,可以根據自己需要稍微改改就可以了,很簡單的,加油💪