2 - CSS - CSS3
2 - CSS - CSS3
على كــل
;P{color:red ســيتم تطــبيق التنســيق pوهــو تغــير لــون وحجم الخــط
}font-size:20px
االوسمه من نوع < >pلكن سيتم استثناء خاصــية اللــون .لالوســمه
}one{color:blue
two{color: black}. ذات الكالس oneو two
بمعنى ان اخر قيمه تنسيقيه هى التى سيتم اعتمادها وتطبيقها وكذلك عند استخدام اكثر من ملف تنسيقي فمثال لو لدينا ملفي تنسيق وتم
ربطهم كالتالى فى وسم ال < >headلصفحة ال html
><link rel="StyleSheet" href="style.css"/ } // p{color:gray
><link rel="StyleSheet" href="main.css"/ } // p{color:brown
><style> p{color:green } </style
>Inline Style Ex: <p style="color:red">amir</p
هنا ستكون النتيجة ان لون amirهو اللون االحمر النه اخر قيمه تمت رؤيتها من المحرر
ترتيب التنسيق من االضعف الى االقوي كالتالى External Styleثم Internal Styleثم InLine Style
بدال من انشاء كالس للعنصر كالتالى < >"p class="oneوذلك الستخدامه فى التنسيق لملف ال cssفانه يمكن تعريفه او تمييزه بواسطه
ال idكالتالى < >"p id="oneولكن هنا عند تنسيق العنصر يكون كالتالى one{color:green} #
تنسيقات الـ Background
لو عاوز اختصر كود اللون مثال 0000ff#هناخد من كل حرفين متكررين حرف واحد فقط كالتالى 00f#
2
ملحوظة :لو عاوز تصميم الصفحة نفسه يكون عاليمين بنعمل للبدي الكود ده }body{direction:rtl
ملحوظة :لو عندى divوداخله spanفيمكن تنسيق ال spanكالتالى
}Div span {color:red
ملحوظة :لو عندى عدد span 2كالتالى:
><span class="one">amir</span
><span class="two">ahmed</span
وعاوز انسقهم هيكون كالتالى
}Span.old{color:red
}Span.two{color:green
الـ Font Properties
"Font-Family:arial,Tahoma,"pt bolding اسم الخط :حيث يجب مالحظة اختيار خطوط موجوده على كل االجهزه مثل arialو san-
serifولمعرفة الخطوط االمنه نبحث عن web safe fonts
لو اسم الخط اكثر من كلمه نضعه بين عالمتى تنصيص
Font-style:italic تنسيق الخط وله قيمتان normalو italic
Font-Size:16px حجم الخط:قد يكون على شكل قيمة مثل 16Px:وهى القيمة االفتراضيه
او ان يكون smalleاو ان يكون smallerاى اصغر من المحتوي االب له وكذلك large
Font-Weight:bold وزن الخط وله قيم كثيره تتدرج سماكتها مثل borderوهكذا وايضا يوجد تدرج من
الخفيف الى السميك من 100الى 900
}Ul{list-style-type:decimal للتحكم فى شكل العالمة التى تظهر بجانب عناصر القائمة ويوجد لها اشكال
كثيرة
}'List-style-image:url('a.png كما يوجد خاصية تبديل العالمة بصورة
خاصية الـ displayوهى الخاصة بكيفية ظهور العناصر حيث يوجد عناصر تظهر جانب بعضها مثل < >img > - <a>-<spanوبعض
العناصر تظهر كبلوكات لحالها فى السطر مثل < >p> - <div> - <h1فبهذة الخاصية نستطيع اظهار العناصر بجانب بعضها
4
وضع العنصر الـ positionوقيمها static – fixed – relative-absolute :وقيمة االفتراضية هى static
قيمة الـ fixedثجعله ثابت على مستوي الصفحة او التصميم حتى مع اال scrollingفهو يفيد فى عمل خلفيات ثابتة على مستوى الصفحة
;Top:100px
;Right:20%
;Bottom:200px
;Left:200px
لو انا عملت < >divوعملت خاصية ال posion:relativeبيفضل مكانة محجوز على الصفحة حتى لو انا حركتة بخاصيتى ال topوال
bottom
لو عملت < >divداخل ال < >divالسابق وعملت خاصية ا position:absoluteهيكون االول اب للثانى ولن يخرج عن محتواه بمعنى
انه بيدور على االب اللى فيه ال position:relativeعشان يكون ابن ليه وال يخرج عن محتواه
ال floatوهو الذى يجعل العنصر يعوم على الفورم وقيمة االفتراضية هى none
Float:none القيمة noneتجعله بقيمه العنصر االفتراضة
القيمة leftتجعل العناصر تظهر جنب بعضها
القيمة rightتجعل العناصر تظهر على الشمال
لو عندى عدد 3من < >divوعملت التنين منهم خاصية float:leftوالثالث عملتله خاصية الـ float:rightفسوف يظهر اول < 2
>divعلى الشمال والثالث على اليمين فى نفس السطر
ممكن اعمل مثال لعدد للمشاهدات مثال
><div class="views">this is the views number<span>35 view</span></div
}.views{float:left
}.views span{float:right
الخصيه clearوهى مرتبطه بالـ floatفمثال لو عاوزين نعمل 3من < >divونرين ان نصمم مثلهم ثالثه تانين
><h1>programming Langs</h1
><div class="left">c# lang</div
><div class="left">vb lang</div
><div class="left">F# lang</div
><div class="clearFloat"></div
><h1>databases</h1
><div class="left">oracle</div
><div class="left">sql</div
><div class="left">access</div
وفى وسم ال <>style
};.left{width:400;color=white;background:blue;Float:left
}.clearFloat{clear:Both
و bothتعنى الغاء الـ floatمن االتجاه اليمين والشمال
عمل groupingلسهوله عمل تنسيق للعناصر ومثال على ذلك
><div class="one">amir</div
<div class="two">ahmed</div
><div class="three">enas</div
وهم كلهم هياخدو نفس التنسيق مثل الخط و والهوامش وال floatوهيختلفو فى اللون
};.one,.two,.three{width:400px;padding:10px;margin:20px;Float:left
};.one{background:red
};.two{background:blue
};.three{background:yellow
ويمكن عمل لل two.خاصية ال float:rightحيث سيتم وضعه على اليمين
وكذلك يمكن عمل جمع عند تنسيق العناصر كالتالى
};H1,span,div{color:red
ملحوظة :لو عملت < >divوفيه عدد 2من الـ < >pوعملت لتنسيق الـ pان خاصية ال float:leftفسوف تعوم ال< p> 2على
الصفحة وتخرج عن حجم العنصر ويكون طول ال<= >divصفر ولعالج ذلك هنحكمهم جوه ال < >divبتنسيقة وجعله ال يسمح بخروج
عنصر من دالخله
};.dev1{overflow:hidden
خاصية الـ visibilityوالفرق بينها وبين خاصية الdisplay:nome
><div class="div1">this is div 1</div
><div Class="div2">this is div 2</div
وفى ال css
};Div { float:left;background:red;color:white;width:100px;padding:10px
}.div1 {visibility:heddin
هنا هيقوم باخفاء ال div1ولكن سيظل مكانة موجود على التصميم
}.div2 {display:none
هنا هقيوم بازالة العنصر من التصميم وبيشيل مكانه من على الworkflow
Z-Indexوهى قيمة تشير الى العناصر التى تظهر على الوش حيث القيمه االعلي تشير الى الطبقة اللى على الوش
وهو يتعامل مع العناصر اللى معمول لها manual positionsفمثال لو عندى div 3وحبيت انسقهم وهنعملهم خاصية
position :absoluteلكى نعطيهم حرية الحركة
}.div1,.div2,div3{position:absolute;width:100px;height:100px
};.div1{ z-index:1;backcolor:red;top:0px;left:0px
};.div2{ z-index:2;backcolor:blue;top:20px;left:20px
};.div3{z-index:3;backcolor:green;top40px;left:40px
هنا ال div1هو الطبقة السفلية و div2فوق ال div1و div3فوقهم جميعا النه صاحب القيمة االعلى
خاصية ال contentوهى تقوم باضافة محتوى الى صفحة الـ htmlولكن من ال cssفلو عندى divوعاوز اضيف فيه نص معين
};"Div:after{content:"hello
};"Div:before{content:"iam here from css
Mouse cursorويوجد له مجموعة اشكال يمكن االختيار من بينها
><a href="http:/www.google.com">google</a
><span>amir</span
وقى ال css
};Span{cursor:pointer
الـ outlineوهى نسخه طبق االصل من تنسيقات ال borderولكنه من الخارج فال ياخذ مساحه من العنصر وال ال box ariaاما ال
paddingوال borderتأخذ من مساحة العنصر
ممكن اعمل اشكال جمالية على شكل bordersو outline
ال outlineال يؤثر على حجم العنصر النه تأثير خارجى
>"<div class:"parent
This is parent div
><aside
this is child aside
6
ال translateوى خصية تعمل على تحريك العنصر وهو يضا تعتمد على ال xو yفال yتعنى تحريق العنصر فوق وتحت ام X
تعنى تحريك العنصر يمينا ويسارا
)Transform:translate(20px,10px
ويمكن عمل translateXفقط او translateYفقط
يعنى لو عملت two{flex-shrink:0;}.وهذا يعنى خلى العرض للعنصر زى ما انا محدده وذلك فى حالة ان الديف االب عرضه
بيصغر
الـ transitionتتحكم فى وقت االنتقال او وقت تنفيذ حركات ال 3dوالكود المختصر كالتالى
; Transition : property | duration | timing |delay
مثال :لوعندى ديف وعاوز ازود مساحته بشكل انيق
}; Div{width:200px;height:100px;background-color:red;transition:width .5s ease,background-color:2s ease
};Div:hover{width:300px; background-color:blue
اما الكود تفصيليا
; Transition-property : width , background الخواص اللى هعمل عليها تأثر االنتقال
; Transition-duration : .5s , 2s مدة التنفيذ
]Transition-timing-function : ease [Default يبدأ وينتهى تدريجيا
: ease-in يبدأ تدريجيا وينتهى فجأه
: ease-out يبدأ فجأه وينتهى تدريجيا
: ease-in-out يبدأ وينتهى تدريجيا
: ease-linear يبدأ فجأه وينتهى فجأه
; Transition-delay : . 5s مدة التأخير قبل التنفيذ
Column-countوهى خاصية لها providerوهى تقسم مثال المقال الكر من عمود
></divكالااااااااااااااااااام كتييييييييييييييييييييير><div
فلو عاوز الكالم الكتير ده يتقسم على اكتر من عمود
;Div{~webkit~column-count:3 عدد االعمدة
;~webkit~column-gap:100px المسافة او الفرق بين االعمدة
;~webkit~column-rule:4px solid #080 الفواصل بين االعمدة
;~webkit~column-width:100px عرض العمود الواحد
ولو عندى مع الكالم الكتير ده اللى فى الديف هنحط فيه h1وننسقه كالتالى
};Div h1{~webkit~column-span:all
هنا الـ h1هيبقى فوق كل االعمده وبدون هذا الكود سيصبح ال h1جزء من االعمده
Animationوفكرتها انى بعمل functionمثال movingوبعدين اطبقا على العنصر واعطيله من ضمن القيم اسم ال functionاللى هى
movingكالتالى
{ @keyframes moving
};0% {left:0 ; top: 0
};25%{left:200px;top:0
};50%{left:200px ;top:200px
};75%{left:0 ; top:200px
} };100%{left:0 ; top:0
};Div{width:100px;height:100px;position:absolute;animation:moving 3s 6 linear
والخصائص منفرده كالتالى
; Animation-name : moving اسم الـ functionاللى عملتها بال keyframes
; Animation-duration : 3s مدة االنيميشن
; Animation-iteration-count : 2 عدد مرات التكرار
; :infinite عملية االنيميشن متكررة باستمرار
;Animation-direction:reverse اتجاه االنيميشن
;:alternate هنا هيبدا من االول لالخر وبعدين من االخر لالول وهكذا
;Animation-delay:3s مدة التأخير
;Animation-fill-mode : normal []default
;: forwards هنا هيقف عند اخر kewframeانت عطيتهوله يعنى هيقف عند قيم ال %100
;: backwards هنا هيقف عند اول قيم ال keyframeيعنى هيقف على قيم ال %0
11