1、Assembly Language 匯編語言;匯編語言 (面向機器的程序設計語言)匯編語言(assembly language)是一種用于電子計算機、微處理器、微控制器或其他可編程器件的低級語言,亦稱為符號語言。在匯編語言中,用助記符代替機器指令的操作碼,用地址符號或標號代替指令或操作數的地址。在不同的設備中,匯編語言對應著不同的機器語言指令集,通過匯編過程轉換成機器指令。特定的匯編語言和特定的機器語言指令集是一一對應的,不同平臺之間不可直接移植。2、ALGOL是算法語言(ALGOrithmic Language)的簡稱,是在計算機發展史上首次清晰定義的高級語言,由歐美計算機學家合力所組成的聯席大會于仍是晶體管計算機流行的1950年代所開發。國際計算機學會(ACM)將ALGOL模式列為算法描述的標準,啟發ALGOL類現代語言Pascal、Ada、C語言等出現。
1、BCPL(Basic Combined Programming Language)1967年,劍橋大學的Martin Richards對CPL語言進行了簡化,于是產生了BCPL(Basic Combined Programming Language)語言。B語言是貝爾實驗室開發的一種通用的程序設計語言,它是于1969年前后由美國貝爾實驗室的電腦科學家肯·湯普遜(Ken Thompson)在丹尼斯·里奇(Dennis Ritchie)的支持下設計出來。后來,丹尼斯·利奇以B語言為基礎開發出C語言——世界上最常用的程序語言之一。自從被C語言取代之后,B語言幾乎已遭棄置。
C語言是在70年代初問世的。一九七八年由美國電話電報公司(AT&T)貝爾實驗室正式發表了C語言。同時由B.W.Kernighan和D.M.Ritchit合著了著名的“THE C PROGRAMMING LANGUAGE”一書。通常簡稱為《K&R》,也有人稱之為《K&R》標準。但是,在《K&R》中并沒有定義一個完整的標準C語言,后來由美國國家標準學會在此基礎上制定了一個C 語言標準,于一九八三年發表。通常稱之為ANSI C。在C的基礎上,一九八三年又由貝爾實驗室的Bjarne Strou-strup推出了C++。 C++進一步擴充和完善了C語言,成為一種面向 對象的程序設計語言。C++目前流行的集成開發環境最新版本是Borland C++4.5,Symantec C++6.1,和Microsoft VisualC++2017。C++提出了一些更為深入的概念,它所支持的這些面向對象的概念容易將問題空間直接地映射到程序空間,為程序員提供了一種與傳統結構程序設計不同的思維方式和編程方法。因而也增加了整個語言的復雜性,掌握起來有一定難度。
C#讀作C Sharp。最初它有個更酷的名字,叫做COOL。微軟從1998年12月開始了COOL項目,直到2000年2月,COOL被正式更名為C#。在1998年,Delphi語言的設計者Hejlsberg帶領著Microsoft公司的開發團隊,開始了第一個版本C#語言的設計。在2000年9月,國際信息和通信系統標準化組織為C#語言定義了一個Microsoft公司建議的標準。最終C#語言在2001年得以正式發布。C#是微軟公司發布的一種由C和C++衍生出來的面向對象的編程語言、運行于.NET Framework和.NET Core(完全開源,跨平臺)之上的高級程序設計語言。并定于在微軟職業開發者論壇(PDC)上登臺亮相。C#是微軟公司研究員Anders Hejlsberg的最新成果。C#看起來與Java有著驚人的相似;它包括了諸如單一繼承、接口、與Java幾乎同樣的語法和編譯成中間代碼再運行的過程。但是C#與Java有著明顯的不同,它借鑒了Delphi的一個特點,與COM(組件對象模型)是直接集成的,而且它是微軟公司 .NET windows網絡框架的主角。
Delphi,是Windows平臺下著名的快速應用程序開發工具(Rapid Application Development,簡稱RAD)。它的前身,即是DOS時代盛行一時的“BorlandTurbo Pascal”,最早的版本由美國Borland(寶蘭)公司于1995年開發。主創者為Anders Hejlsberg。經過數年的發展,此產品也轉移至Embarcadero公司旗下。Delphi是一個集成開發環境(IDE),使用的核心是由傳統Pascal語言發展而來的Object Pascal,以圖形用戶界面為開發環境,透過IDE、VCL工具與編譯器,配合連接數據庫的功能,構成一個以面向對象程序設計為中心的應用程序開發工具。
D語言,一種通用計算機程序語言,威力強大、功能豐富,支持多種編程方式,例如面向對象。D語言最初由Digital Mars公司就職的Walter Bright于2001年發布,意圖改進C++語言。目前最新D語言被簡稱為D2。最主要的D語言的實現是DMD。D 語言源自C/C++,借鑒了眾多編程語言的特色和現代編譯器技術,融會貫通了設計者豐富的實踐經驗,使之具備了非凡的威力--既有 C/C++ 語言的強大威力,又有 Python 和 Ruby 的開發效率。它集眾多系統級編程所需的功能于一身,例如垃圾回收、手工內存操作、契約式設計、高級模板技術、內嵌匯編、內置單元測試、Mixin 風格多繼承、類 Java 包管理機制、內置同步機制、內建基本運行時信息。
D 語言。它在C++的基礎上有一定的擴展,同時還保持了生成高效代碼以及直接訪問操作系統API和硬件的能力。D 很適合于編寫從中等規模到團隊合作完成、數百萬行代碼規模的各種程序。D 易于學習,為編程者提供了各種便利,采用了各種野心勃勃的編譯器優化技術。
D 不是一種解釋型語言,所以不需要虛擬機。它是給實際的編程者使用的實用的計算機程序語言,幫助程序員快速、可靠地完成易于維護、易于理解的代碼。D 是數十年來實現多種語言編譯器的經驗的積累,是用那些語言構造大型工程的嘗試的積累。D 從那些語言(主要是 C++ )那里獲得了靈感,并使用經驗和現實世界中的實用性來馴服它。
Erlang是一種通用的面向并發的編程語言,它由瑞典電信設備制造商愛立信所轄的CS-Lab開發,目的是創造一種可以應對大規模并發活動的編程語言和運行環境。Erlang問世于1987年,經過十年的發展,于1998年發布開源版本。Erlang是運行于虛擬機的解釋性語言,但是現在也包含有烏普薩拉大學高性能Erlang計劃(HiPE)開發的本地代碼編譯器,自R11B-4版本開始,Erlang也開始支持腳本式解釋器。在編程范型上,Erlang屬于多重范型編程語言,涵蓋函數式、并發式及分布式。順序執行的Erlang是一個及早求值,單次賦值和動態類型的函數式編程語言。
易語言 是一門以中文作為程序代碼編程語言,其以“易”著稱,創始人為吳濤。易語言早期版本的名字為E語言。其最早的版本的發布可追溯至2000年9月11日。創造易語言的初衷是進行用中文來編寫程序的實踐,方便中國人以中國人的思維編寫程序,并不用再去學習西方思維。易語言的誕生極大的降低了編程的門檻和學習的難度。從2000年以來,易語言已經發展到一定的規模,功能上、用戶數量上都十分可觀。
F#是由微軟發展的為微軟.NET語言提供運行環境的程序設計語言。它是基于Ocaml的,而Ocaml是基于ML函數程序設計語言的。 這是一個用于顯示·NET在不同編程語言間互通的程序設計。
公式翻譯器,是FormulaTranslation的中文翻譯,它是世界上最早出現的計算機高級程序設計語言的翻譯器,廣泛應用于科學和工程計算領域。FORTRAN語言翻譯器以其特有的功能在數值、科學和工程計算領域發揮著重要作用。Fortran語言的最大特性是接近數學公式的自然描述,在計算機里具有很高的執行效率。易學,語法嚴謹。可以直接對矩陣和復數進行運算,這一點類似matlab。自誕生以來廣泛地應用于數值計算領域,積累了大量高效而可靠的源程序。很多專用的大型數值運算計算機針對Fortran做了優化。廣泛地應用于并行計算和高性能計算領域。Fortran90,Fortran95,Fortran2003的相繼推出使Fortran語言具備了現代高級編程語言的一些特性。
Go(又稱 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 開發的一種靜態強類型、編譯型語言。Go 語言語法與 C 相近,但功能上有:內存安全,GC(垃圾回收),結構形態及 CSP-style 并發計算。
G語言是指圖形化的程序語言,由美國國家儀器有限公司開發,使用這種語言編程時,基本上不寫程序代碼,取而代之的是流程圖。
HTML稱為超文本標記語言,是一種標識性的語言。它包括一系列標簽.通過這些標簽可以將網絡上的文檔格式統一,使分散的Internet資源連接為一個邏輯整體。HTML文本是由HTML命令組成的描述性文本,HTML命令可以說明文字,圖形、動畫、聲音、表格、鏈接等。 [1]超文本是一種組織信息的方式,它通過超級鏈接方法將文本中的文字、圖表與其他信息媒體相關聯。這些相互關聯的信息媒體可能在同一文本中,也可能是其他文件,或是地理位置相距遙遠的某臺計算機上的文件。這種組織信息方式將分布在不同位置的信息資源用隨機方式進行連接,為人們查找,檢索信息提供方便
Java (計算機編程語言)Java是一門面向對象編程語言,不僅吸收了C++語言的各種優點,還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強大和簡單易用兩個特征。Java語言作為靜態面向對象編程語言的代表,極好地實現了面向對象理論,允許程序員以優雅的思維方式進行復雜的編程 。Java具有簡單性、面向對象、分布式、健壯性、安全性、平臺獨立與可移植性、多線程、動態性等特點 。Java可以編寫桌面應用程序、Web應用程序、分布式系統和嵌入式系統應用程序等 。
Julia (編程語言)Julia 是一個面向科學計算的高性能動態高級程序設計語言。其語法與其他科學計算語言相似。在許多情況下擁有能與編譯型語言相媲美的性能。Julia 是個靈活的動態語言,適合科學和數值計算,性能可與傳統靜態類型語言媲美。
J#(讀音:J Sharp)是微軟的 .NET框架下的一門語言,語法與Java相似。J#包含在 Visual Studio 2005 中,以后的 Visual Studio 版本中不再支持。
J語言屬于第五代的函數型語言,它是由APL語言創始人,加拿大著名數學 家Ken E.Iverson于90年代初發明,并由Eric和Roger Hui完成。該語言是APL的后繼式語言, J語言和APL語言原理基本相同,但是它不使用APL的象形文字,而使用ASCII字符,功能也比AP L更完善、更簡潔、更強大。它適用于各種微機和多種操作平臺,包括DOS、Windows、OS/2、 Unix和Macintosh等。
根據官方描述:K 是一個專注于效率的開源編程語言,它可以幫你輕松構建跨平臺軟件。通過精心設計的語法規則,這門語言可以有效降低讀寫負擔,讓你能夠把真正的注意力放在解決問題上。
目前 K 支持編譯到 C#/Go/JavaScript/Kotlin從star等指標來看,目前這個項目的關注度還不高。· 容易分辨、現代化的語法。(作者表示借鑒了Go語言的不少語法)· 自動管理內存。· 泛型。· 多范式編程。· 跨平臺。· Unicode。· 多后端,支持 C#/Go/JavaScript/Kotlin。· 即將支持LLVM。其實這個項目最早發布于2018年3月份,只不過版本號一直在beta中。but!該語言的開發者是國人!!中國平安的區塊鏈架構師。你可以在某乎找到作者本人這個項目原名是lite,作者后來更名為k語言。主要關注點就在于語法設計上的探索。
Kotlin 是一個用于現代多平臺應用的靜態編程語言 ,由 JetBrains 開發。Kotlin可以編譯成Java字節碼,也可以編譯成JavaScript,方便在沒有JVM的設備上運行。Kotlin已正式成為Android官方支持開發語言。
Lua 是一個小巧的腳本語言。它是巴西里約熱內盧天主教大學(Pontifical Catholic University of Rio de Janeiro)里的一個由Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de Figueiredo三人所組成的研究小組于1993年開發的。 其設計目的是為了通過靈活嵌入應用程序中從而為應用程序提供靈活的擴展和定制功能。Lua由標準C編寫而成,幾乎在所有操作系統和平臺上都可以編譯,運行。Lua并沒有提供強大的庫,這是由它的定位決定的。所以Lua不適合作為開發獨立應用程序的語言。Lua 有一個同時進行的JIT項目,提供在特定平臺上的即時編譯功能。Lua腳本可以很容易的被C/C++ 代碼調用,也可以反過來調用C/C++的函數,這使得Lua在應用程序中可以被廣泛應用。不僅僅作為擴展腳本,也可以作為普通的配置文件,代替XML,ini等文件格式,并且更容易理解和維護。Lua由標準C編寫而成,代碼簡潔優美,幾乎在所有操作系統和平臺上都可以編譯,運行。 一個完整的Lua解釋器不過200k,在所有腳本引擎中,Lua的速度是最快的。這一切都決定了Lua是作為嵌入式腳本的最佳選擇。
L腳本語言是一個輕量級的,旨在接近自然語言的編程語言,目前支持在中文、英文基礎上的編程。并可擴展為任意語種。L腳本語言的語法結構簡單,程序結構相對松散,易學易用。目前L腳本語言仍處于開發初期,功能尚不完善。目前尚未提供源碼編輯器,建議使用notepad++或者ultraedit進行源碼編輯。
“logo”一詞源于希臘文,原意為“文字”或“思考”、“想法”。是一種過程性語言,是在1976年由美國麻省理工學院(MIT)佩帕特(Seymour Papert)教授指導下的一個研究小組在LISP語言基礎上,專門為兒童研制開發的編程語言。Logo語言雖然結構簡單、卻有豐富的表達方式,體現了現代計算機科學許多最新概念
MATLAB 是美國MathWorks公司出品的商業數學軟件,用于算法開發、數據可視化、數據分析以及數值計算的高級技術計算語言和交互式環境,主要包括MATLAB和Simulink兩大部分。MATLAB是matrix&laboratory兩個詞的組合,意為矩陣工廠(矩陣實驗室)。是由美國mathworks公司發布的主要面對科學計算、可視化以及交互式程序設計的高科技計算環境。它將數值分析、矩陣計算、科學數據可視化以及非線性動態系統的建模和仿真等諸多強大功能集成在一個易于使用的視窗環境中,為科學研究、工程設計以及必須進行有效數值計算的眾多科學領域提供了一種全面的解決方案,并在很大程度上擺脫了傳統非交互式程序設計語言(如C、Fortran)的編輯模式,代表了當今國際科學計算軟件的先進水平。MATLAB和Mathematica、Maple并稱為三大數學軟件。它在數學類科技應用軟件中在數值計算方面首屈一指。MATLAB可以進行矩陣運算、繪制函數和數據、實現算法、創建用戶界面、連接其他編程語言的程序等,主要應用于工程計算、控制設計、信號處理與通訊、圖像處理、信號檢測、金融建模設計與分析等領域。MATLAB的基本數據單位是矩陣,它的指令表達式與數學、工程中常用的形式十分相似,故用MATLAB來解算問題要比用C,FORTRAN等語言完成相同的事情簡捷得多,并且MATLAB也吸收了像Maple等軟件的優點,使MATLAB成為一個強大的數學軟件。在新的版本中也加入了對C,FORTRAN,C++,JAVA的支持。
M語言,編程語言,是微軟新Oslo發展和面向服務策略的一部分。在一個軟件為中心的世界里,我們已經有了太多太多的計算機語言用以編程——從腳本語言到字節碼編譯語言,再到最高級的架構語言和嵌入式語言。微軟正打算開發另外一種編程語言,代號為“M”(代表Microsoft)。這種新編程語言是微軟新Oslo發展和面向服務策略的一部分,在保持文本(textual)和特定領域(domaiN-specific)的同時,還整合了來自XAML的特性。與Visual Studio 2010一起,M將與其他兩個即將一同發布的組件被直接應用:這兩個組件其中一個是QuadraNt,它是一個可視化構建模型的工具;而另外一個組件是在SQL數據庫中用于存儲和瀏覽模型的存儲器。除此之外,關于該語言微軟沒有作更多的解釋。不過據推測它很可能是一種基于.Net框架的編譯語言(終于可以和自然語言代碼說再見了)。而且從微軟的表述上來看,M正緊追潮流——在努力成為一種跨平臺(cross-platform)語言。
Objective-C,通常寫作ObjC或OC和較少用的Objective C或Obj-C,是擴充C的面向對象編程語言。它主要使用于Mac OS X和GNUstep這兩個使用OpenStep標準的系統,而在NeXTSTEP和OpenStep中它更是基本語言。GCC與Clang含Objective-C的編譯器,Objective-C可以在GCC以及Clang運作的系統上編譯。1980年代初布萊德·考克斯(Brad Cox)在其公司Stepstone發明Objective-C。他對軟件設計和編程里的真實可用度問題十分關心。Objective-C最主要的描述是他1986年出版的書 Object Oriented Programming: An Evolutionary Approach. Addison Wesley. ISBN 0-201-54834-8.
O語言是一款中間計算機語言(或稱套裝),它具有傳統匯編語言的基本特點,也有與它們諸多不同之處。窗口設計、界面描述語言、O中間語言已經能很好的整合在一起(1.0.2.2版),基本有VB的事件驅動和窗口設計功能(但還不能創建COM控件,自帶控件也很少)。O語言是一款中文計算機語言(或稱套裝),各部分開發狀態:O匯編語言(簡稱OASM,√)
O中間語言(簡稱OML,√)O高級語言(簡稱OXX,×)界面描述語言(簡稱OFL,√)窗口設計(√)窗口設計、界面描述語言、O中間語言已經能很好的整合在一起(1.0.2.2版),基本有VB的事件驅動和窗口設計功能(但還不能創建COM控件,自帶控件也很少)
PHP (超文本預處理器)PHP即“超文本預處理器”,是一種通用開源腳本語言。PHP是在服務器端執行的腳本語言,與C語言類似,是常用的網站編程語言。PHP獨特的語法混合了C、Java、Perl以及 PHP 自創的語法。利于學習,使用廣泛,主要適用于Web開發領域。PHP原始為Personal Home Page的縮寫,已經正式更名為 “PHP: Hypertext Preprocessor”。自20世紀90年代國內互聯網開始發展到現在,互聯網信息幾乎覆蓋了我們日常活動所有知識范疇,并逐漸成為我們生活、學習、工作中必不可少的一部分。據統計,從2003 年開始,我國的網頁規模基本保持了翻番的增長速度,并且呈上升趨勢。PHP 語言作為當今最熱門的網站程序開發語言,它具有成本低、速度快、可移植性好、 內置豐富的函數庫等優點,因此被越來越多的企業應用于網站開發中。但隨著互聯網的不斷更新換代,PHP語言也出現了不少問題。
Python (計算機程序設計語言)Python是一種跨平臺的計算機程序設計語言。 是一個高層次的結合了解釋性、編譯性、互動性和面向對象的腳本語言。最初被設計用于編寫自動化腳本(shell),隨著版本的不斷更新和語言新功能的添加,越多被用于獨立的、大型項目的開發。Python是一種解釋型腳本語言,可以應用于以下領域:Web 和 Internet開發科學計算和統計人工智能桌面界面開發軟件開發后端開發網絡爬蟲
Perl,一種功能豐富的計算機程序語言,運行在超過100種計算機平臺上,適用廣泛,從大型機到便攜設備,從快速原型創建到大規模可擴展開發。Perl借取了C、sed、awk、shell腳本語言以及很多其他程序語言的特性,其中最重要的特性是它內部集成了正則表達式的功能,以及巨大的第三方代碼庫CPAN。簡而言之,Perl像C一樣強大,像awk、sed等腳本描述語言一樣方便,被Perl語言愛好者稱之為“一種擁有各種語言功能的夢幻腳本語言”、“Unix中的王牌工具”。Perl一般被稱為“實用報表提取語言”(Practical Extraction and Report Language),你也可能看到“perl”,所有的字母都是小寫的。一般,“Perl”,有大寫的P,是指語言本身,而“perl”,小寫的p,是指程序運行的解釋器。
Pascal (結構化編程語言)的名稱是為了紀念十七世紀法國著名哲學家和數學家Blaise Pascal而來的,它由瑞士Niklaus Wirth教授于六十年代末設計并創立的。Pascal語言語法嚴謹,層次分明,程序易寫,可讀性強,是第一個結構化編程語言。Pascal語言廣泛用于各種軟件,程序分為名稱(program后自擬)、設置(var后規定)、開始(begin)、程序(正文)、讀取(read/read ln)、結束(end),結構層次強,嚴謹而又緊密。
Pascal由瑞士蘇黎世聯邦工業大學的Niklaus Wirth教授于六十年代末設計并創立。1971年,以電腦先驅帕斯卡pascal的名字為之命名 [1] 。Pascal語言語法嚴謹,一出世就受到廣泛歡迎,迅速地從歐洲傳到美國。Pascal基于ALGOL編程語言,為紀念法國數學家和哲學家布萊茲·帕斯卡而命名。維爾特后來開發了類似Pascal的Modula-2和Oberon。在開發Pascal之前,維爾特開發了語言Euler,然后開發了Algol-W。
Pascal是最早出現的結構化編程語言,具有豐富的數據類型和簡潔靈活的操作語句。高級語言發展過程中,Pascal是一個重要的里程碑。Pascal語言是第一個系統地體現了E.W.Dijkstra和C.A.R.Hoare定義的結構化程序設計概念的語言。
最初,Pascal在很大程度上但不是完全地為了教授學生結構化編程。很多代學生已使用Pascal作為本科課程的入門語言。Pascal的變種也逐漸地用于從研究項目到PC游戲和嵌入式系統的所有領域。更新的Pascal編譯器存在于廣泛使用它的領域。
GCC,Gnu C編譯器,最初是用Pascal的一種方言Pastel編寫的(見GCC#概觀)。Pascal是Apple Lisa和早期Mac開發使用的高級語言;最初Macintosh操作系統的部分是從Pascal源代碼手工翻譯成Motorola 68000匯編語言的。流行的排版系統TeX是由高德納使用基于DEC PDP-10 Pascal的最初文學編程系統WEB編寫的,而像Total Commander的應用是使用Delphi(即Object Pascal)編寫的。
Object Pascal仍然廣泛用于開發像Skype這樣的Windows應用。
Q語言是在VBScript的基礎上發展起來,專用于按鍵精靈系列產品(包括但不限于按鍵精靈、按鍵小精靈、簡單游等)的一種易學易用、功能強大的腳本語言。Q語言以VBScript為基礎,去掉了少量不重要的功能,且增加了很多更易于使用,更符合國情的新功能。
Rust是一門系統編程語言 ,專注于安全 ,尤其是并發安全,支持函數式和命令式以及泛型等編程范式的多范式語言。Rust在語法上和C++類似 ,但是設計者想要在保證性能的同時提供更好的內存安全。 Rust最初是由Mozilla研究院的Graydon Hoare設計創造,然后在Dave Herman, Brendan Eich以及很多其他人的貢獻下逐步完善的。Rust的設計者們通過在研發Servo網站瀏覽器布局引擎過程中積累的經驗優化了Rust語言和Rust編譯器。Rust編譯器是在MIT License 和 Apache License 2.0雙重協議聲明下的免費開源軟件。 Rust已經連續四年(2016,2017,2018,2019)在Stack Overflow開發者調查的“最受喜愛編程語言”評選項目中折取桂冠。
Ruby (一種面向對象程序設計的腳本語言)同義詞 ruby語言一般指Ruby(一種面向對象程序設計的腳本語言)Ruby,一種簡單快捷的面向對象(面向對象程序設計)腳本語言,在20世紀90年代由日本人松本行弘(Yukihiro Matsumoto)開發,遵守GPL協議和Ruby License。它的靈感與特性來自于 Perl、Smalltalk、Eiffel、Ada以及 Lisp 語言。由 Ruby 語言本身還發展出了JRuby(Java平臺)、IronRuby(.NET平臺)等其他平臺的 Ruby 語言替代品。Ruby的作者于1993年2月24日開始編寫Ruby,直至1995年12月才正式公開發布于fj(新聞組)。因為Perl發音與6月誕生石pearl(珍珠)相同,因此Ruby以7月誕生石ruby(紅寶石)命名。
R是用于統計分析、繪圖的語言和操作環境。R是屬于GNU系統的一個自由、免費、源代碼開放的軟件,它是一個用于統計計算和統計制圖的優秀工具。R是統計領域廣泛使用的誕生于1980年左右的S語言的一個分支。
SWIFT (計算機編程語言)Swift是一種新的編程語言,用于編寫iOS和macOS應用。Swift結合了C和Objective-C的優點并且不受C兼容性的限制。Swift采用安全的編程模式并添加了很多新特性,這將使編程更簡單,更靈活,也更有趣。Swift是基于成熟而且倍受喜愛的Cocoa和Cocoa Touch框架,它的降臨將重新定義軟件開發。Swift,蘋果于2014年WWDC蘋果開發者大會發布的新開發語言,可與Objective-C共同運行于macOS和iOS平臺,用于搭建基于蘋果平臺的應用程序。Swift是一款易學易用的編程語言,而且它還是第一套具有與腳本語言同樣的表現力和趣味性的系統編程語言。Swift的設計以安全為出發點,以避免各種常見的編程錯誤類別。2015年12月4日,蘋果公司宣布其Swift編程語言開放源代碼。長600多頁的The Swift Programming Language 可以在線免費下載。
Scala 是一門多范式(multi-paradigm)的編程語言,設計初衷是要集成面向對象編程和函數式編程的各種特性。
Scala 運行在Java虛擬機上,并兼容現有的Java程序。
Scala 源代碼被編譯成Java字節碼,所以它可以運行于JVM之上,并可以調用現有的Java類庫。
是由AT&T貝爾實驗室的John Chambers和另外一些人于1976年共同開發的一種用來進行數據探索、統計分析、作圖的解釋型語言。它的豐富的數據類型(向量、數組、列表、對象等)特別有利于實現新的統計算法,其交互式運行方式及強大的圖形及交互圖形功能使得我們可以方便的探索數據。3、SETL語言(SETL language)是基于集合論的甚高級語言。它提供了描述有限集和元組及其有關操作和控制結構的手段,以提高開發功效,增加程序的易讀性。該語言由美國紐約大學J.T.Schwartz等人于1975年提出。SETL語言以可移植的方式實現,已在IBM 370,DEC10和VAX,CDC 6600等機器上運行。在紐約大學、加州大學伯克萊分校等大學的課程教學中,學生們已使用SETL語言進行算法設計。SETL在支持類PASCAL程序設計語言的大部分標準數據結構的基礎上,能夠支持集合和元組
是為構建可維護軟件而設計的一種靜態類型的編程語言。此語言的語法結構與Go相似,同時也受Oberon,Rust和Swift語言的影響。V語言是一種非常簡單的語言。閱讀本文檔,將花費您大約半小時,到最后,您將幾乎學會V語言的全部。盡管很簡單,但它為開發人員提供了強大的功能。使用其他語言進行的任何操作,用V語言都可以實現。V語言官網地址:https://vlang.ioV語言Github地址:https://github.com/vlang/vV語言開發文檔:https://www.v-lang.cn/docs/strings
WinDev是一個由法國公司PCSOFT所開發的一款自動編程軟件,其設計目的是為了開發應用。其主要面向數據為Windows8、Vista、XP、2008、2003、2000,也同樣支持Linux,.Net和Java。使用全中文編程語言(W語言),全中文用戶界面。第一個WinDev版本于1993年出版,并同期推出了WebDev以及WinDev Mobile
X++是一個專門為Axapta產品所設計的面向對象語言, 包含處理數據庫查詢的內建結構. 它的大綱是模仿Java Precisely(一個簡明的Java編程語言的描述), 適合熟悉編程語言以及對語法語義和編譯器解釋器的關系有所了解的讀者.這些公開的章節將提供一些細節, 這些細節是關于研究問題域和Axapta架構的描述的方法論.如果熟悉Axapta系統將會增強理解X++中某些組成的效果. 在依次深入研究該語言每種結構之前, 我們會先概覽一下X++的基本概念. 這些基本概念包括程序框圖, 命名規則, 保留字, 數據類型, 類, 接口, 表達式和語句. 本報告將會以X++語言的建議和往后發展的可能性作為結束.
《雅奇MIS》采用“圖示化邏輯結構語言”為內核技術,使得無編碼的圖示化編程成為可能。在當今世界上,達到《雅奇MIS》所采用的如此成熟的“圖示化語言技術”的產品,還絕無僅有。因此《雅奇MIS》對于IT科技是一場巨大的革命性進步。
外文名 Z notionZ語言是一種用“數學文字”或“數學符號”來描述計算機系統的規范化語言,它不但能應用于計算機硬件系統,而且也特別適用于計算機軟件系統,Z語言描述“做什么”而不涉及“怎么做”,只對目標軟件系統進行功能描述。實際上,Z語言僅僅是一套規定的數學符號,使用Z語言所寫的“程序”是對計算機軟件或硬件系統的一種抽象化設計。所以,利用Z語言寫出來的內容不是計算機程序,更不是可以編譯而生成能夠在計算機上運行的代碼。利用Z語言寫出來的內容不是讓計算機運行的,而是供人理解和分析的。用戶可以通過這些內容去理解計算機系統的模塊、數據類型、過程、函數、對象、類等,進而對計算機系統的行為、結構、邏輯進行分析、驗證、改進、測試等。
一章 職業規劃和前景
第二章 html基本結構
<html> <head></head> <body></body> </html>
第三章 html基本標簽
<marquee direction="down" loop="4" onmouseover=this.stop() onmouseout=this.start()></marquee>
onmouseover=this.stop() onmouseover=this.start() scrollamout="1"(滾動速度)
第四章 img圖片標簽與路徑
第五章 三種列表的講解
<ul> <li></li> <li></li> <li></li> </ul>
<ol> <li>內容一</li> <li>內容二</li> <li>內容三</li> </ol>
<ul> <li>柚子 <ul> <li>沙田柚</li> <li>蜜柚</li> </ul> </li> <li>荔枝</li> <li>蘋果</li></ul>
<ol> <li>茶 <ul> <li>紅茶</li> <li>綠茶</li> </ul> </li> <li>果汁</li> <li>牛奶</li></ol>
<dl> <dt>pc網頁制作</dt> <dd>學習DIV+CSS JS JQ 項目實戰</dd> <dt>手機網頁制作</dt> <dd>手機網頁制作實戰</dd> </dl>
<dl> <dt>中國城市</dt> <dd>北京 </dd> <dd>上海 </dd> <dd>廣州 </dd> <dt>美國城市</dt> <dd>華盛頓 </dd> <dd>芝加哥 </dd> <dd>紐約 </dd> </dl>
第六章 表單元素(上)
<form> <input type="text"/> </form>
<form action="html.do" method="get"> username: <input type="text" name="user" /> <input type="submit" value="提 交" /> </form>
<form> <input type="hidden" name="hid" value="value"> </form>
<input type="text" name="" value="今天心情不錯" /> <input type="radio" name="" value="" checked="checked"> <input type="checkbox" name="" value="" checked="checked"> <select name="" > <option value=""></option> <option value="" selected="selected"></option> <select>
<p>單向選擇</p> <label for="male">男:</label><input type="radio" name="sex" id="male"/> <label for="nv">女:</label><input type="radio" name="sex"checked="check"/>
第七章 表單和表格(下)
<form> <select name="" id=""> <option value="1">1月</option> <option value="2">2月</option> </select> </form>
<table border="1"> <tr> <td>姓名</td> <td>性別</td> </tr> </table>
<table border="1"> <tr> <td>姓名</td> <td>性別</td> </tr> <tr> <td>姓名</td> <td>性別</td> </tr> </table>
<table border="1"> <tr> <td >姓名</td> <td>性別</td> <td>愛好</td> </tr> </table>
第一部分總結:
HTML部分導圖總結
學習從來不是一個人的事情,要有個相互監督的伙伴,想要學習或交流前端問題的小伙伴可以私信“學習”小明加群獲取2019web前端最新入門資料,一起學習,一起成長!
tml入門基礎筆記(簡單實用)
一、初識html
1.HTML:Hyper Text Markup Language(超文本標記語言)
java是一門編譯性語言
html是一門解釋性的標記語言
超文本:文字、圖片、音頻、視頻、動畫、超鏈接
標記:就是指組成HTML的各種標簽
2.HTML5的優勢:
1、各大瀏覽器廠商對它的支持
2、市場的需求
3、跨平臺
3.W3C標準:
1、結構化標準:指用什么語言去搭建整個網站(html 5)
2、表現化標準:指用什么去裝飾整個網站(css3)
3、行為標準:指用什么去實現網站的功能(JavaScript,jQuery)
4.html的基本結構:
<html>
<head>
<title>天貓精選-理想生活上天貓</title>
</head>
<body bgcolor="pink">
大家好!!!!!
</body>
</html>
雙標簽:有個兩個標簽成對出現的叫做雙標簽
表示HTML網頁的開始,表示網頁的結束
表示網頁頭部的開始,表示網頁頭部的結束
表示網頁身體的開始,表示網頁身體的結束
表示網頁標題的結束
標題標簽
<h1></h1>....<h6></h6>:會對文字進行加粗,并且改變字體的大小,還會進行換行
段落標簽
<p></p>:表示它獨占一行,會保留段落之間的間距
加粗
<strong></strong>:表示加粗
斜體
<em></em>:表示斜體
字體設置
<font></font>:表示字體
屬性:color顏色
face字體的樣式
size字體的大小
單標簽:只有一個,開始就結束的叫做單標簽
屬性:charset = “utf-8”;utf-8表示國際編碼格式,所有的字符都能識別
換行標簽
<br/>:表示換到下一行
水平線標簽
<hr/>:表示水平線
屬性:width表示水平線的寬度
size表示水平線的厚度
color表示水平線的顏色
align表示水平線的水平位置,left左邊,center中間,right右邊
圖像標簽
<img src="" alt="" title=""/>
src表示的是圖片地址
絕對路徑:直接寫完整圖片所在的位置
相對路徑:先找到和你的網頁所在同一級的圖片所在位置,然后再去在這個基礎
去找圖片的位置,如果圖片在下一級那么使用“/”來找到它,如果
上一級使用“..”來找到它
alt表示的是圖片加載失敗的替代文字
title表示的是鼠標懸浮時圖片的提示文字
width表示圖片的寬度
height表示圖片的高度
特殊標簽:
大于符號:>(great than)
小于符號:<(less than)
空格符號:
版權符號:?
注釋:
5.超鏈接標簽
<a href="" target=""></a>
1
href表示鏈接的地址,使用相對路徑的方式去使用
target表示連接的方式
_blank表示在新窗口打開
_self表示在本窗口打開
_parent表示在父窗口打開
1、頁面間的鏈接,用于兩個頁面之間相互的跳轉
2、錨鏈接,用于頁面之間定位
①要設置一個錨點,語法錨點
②將點擊之后要跳轉的超鏈接設置跳轉的錨點位置,語法:
如果不在同一個頁面中,先寫好要跳轉頁面所在的位置,然后再寫錨點的名字
3、功能性鏈接 (發郵件、msn、可以打開本地的相應的客戶端)
語法:
二、網頁媒體元素
1.視頻元素<video></video>
屬性:src表示添加視頻的路徑(位置)
controls表示在添加的視頻元素上添加播放控件,只有一個屬性值
/autoplay表示自動播放(慎用),只有一個屬性值
如果屬性只有一個值,屬性值可以省略不寫
source表示引用的視頻源路徑,一般會引用多個源路徑,以避免瀏覽器不兼容的問 題
2.音頻元素<audio></audio>
屬性:src表示添加視頻的路徑(位置)
controls表示在添加的音頻元素上添加播放控件,只有一個屬性值
/autoplay表示自動播放(慎用),只有一個屬性值
source表示引用的音頻源路徑,一般會引用多個源路徑,以避免瀏覽器不兼容的問 題
3.內嵌框架<iframe></iframe>
屬性:src表示添加內嵌內容的路徑
name表示這個框架的名字
width表示這個框架的寬度
height表示這個框架的高度
frameborder表示內嵌框架的邊框
scrolling表示是否出現滾動條
作用:
1、將多個網頁重復的部分抽取出來,通過內嵌框架的方式,放到各個網頁中
2、使用<a>標簽跳轉到指定的框架中,先在指定要跳轉到的框架中取一個name,使用target=“name的值”
<a>標簽一定要寫href屬性才能生效,如果不想跳轉到任何頁面,那么href="#",表示該超鏈接為空
鏈接,點擊空鏈接會刷新頁面
4.語義化結構標簽:主要是為了讓結構更加清晰化
<header>表示頁面頭部內容
<section>表示頁面主體內容
<footer>表示頁面底部內容
<nav>表示導航欄內容
<aside>表示側邊欄內容
<article>表示頁面獨立文章內容
三、表單元素
1.表單<form></form>
屬性:1、method表示表單的提交方式,有兩個值,第一個叫post,第二個叫get
get方式的請求會將表單中所有表單元素信息顯示在地址欄中
post方式的請求必須有一個服務器來處理請求,所有表單元素的信息不會顯示在地址欄中, 在實際開發中一般使用post方式請求
2、action表單要提交的位置
2.表單元素
語法:
屬性: name表示input標簽的名字
value表示input標簽的值
type表示input標簽的元素類型
文本框:專門用來輸入文字
語法:<input type="text" name="userName" value="admin"/>,type的值為text
size表示文本框的長度
maxlength表示允許輸入的最大字符長度
密碼框:用來輸入密碼
語法:<input type="password" name="userName" value="admin"/>,
type的值為password
size表示文本框的長度
maxlength表示允許輸入的最大字符長度
單選按鈕
<input type="radio" name="sex" value="boy"/>男
<input type="radio" name="sex" value="girl"/>女
1
2
注意:單選按鈕的每個input中的name值必須相同,不然不能實現選擇一個切換的作用
checked屬性表示默認選中
1
2
復選框
<input type="checkbox" name="hobby" value="" />打游戲
<input type="checkbox" name="hobby" value="" checked/>睡覺
<input type="checkbox" name="hobby" value="" />出去約會
1
2
3
復選框可以選擇多個,并且可以取消
checked屬性表示默認選中
1
2
下拉列表框
<select>表示定義了一個列表框
<option>表示列表項
<select>
<option>--請選擇--</option>
<option selected>中國</option>
<option>美國</option>
</select> selected表示默認選中
按鈕
1、提交按鈕submit,它可以將表單中的信息提交到指定的位置
2、重置按鈕reset,它可以將表單中的信息恢復到默認值
3、普通按鈕button,它只是單純起一個按鈕的作用,需要和JavaScript和jQuery一起使
用,實現各種功能
4、圖片按鈕image,src表示圖片的路徑,也具有提交作用
多行文本域:需要輸入多行文字
<textarea>表示定義了一個多行文本域
cols表示文本域的寬度
rows表示文本域的高度
文件域:上傳文件
<input type="file" name="files"/>
1
需要設置編碼屬性enctype="multipart/form-data",表示將表單數據分為多部分提交
1
郵箱:可以進行郵箱驗證
網址:可以進行網址驗證
<input type="url" name="url"/>
1
數字:提供輸入數字
min表示允許的最小值
max表示允許的最大值
step表示每次增加或者減少的數字間隔
value表示默認值
搜索框:可以搜索提示關鍵字的文本框
<input type="search" name="search" />
<input type="button" value="百度一下" />
1
2
3.表單的高級應用
1、隱藏域:主要應用于在提交信息時不想讓用戶看到的信息進行隱藏提交
<input type="hidden" name="hidden" value="666"/>
1
2、只讀和禁用屬性
只讀:表示在網站上用戶只能夠查看,不能夠修改的數據,使用readonly添加只讀
禁用:一般表示在滿足某個條件之后,才能使用的功能,使用disabled添加禁用
3、表單元素的標注
①選擇要點擊后跳轉文本加上<label>標簽
②選擇跳轉對應的表單元素,給它加上id這個屬性(id屬性值在整個網頁只能出現一
次,不可以有重復的id值)
③在<label>中添加for屬性,然后屬性值為對應的id值
4.表單的初步驗證
為什么要進行表單驗證
1、減輕服務器的壓力
2、保證數據的可行性和安全性
5.驗證的方法
1、placeholder表示這個表單元素期待用戶輸入什么信息,它是起提示作用,當用戶輸入
內容時,提示信息隱藏
2、required表示表單元素填寫內容不能為空,使用了required的該表單元素必須填寫
3、pattern表示表單中的內容必須和輸入的正則表達式一致
^表示正則表達式的開始
$表示正則表達式的結束
[]表示在中括號中任選其中一個
\d表示匹配0~9之間的任意一個數
{n}表示前面的一種匹配方式匹配的次數,表示匹配n次
-表示就是-
\w表示匹配所有字母或數字或下劃線
\u4E00-\u9FA5匹配漢字
{4,10}表示匹配前面的一種匹配方式4~10次
A-Z表示匹配大寫的英文字母
a-z表示匹配小寫的英文字母
|表示或者
四、初識CSS3
1.CSS:層疊樣式表,它是專門用來設計網頁風格的
2.CSS的優點
1、內容與表現分離,便于網頁維護
2、網頁的表現統一,統一風格
3、豐富的樣式,使得頁面布局更加靈活
4、減少網頁的代碼量,增加網頁的瀏覽速度
5、運用獨立于頁面的CSS,有利于網頁被搜索引擎收錄
3.CSS樣式的語法
選擇器{
聲明(可以為1~n條)
屬性:屬性值;
}
選擇器:需要添加這些聲明的元素(標簽)
聲明:由屬性和屬性值組成,中間用“:”,使用“;”結尾
4.在html中添加樣式的方式
1、行內樣式
在需要添加樣式的標簽中,添加一個style屬性,在style屬性中添加聲明
2、內部樣式
在里面添加一個,然后通過選擇器和聲明添加樣式
3、外部樣式
它可以實現表現與內容的徹底分離,可以讓樣式表重復使用,便于維護和修改,并且
可以極大的減少代碼量
①鏈接外部樣式表
語法:
href表示引用的哪一個外部樣式表
rel表示使用的是樣式表
type表示文本類型為css類型
②導入外部樣式表
語法:@import url(“css/第一個外部樣式.css”);
區別:鏈接外部樣式表它是先將外部的CSS樣式添加到網頁中進行加載,再加載網頁的
內容,導入外部樣式表是先加載網頁中的內容,再進行外部樣式表的加載
樣式表的優先級別
行內樣式>內部樣式>外部樣式,遵循“就近原則”
5.CSS3中的選擇器
一、基本選擇器
1、標簽選擇器:以標簽名稱作為選擇器的名稱
選擇所有網頁的該標簽元素,比如:p表示選擇該網頁中所有的p標簽
2、類選擇器:以類的名稱作為選擇器的名稱,并且在選擇器的名稱前加上“.”,類
名能夠重復使用
3、id選擇器:以id的名稱作為選擇器的名稱,并且在選擇器的名稱前加上“#”,id
名在該網頁只能出現一次,具有唯一性
選擇器的優先級
id選擇器>類選擇器>標簽選擇器
二、層次選擇器
1、后代選擇器
語法:E F{聲明},E表示的是被匹配的元素,F表示被匹配的E的后代元素
比如:body p{},表示匹配所有body的后代p元素
2、子選擇器
語法:E>F{聲明},E表示的是被匹配的元素,F表示被匹配的E的子元素
比如:body>p{},表示匹配所有body的子元素中的p元素
3、相鄰兄弟選擇器
語法:E+F{聲明},E表示的是被匹配的元素,F表示被匹配的E的相鄰兄弟元素
比如:.p1+p{},表示匹配.p1的相鄰元素并且為p元素,只匹配后面的元素
4、通用兄弟選擇器
語法:E~F{聲明},E表示的是被匹配的元素,F表示被匹配的E的所有兄弟元素
比如:.p1~p{},表示匹配.p1的所有兄弟元素并且為p元素,只匹配后面的
元素
三、結構偽類選擇器
1、語法:E>F:first-child,E表示的是被匹配的元素,F表示被匹配的F:first-
child表示被匹配的E的子元素中第一個元素并且這個元素是F元素
2、語法:E>F:last-child,E表示的是被匹配的元素,F表示被匹配的F:last-
child表示被匹配的E的子元素中最后一個元素并且這個元素是F元素
3、語法:E>F:nth-child(n),E表示的是被匹配的元素,F表示被匹配的F:nth-
child(n)表示被匹配的E的子元素中最后一個元素并且這個元素是F元素
even表示匹配所有偶數行
odd表示匹配所有奇數行
4、語法:E>F:nth-of-type(n),E表示的是被匹配的元素,F表示被匹配的F:nth-
of-type(n)表示被匹配的E的子元素中所有的F元素,然后再去找第n個
E>F:nth-child(n)表示先匹配所有的兒子,再去找第幾個兒子是不是F元素,如果是
就能匹配,E>F:nth-of-type(n)先匹配所有F元素,再去找第幾個元素
四、屬性選擇器
1、E[attr],E表示匹配的E元素,attr表示屬性,匹配具有attr屬性的E元素
2、E[attr=val],匹配具有attr屬性,并且屬性值為val的E元素
3、E[attr^=val],匹配具有attr屬性,并且屬性值以val開頭的E元素
4、E[attr$=val],匹配具有attr屬性,并且屬性值以val結尾的E元素
5、E[attr*=val],匹配具有attr屬性,并且屬性值中包含val的E元素
六、CSS3美化網頁元素
前言:<span>這個標簽沒有任何實際意義,它只是為了突出顯示某個部分,它是一個行內元素,不能夠獨
占一行,并且該元素所占的區域是根據內容大小決定,不會因為改變寬度和高度改變它的大小
<div>這個標簽沒有任何實際意義,它只是為了將某些部分裝起來,它是一個塊元素,會獨占一行,
并且該元素所占的區域是根據它的寬度和高度決定,會因為改變寬度和高度改變它的大小
1.字體樣式:
1、font-family字體類型,字體類型的值有:“楷書”、“隸書”、“微軟雅黑”、英文字體
可以寫多個字體格式,使用“,”隔開,如果同時存在英文和中文字體,英文就顯示
英文字體,中文就顯示中文字體,并且英文字體要放在中文字體前面
2、font-size字體大小,就是改變字體大小,字體大小的單位使用px
3、font-style
字體風格,normal正常的(默認)、italic(傾斜的)、oblique(傾斜的)
4、font-weight字體粗細,bold(粗體)、bolder(更粗的)、lighter(細的)
font字體屬性,需要滿足字體屬性設置順序,風格=》粗細=》大小=》類型
2.文本樣式:
1、color
文本顏色
①使用英文單詞去表示顏色
②使用十六進制的方式表示,并且如果相鄰的兩兩數字相同,可以縮寫為一位
③使用三原色的方式去表示,語法:rgb(r,g,b),rgba(r,g,b,a)
r,g,b取值從0~255
a表示透明度,取值從0~1,0表示完全透明,1表示完全不透明
2、text-align
水平對齊方式,設置文本的水平對齊方式
屬性值:center居中,left居左,right居右
3、vertical-align垂直對齊方式,設置文本的水平對齊方式
屬性值:middle居中,top居上,bottom居下
4、text-indent設置文本首行縮進,屬性值一般使用em相對單位,em表示長度為文本字符
大小的長度
5、line-height設置文本行高,屬性值使用px為單位,還可以設置為倍數
6、text-decoration
文本裝飾
屬性值:①none表示沒有任何裝飾
②underline表示下劃線
③overline表示上劃線
④line-through表示刪除線
7、text-shadow文本陰影
語法:text-shadow : color x-offset y-offset blur-radius; color陰影顏色
x-offset表示X軸偏移量,正數往右偏移,負數往左偏移
y-offset表示Y軸偏移量,正數往下偏移,負數往上偏移 blur-radius表示模糊半徑
2.超鏈接偽類
1、a:link單擊訪問前的超鏈接樣式
2、a:visited單擊訪問后的超鏈接樣式
3、a:hover鼠標懸浮的超鏈接樣式
4、a:active鼠標單擊未釋放的超鏈接樣式
列表樣式
1、list-style-type表示設置列表的標記類型
常用類型:none表示沒有標記
disc表示實心圓點
square表示實心正方形
circle表示空心圓點
decimal表示數字
2、list-style-image使用圖像代替標記
3、list-style-position表示在哪個位置使用標記
4、list-style設置列表屬性,通常使用這個屬性
3.背景樣式
1、背景顏色background-color
①使用英文單詞去表示顏色
②使用十六進制的方式表示,并且如果相鄰的兩兩數字相同,可以縮寫為一位
③使用三原色的方式去表示,語法:rgb(r,g,b),rgba(r,g,b,a)
r,g,b取值從0~255
a表示透明度,取值從0~1,0表示完全透明,1表示完全不透明
有一個特殊值,transparent表示透明的意思,它是默認值
2、背景圖片background-image
url表示的圖片路徑
3、背景重復方式background-repeat
repeat表示沿水平方向和垂直方向進行重復
no-repeat表示不重復
repeat-x表示沿水平方向重復
repeat-y表示沿垂直方向重復
4、背景位移background-position:X軸方向偏移量 Y軸方向偏移量
①可以使用像素值來表示偏移量,比如:50px 50px;
②可以使用百分比來表示偏移量,比如:20% 50%;
③可以使用英文字母來表示偏移量,比如:center middle;
5、背景屬性設置所有的背景樣式
6、背景尺寸background-size
①auto表示背景圖片保持原樣,默認值
②percentage表示背景圖片大小根據容器大小的百分比決定大小,只寫一個值表示只
對一個值進行設置,另外一個值會根據圖片本身的比例等比例縮放
本身比例為4:3
400px 300px
800px 600px
1200px 900px
③直接使用像素值px來設置圖片大小,只設置一個值和百分比一樣
④cover放大充滿整個容器
⑤contain放大充滿整個容器,如果有一個方向充滿了整個容器,那么不在放大
4.漸變
1、線性漸變
:顏色沿著一條直線過渡
linear-gradient(漸變方向,顏色1,顏色2,顏色n)
不加前綴方向使用“to 方向”表示往哪個方向進行漸變,加上前綴之后使用“方向”
表示從哪個方向開始漸變
2、徑向漸變:從一個起點朝所有方向混合
-radial-gradient(漸變方向,顏色1,顏色2,顏色n)
5.瀏覽器前綴:(避免兼容問題)
IE瀏覽器前綴-ms-
Chrome瀏覽器前綴-webkit-
Safiri瀏覽器前綴-webkit-
Opera瀏覽器前綴-o-
Firefox瀏覽器前綴-moz-
七、盒子模型
1.盒子模型:就是一個虛擬的矩形容器
2.盒子模型的組成:
1、content(內容):表示主要內容
2、padding(內邊距):表示內容與邊框之間的距離
3、border(邊框):表示包著內容的外框,邊框是有一定寬度的
4、margin(外邊距):表示邊框外部與其他盒子的距離
3.邊框border
1、border-color邊框顏色
①使用英文字母來表示顏色
②使用十六進制來表示顏色
③使用三原色來表示顏色,rgb(),rgba()
所有的塊元素都是一個盒子模型
border-top-color上邊框,border-bottom-color下邊框
border-left-color左邊框,border-right-color右邊框
※※※※※※※
可以使用border-color去設置,可以取1~4個值任意一個
如果設置一個值表示對應所有的方向
如果設置兩個值,第一個值表示上邊框和它對應邊框的值,第二個值表示右邊框和它
對應的值
如果設置三個值,第一個值表示上邊框,第二個值表示右邊框和它對應的值,第三個
表示下邊框的值
如果設置四個值,第一個值表示上邊框,第二個值表示右邊框,第三個值表示下邊框,
第四個值表示左邊框,按照順時針的順序依次設置
2、border-width邊框的粗細
使用像素值去設置邊框的粗細,網頁一般使用這種方式
設置邊框顏色的方式一樣
3、border-style邊框的樣式
none表示沒有邊框
solid表示實線邊框
dashed表示虛線邊框
dotted表示點線邊框
設置邊框樣式的方式和置邊框顏色的方式一樣
border邊框屬性
可以設置邊框的所有屬性,不需要按照順序
border-left設置左邊框的屬性
border-right設置右邊框的屬性
border-bottom設置下邊框的屬性
border-top設置上邊框的屬性
外邊距margin
margin-top設置上外邊距的距離
margin-right設置右外邊距的距離
margin-bottom設置下外邊距的距離
margin-left設置左外邊距的距離
可以使用margin去設置,可以取1~4個值任意一個
和設置邊框顏色的方式一樣
使用margin設置盒子居中,語法:margin:0px auto;需要滿足兩個條件
①必須為塊元素
②必須設置盒子的寬度和高度
內邊距padding
padding-top設置上內邊距的距離
padding-right設置右內邊距的距離
padding-bottom設置下內邊距的距離
padding-left設置左內邊距的距離
可以使用padding去設置,可以取1~4個值任意一個
和設置邊框顏色的方式一樣
4.盒子模型的尺寸
盒子模型的尺存分為盒子模型的寬度和高度
盒子模型的外盒寬度=內容寬度+內邊距的左右寬度+邊框左右寬度+外邊距左右寬度
盒子模型的外盒高度=內容高度+內邊距的上下高度+邊框上下高度+外邊距上下高度
盒子模型的內盒寬度=內容寬度+內邊距的左右寬度+邊框左右度
盒子模型的內盒高度=內容高度+內邊距的上下高度+邊框上下度
5.拯救布局
使用box-sizing拯救布局,有3個值
1、content-box:默認值,表示設置的寬度和高度等于內容的寬度和高度,盒子的寬度和
高度通過計算獲得
2、border-box:表示設置的寬度和高度等于盒子的寬度和高度
3、inherit:繼承父元素的盒子模型模式
6.圓角邊框border-radius:為矩形邊框設置圓角效果
語法:border-radius:可以設置1~4個值;
設置一個值會對四個角進行設置
設置兩個值,第一個值設置左上角和它對角的值,第二值是設置右上角和它對角的值
設置三個值,第一個設置左上角,第二個設置右上角和它對角的值,第三個設置右下角的值
設置四個值,第一個設置左上角,第二個設置右上角,第三個設置右下角,第四個設置左下角
設置圓形
①必須盒子的寬度和高度相同
②圓角邊框的值必須將四個角的值都設置為寬度的一半或者50%
設置上半圓:寬度不變,高度變為一半,第一個值、第二值為一半,第三和第四個為0
設置下半圓:寬度不變,高度變為一半,第一個值、第二值為0,第三和第四個為一半
設置左半圓:寬度為一半,高度變不變,第一個值、第四值為一半,第二和第三個為0
設置左半圓:寬度為一半,高度變不變,第一個值、第四值為0,第二和第三個為一半
扇形:高度和寬度都為一半,需要哪一個方向的就添加哪個角的值,其他都為0
7.盒子陰影box-shadow
語法:box-shadow:inset x-offset y-offset blur-radius color;
第一個參數表示陰影的類型,不寫為外陰影,inset表示為內陰影
第二個參數表示陰影的水平偏移量,正數往右,負數往左
第三個參數表示陰影的垂直偏移量,正數往下,負數往上
第四個參數為模糊半徑,模糊范圍大小,越往外越模糊
第五個參數為陰影顏色
八、塊元素與行內(內聯)元素
1.塊元素與行內(內聯)元素的特性
1、塊元素:獨占一行,并且可以設置元素的寬高(div,h1-h6,p,列表)
2、行內元素:不是獨占一行,設置寬高對它不起作用,寬度由元素內容撐開。
2.display:顯示(元素以哪種形式進行顯示)
1、block:塊級元素的默認值,在元素前后會有換行
2、inline:行內元素的默認值,元素前后沒有換行
3、inline-block:行內塊元素,元素既有行內元素的特性(可以和其他元素顯示在同一行)又有塊級元素的特性(可以設置寬高)。
4、none:該元素不被顯示。
3.float:浮動:使得塊級元素排列在同一行
1、left:左浮動
2、right:右浮動
3、none:元素不浮動,按照標準文檔流顯示
4.clear:清除浮動
1、left:清除元素左邊的浮動
2、right:清除元素右邊的浮動
3、both:清除兩側
4、none:默認值,不清除浮動
5.解決父級邊框塌陷的方法
1、在浮動元素的后面加空div,并且給這個空div設置樣式:clear:both
2、給父級設置高度height
3、給父級添加屬性overflow:auto;
4、給父級添加偽類after
#father:after{
content:’’;
display:block;
clear:both
}
6.overflow:屬性用來處理溢出
1、visible:可見的,內容元素會被顯示出來,但是在父級邊框的外面
2、hidden:內容元素會被顯示在邊框里,但是超出的部分會被隱藏
3、scroll:內容元素會被隱藏,但是瀏覽器會提供滾動條,滾動以顯示超出的內容
4、auto:當內容元素超出父級的高度時就提供滾動條以顯示超出的內容,若內容未超出就不顯示滾動條。
九、定位與動畫
1.定位屬性:position
1、static:默認值,沒有定位
2、relative:相對定位,相對于元素原本的位置進行偏移,元素原來的位置會被保留,浮動元素設置相對定位后,是相對元素浮動以后的位置進行偏移。
3、absolute:絕對定位,相對于離元素最近的已經設置定位屬性的祖先元素為基準進行偏移,元素原來的位置不會被保留,如果沒有已經定位的祖先元素,則以瀏覽器窗口為基準進行偏移。
4、fixed:固定定位,以瀏覽器窗口為基準進行偏移。
5、定位的元素的層級會比未定位的元素的級別更高,相對定位通常用于給父元素設置定位屬性,但是不設置不偏移量,結合絕對定位使用,固定定位用于廣告欄,返回頂部的圖標,樓層導航等。
6、z-index:改變定位元素的堆疊順序,值為整數,值越大,級別越高,顯示在最上面。
2.動畫
1、變形
語法:transform:變形函數;
2、平移函數:translate(x,y);x代表水平方向的位移,y代表垂直方向的位移,單位為px;
3、縮放函數:scale(x,y);x代表元素寬度的縮放量,y代表高度的縮放量。
4、傾斜函數:skew(x,y);x代表元素水平方向的傾斜度數,y代表垂直方向的傾斜度數,單位是deg。
5、旋轉函數:rotate(x);x代表旋轉的度數,為正數時順時針旋轉,為負數時逆時針旋轉。
2、過渡transition:是一種動畫轉換過程,漸慢,漸快等。
語法:transition:過渡樣式的屬性 過渡花費的時間 過渡函數(過渡的速度) 過渡的延遲時間;
1)使用步驟
A、在元素默認樣式中聲明元素默認的樣式
B、聲明元素最終呈現的樣式,如懸浮(hover),獲取焦點(focus)時的樣式
C、在元素默認的樣式中添加過渡屬性。
3、過渡函數:
1、ease:默認值,由快到慢
2、linear:勻速
3、ease-in:越來越快
4、ease-out:越來越慢
5、ease-in-out:先越來越快再越來越慢
3.動畫animation
1、創建關鍵幀(瀏覽器兼容前綴是加在@與keyframes中間的)
語法:@keyframes 動畫名稱{
0%{元素樣式}
25%{元素樣式}
…
}
4.調用動畫
在元素樣式中調用
語法:animation:動畫名稱 動畫次數 動畫播放的方向 動畫播放狀態
1)、動畫播放次數:為整數,默認值為1,無限循環infinite
2)動畫發生的操作:forwards(向前) backwards(向后) both(既可以向前又可以向后)
3)動畫播放狀態:running(播放) paused(暫停)
4)動畫播放方向:normal(向前) alternate(偶數次向前)
*請認真填寫需求信息,我們會在24小時內與您取得聯系。