CSS Resume
CSS Resume
Table of Contents
ر
Mouse Cursor مؤش الماوس Lesson #26
Float And Clear Lesson #27
Mastering The CSS Calculation Lesson #28
ئ ن
F12 اوinspect خاط او ملف باسم مختلف يمكنك استخدام ال يف حالة استدعاء ملف
ن
هتالف انه يف خطأ موجود
ي وبعدها
3- inline style
ن
يف سطر الكود نفسهCSS اكواد تنسيق
<p style="color: purple;">This is paragraph</p>
ن
♥️تحفيية ️♥عبارات
ن
CSS يف الـidentifier أفضل طريقة لكتابة الـ
The best way to write the identifier in Css like that:
user-test {
property: value;
} قم بالضغط
2- RGB Function
RGB --------> Red, Green, Blue, Decimal
ن
األخرص – If we need to use Green Color اذا اردت اللون
url -------> It is used to select the location of the image - يستخدم الختيار مكان الصورة
3- Background -Repeat
Background-repeat -------> uses to repeat the image that you select
الت تم اختيارها
تستخدم لتكرار الصورة ي
It has default value = repeat تدع
ي لديها قيمة افياضه
وه القيمة االفياضية للخاصية ..و دي معناها ان الباك جراوند بتفضل ثابته مكانها
القيمة Scrollي
طول ما انت بتعمل scroll
ن
يعت الباك جراوند بتتحرك معاك طول ما انت بتعمل scroll
القيمة Fixedي
ن ن
الغرض من الخاصية دي تحريك الخلفية يف أي مكان يف الصفحة
الل ع الشمال مكون من
نعتي ان الصورة او شاشتك عبارة عن 3اعمده و 3صفوف باعتبار ان العمود ي
خلينا ر
ن ُ ن ن ُ
الل يف النص مكون من (فوق -يف النص -تحت) وكذلك العمود ي العمود وكذلك )تحت - صالن (فوق -يف
ن ن ُ ن
معت كدا ان عندي 9اتجاهات وهيتم توضيحهم ف الـ Screenالتالية:
اليمي مكون من (فوق -يف النص -تحت) ي
ن
ممكن نستخدم وحدات القياس زي ال pixelو النسبة المئوية يف تحريك الصورة
ن
الل مكتوبه يف األول دي معناها انك
الل فوق الـ screenالـ 100pxي
خل بالك بالنسبة للكود ي
ي
عل الشمال اما الـ 150pxفمعناها انك بتحرك من فوق
كدا بتحرك من ي
اع انك بتحرك بنسبه من فوق
ممكن كمان تحرك بالنسبة المئوية وبالـ cmو بكذا طريقة بس تر ي
ونسبه من الجوانب
ن
اف
تغط المحتوي الخاص بيك بالكامل بشكل احي ي
ي ممكن تستخدم الخاصية دي ف إنك
بتمل
ي ممكن تستخدم الخاصية دي عشان تعمل resizeللـ backgroundوتكون ممتدة معاك او stretch
المحتوي بالكامل وبتفضل باينه مش بيتقطع منها حاجة
ن
هنا برضو ممكن تتحكم يف حجم الصورة بالـ pxاو النسبة المئوية وهكذا
ن
كدا انا محدد ال paddingيتنفذ يف أي اتجاه تحديدا
ال paddingال يقبل قيمة Negativeاو سالبة
ن
يف حالة لو اديت الـ divالعنرص بتاعك Widthمحدد وليكن مثال 70%من محتوي الصفحة بتاعتك
ن
تخل الـ margin
ي الل عليك انك
الل فوق دي كل ي توسطنه كدا وتخليه يف النص زي الصورة ي وحبيت
ن
وف كل األحوال لو أصال محطتش القيمة autoانت بتشوف الـ Widthبتاعك قيمته قيمته autoي
ن
بمعت لو قد أي وبتبدأ تدي الـ marginبتاعك من الشمال نصف القيمة الباقية من قيمة الـ width
ي
الـ Widthمثال 70%اذا الـ margin-leftالمفروض تاخد %15عشان الـ margin-rightتاخد %15
ن
يمي %15 +شمال( = %100 بحيث يكون) %15 ) + (%70
By: Amr Elsayed
Border Lesson #09
ن
مهمي جدا المفروض تفهمهم قبل كتابة الكود الـ borderليه 3حاجات
-3نوع الـ border -2لون الـ border -1حجم الـ border
-1حجم الـ ـ -- borderالـ ـ ـ ـ propertyبتاعته border-width
-2ل ـ ـ ـ ــون الـ ـ ـ -- borderال ـ ـ ـ ـ propertyبــتاعتـ ــه border-color
-3ن ـ ـ ـ ـ ـ ــوع الـ ـ ـ -- borderال ـ ـ ـ propertyب ــتاعتـ ــه border-style
{ .div-one
;padding: 10px
;width: 70%
;margin: auto
;border-width: 10px
;border-color: red
;border-style:solid
}
خل بالك ان كل قيمة سواء كانت الحجم او اللون او النوع بيكون ليها اربــع قيم منسدلة من القيمة االم
ي
ن
تقدر تتحكم فيها زي ما هو موضح يف الصورة كدا
نف حركة معينة لو اتعملت الكود يبوظ منك وه انك تضيف قيم ن
تي زي 20pxجنب الـ 10px ي ي
;border: 10px 20px solid red
Outline Lesson#10
ن
الل ملهاش أهمية اوي ودا نظرا ألنه مش داخل يف تكوين العنرص
هو ممكن يتصنف من الخصائص ي
ن
األصل وال هو بقوة الـ borderمثال ولذلك مش هطول يف الكتابة وهيكون الـ Syntaxبتاعه بس
ي
الل موجودباختصار ي
;outline: 10px solid blue
Block
-بياخد الـ full-widthلو لم يتم تحديد width
تيح جنبه ن
هتيح تحته عشان يمنعها ر ي
ر ي الل
-بيعمل خط فاصل بينه وبي العنارص ي
ن
بمعت انه بينفذ أي أمر ليهم -بيحيم الـ - paddingو الـ - marginو الـ - Widthو الـ height
ي
Inline
ال يحيم الـ Widthو الـ Height -
يعت أي عنرص هيح جنب ن
ن ن
التان
ي ر ي الل تحته ..ي
ال يضيف خط فاصل بينه وبي العنرص ي -
ن
اليمي و الشمال فقط[ بيحيم الـ paddingو الـ ] marginمن -
بيسمح بوجود أي عنرص قبله وبعده -
Inline-Block
ن
بمعت انه بينفذ أي أمر ليهم -بيحيم الـ - paddingو الـ - marginو الـ - Widthو الـ height
ي
-بيسمح بوجود أي عنرص قبله وبعده
Syntax
تستخدم هذه الخاصية ع سبيل المثال لو مثال عندي معلومات كتي عايز اخفيها واديها اوامر
ن
تان تختف ن
يعت كأنك بالجافاسكريبت لما اليورز يدوس عليها تبدأ تعرض المعلومات الل جوها ولما يدوس ن
ي ي ي ي
تان زي برضو مثال السؤال وجاوب ن
بتفتح كدا المعلومات دي او تعملها توسعة تشوفها وبعدين تخفيها ي
يخف اإلجابة وهكذا معي يظهرلك إجابة السؤال تدوس عل نفس الزر ن
ن تدوس ع زر
ي ي
HTML CSS
ن
اختف تماما من الـ work flow الـ divبتاع Firstلما اديته القيمة display: none
ي
ولكن
ن ن ن
بيختف برضو ولكن بيحجز مكانه يف الـ work flowكأنك
ي يف حالة خاصية الـ visibilityالعنرص
ن
طيت العنرص بس هو لسه حاجز مكانه برضو يف الصفحة
CSS
️♥راقت يل️♥
ن ن
يف المثال دا خصوصا يف اخر جزء هتالحظ انه
تم تجميع ال Classesكلها جنب بعض
والفصل بينهم بعالمه " ",وبعدين
اديتهم كلهم نفس الخصائص
الل اشيكوا فيها سوا
ي
ن ن
الل انا عايزو من خالل االب بتاعه
ي p ال بحدد برضو class ال بنفس p من اكي ف
ي لو حالة ف
ي
HTML
<div>
<h2>Title</h2>
<p>Paragraph Inside Div</p>
<p class="special">Paragraph Inside Div With Class</p>
</div>
<p class="Special"> Paragraph Outside Div With Class</p>
With class
special
CSS
div .special {
color: red;
background-color: #eee;
}
ن ن
أكي عرض محطوط للكالم يعت اقل عرض محطوط للكالم و الـ max-widthي
يعت ر -الـ min-widthي
طيب دا معناه أي ؟
-معناه انه لو فرضنا ان الـ min-widthدا 300pxو فرضنا ان الـ max-widthدا 400pxطول ما الكالم
ً معي محطوط فيه ،ولكن لما يبدأ يزيد ن ن
ميدش اعتباطا كدا بتاعك اقل من او يساوي الـ 300pxهو ليه عرض
ن
معي ثابت بيبدأ ..ال يزيد لحد 400pxكأقص تقدير ولو الكالم زاد اكي العرض برضو يفضل ليه ليميت
ن ن
إضاف يبدأ يف سطر جديد بدون ماي بينته عند 400pxوال يزيد عنه واي كالم
ي من 300pxو ال يقل عنه و
يعدي ال 400px
ن
طيب يف حالة انك محددتش الـ max-width
هيح عند الـ 300pxوتكون أموره تمام و أول ما يبدأ يزيد
-دا معناه ان اقل عرض لو فرضنا انه 300pxر ي
ن
معي المحتوي ن يف الكالم هيبدأ العرض يتمدد معاه ويزيد اكي وكل دا عشان انت محددتش limit
او break pointيقف عنده العرض
ن ن ن
معي يقف والممي يف الـ max-heightانك بتعمل limitلطول عل الـ height
-نفس الكالم دا بالظبط ينطبق ي
الكالم عنده
ن ن
تخل العنرص blockزي ما هو، ي -يف خاصية عظيمة جدا يف الـ Widthاسمها fit-contentبتتيح ليك انك
بالملل ع الكالم المكتوب
ي ولكن ابعاده مظبوطة
ن
الحارص ه ر ن
مؤش لمستقبلك القريب ي الوقت ف
افعالك ي
ن
يف كمان قيمة اسمها scrollممكن احطها لخاصية الـ overflowالغرض منها انها تعمل scrollللـ content
ن
الل كنت محددهيف حالة لو كان زايد عن الطول او الـ heightي
ن ن
الل محدده
يف حالة لو الكالم ازيد من الـ heightي الل محدده
يف حالة لو الكالم اقل من الـ heightي
بيعمل scrolling بيلغ الـ scrollingن
ي
ن
الل يف الـ text-shadowكل ما الظل يتغي معاك ومدي وضوحه يتغي
-كل ما تزود النسب ي
ن
-الـ text-shadowالقيم بتاعته بتقبل ارقام سالبة عادي بتتحكم يف الظل يتحرك
ن
يمي او شمال او فوق او تحت وهكذا
ن ن
-تقدر تتحكم يف اللون نفسه وتتحكم يف الشفافية الخاصة بيه
االتجاه direction
ltr -----> Left to right rtl -----> Right to Left
ال توجد عالقة ن
بي الـ text-alignوالـ directionحيث ان الـ text-alignبتتعامل مع أي حاجه
ن ُ ن ن
يمي او يف النص او شمال الل بتحدده سواء كان
ما هو وتحطه يف االتجاه ي تخص النص بالكامل زي
ن ن ن
لليمي اليمي للشمال ام من الشمال اما الـ directionبيتحكم يف اتجاه الكالم نفسه هل هو من
ن
تحفيية️♥ ️♥عبارات
HTML CSS
الـ text- transformبيستخدم لـتغي شكل الحروف سواء جعل الحروف كلها capitalاو small
الل capital
او جعل اول حرف بس من كل كلمة هو ي
- Line Height --------> it's the spaces or height that there are between lines
or phrases in vertical mode
ن ن
أش أو العموديي رال الوضع ف
ه المسافات او االرتفاع الموجود بي االسطر او العبارات ي
ي
div {
background-color: #f999;
line-height: 1.7;
}
- word-break
ن
الل انت محدده علشان ميحصلش overflowودا يف حالة بيعمل قطع للكالم عند ال widthي
ن
عل بعضها ،ولكن طويلة يف الصورة
مثال لو بتتعامل مع لينك الن اللينك بيكون كلمة واحده ي
ه توضحيه شوية بس.. ه مش افضل مثال ع الخاصية دي ولكن ي تحت اخر حاجه ي
{ div
;background-color: #f999
;word-break: break-word
;line-height: 170%
;width: 300px
}
ن
تحفيية️♥ ️♥عبارات
HTML
<div>
welcome to elzero web school, hello
</div>
CSS
div {
padding: 10px;
width: 200px;
background-color: #aaa;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
ن
يف خاصية كمان ممكن اضيفها بحيث لما اقرب ع الجملة المقطوعة دي يظهرها بالكامل
div: hover {
overflow: visible;
}
ن
title اسمهattribute هو انك تستخدمhover ولكن يف حاجه افضل من كدا بديل عن ال
ن
HTML يف كود الـ
<div title="welcome to elzero web school, hello">
welcome to elzero web school, hello
</div>
CSS
{ div
;text-transform: capitalize
;text-align: center
;padding: 20px
;background-color: #eee
;font-size: 20px
;border: 2px solid blue
}
{ div p
;border: 2px solid
;border-color: inherit
}
ن
يف بعض الحاالت لو حبيت اعمل Borderللـ divكله واديته لون ازرق و borderللـ pواديته لون ازرق
ن
طيب يف حالة لو حبيت اغي لون الـ borderبتاع الـ divللون األحمر وكذلك الـ pحبيت اغي
بتاعت ومئات الـ h3
ي الـ borderبتاعه ل اللون األحمر وهفيض ان عندي مئات الـ pداخل التصميم
امس ع كل عنرص اغي الـ borderبتاعه عشان اخليه زي لون الـ divالهل منطف نان ر
ي ي ي
“ و مثال عTimes New Roman” زي خطserif الل فيها كسور او كمثال ع الخطوط ي
الل بتكتب بيه
او الخط يArial زي خطsans serif الل مفيهاش كسور او بتكون
الخطوط ي
Calibri(Body) الملخص دا
HTML
<div class="with-ser">Welcome To Elzero Web School, Hello
F</div>
<div class="san-ser">Welcome To Elzero Web School, Hello
F</div>
CSS
.with-ser {
font-family: 'Times New Roman', Times, serif;
}
.san-ser {
font-family: Arial, Helvetica, sans-serif;
}
.with-ser,
.san-ser {
background-color: #eee;
}
الل السهم أشار اليه هيفتح القائمة الجانبية هختار هختار الـ fontو احدد ُ
السمك بتاعه و هضغط ع المكان
ن ي ن
منها اللينك بتاع الخط دا واحطه يف HTMLو هنسخ الـ Familyالخاصة بالـ fontدا واحطها يف الـ CSS
HMTL
CSS
{div
;font-family:’Cairo’, sans-serif
;background-color: #eee
;padding: 10px
}
Typography - Font Size And CSS Units Lesson #24
CSS
HTML
ن
طبعا الـ pxمفهاش كالم كتي ،ولكن المعلومة المهمة ان حجم الخط االفي ي
اض لصفحة الويب
ديما بيكون ...... 16pxواألكيد كمان ال ـ 1emال تساوي اطالقا 16px
الل بيورثها العنرص من االب
ه ضعف المساحه ي الل بتشي لكلمة timeي الـ emي
*هديك مثال ن يف حالة انك اديت الـ Divالقيمة font-size: 20pxو روحت للـ span
ن
يعت لو الـ Div
اديته قيمة 2emهنا الـ spanدا حجمه هيكون ضعف حجم الـ divي
حجمه 20pxالـ spanهيكون حجمه 40px
CSS
{div
;background-color: #eee
;font-size: 20px
}
{ div span
;font-size: 2em
}
ن ن
يبف يف تغيي فعال ؟ وان الـ 2emالخاصة بالـ spanمتبقاش ضعف
ولكن يف سؤال مهم جدا امته ي
حجم الـ divي
الل هو األب ؟
لما قيمة الـ spanمتورثش خصائصها من الـ divاالب
طيب امته دا يحصل ؟!
لو انا اديت الـ Bodyنفسه font-sizeوليكن 40pxهنا الـ divهيورث الحجم دا من الـ body
وبعدها الـ Spanهيورث الحجم دا من الـ div
{ body
;font-size: 40px
}
{div
;background-color: #eee
}
{ div span
;font-size: 2em
}
الـ root timeهو نفس الـ emبالظبط لكن الفرق ان العنرص بيورث خصائصه من جدز الصفحة
ن ن ن
اض الل هو HTMLوطبعا زي ما احنا عارفي ان الـ HTMLدا بيدي حجم افي ي
اض او خط افي ي ي
لصفحة الويب 16px
ن
معت الكالم دا ان الـ font-sizeبتاع ال spanهيورث الحجم بتاعة من الـ Rootومدام
اذا ي
اض 16pxاذا الـ Spanهيكون حجمه 32px ن
الـ rootحجمه االفي ي
Percentage %
ن
يعت الـ Divحجمه 20px
ًمفهاش كالم كتي العنرص بيورث حجم الخط بتاعه من االب ي
يبف هيورث الـ 20pxبتوع الـ divلو خليناه 150%
اذا لو خلينا الـ 100% spanي
هيبف 30px
ي هيورث حجمه مرة ونص
VW ------> View Port Width
الـ vwبيشي يال حجم الصفحة كلها ..الـ 1vwبتساوي 1%من العرض بتاع الـ view port
بتاع 900اذا 1%منه يساوي 9 ن
معت كدا ان لو العرض
ي ي
ن
يعت 45px = 9*5
طيب لو قولتله ان العرض دا 5vwي
ودي حاجه مهمه جدا ن يف عالم الـ responsive
ن
تحفيية️♥ ️♥عبارات
HTML
<body>
<div>Welcome To Elzero Web School, <span>Hello</span></div>
</body>
CSS
div {
font-style: italic;
}
2- Font Variant
ن
ولكن اصغر من حجم الخط االفي يCapital الغرض منه تحويل الكالم لحروف
اض
HTML
<body>
<div>welcome to elzero web school, hello</div>
<p>welcome to elzero web school, hello</p>
</body>
CSS
div {
font-variant: small-caps;
}
p {
text-transform: uppercase;
}
ر
Mouse Cursor مؤش الماوس Lesson #26
ن الغرض من الخاصية دي تغي ر
يف طبعا أنواع كتي ممكن تبص عليهاMouse مؤش الفأرة او الـ
برحتك
HTML
<a href="#">Google</a>
<span>Test</span>
<button>Click</button>
CSS
button {
background: transparent;
color: red;
font-weight: bold;
border: none;
cursor: pointer;
}
ن
-المقصود او الهدف من ال floatان العنارص ي
الل انشأتها تكون عائمة يف الصفحة
-كل المطلوب انك تفهم الخاصية دي شغلها بيكون ازاي و مع الوقت هتفهم عنها اكي واكي وهتستبدلها
أصال بخصائص تانية فيها مرونة و احيافيه عن كدا
HTML CSS
يمكننا استخدما معادلة الـ Calcمع خاصية الـ widthبحيث انها تسهل عليا الحسبة
;) width: calc(95% / 4
ان مش عايز احسب المسافات بالنسبة المئوية ،ولكن عايز احسبها بالـ pxوعايزن
طيب هفيض ي
ً ن
ان عندي 5عنارص اذا هيكون عندي 6مسافات احط قبل وبعد كل عنرص 10pxوعندي 5عنارص وبما ي
الل فوق
هستخدم نفس المعادلة ي
*/
The full Content Width Is : 100%
6 spaces = 10px ===> 10px * 6 = 60px
100 - 60px available from Content Width
5 Elements ===> The Width is (100 - 60px) / 5
*/
{ div
;padding-top: 10px
;padding-bottom: 10px
;text-align: center
;background-color: #eee
;) width: calc((100% - 60px) / 5
;float: left
;margin-left: 10px
}
.two {
background-color: red;
}
ن
♥️تحفيية ️♥عبارات
HTML
<div class="one">One</div>
<div class="two">Two</div>
CSS
/*
Position
Static => Default
Relative
Absolute
Fixed
Sticky
*/
div {
color: white;
width: 100px;
padding: 10px;
}
.one {
background-color: red;
}
.two {
background-color: green;
}
Position: Static;
rest وتقدر تستخدمها ن يف انك تعملdefault الل بتكون
يstatic اولهم الـvalue اكي منposition لخاصية الـ
التانيةpositions ألنواع الـ
.one {
background-color: red;
position: static;
}
Position: Relative;
.one {
background-color: red;
position: relative;
right: 15px;
}
عل يمينه. ن ن عل نفسه .. ً
بمعت انك لو حبيت تحرك العنرص دا من اليمي هيتحرك من يي هنا العنرص بيتحرك بناءا ي
ن
لليمي بي انه يتحرك هو شخصيا بي ان العنرص يتحرك من عل يمينه و ن خل بالك :نف فرق ن
ي ي ي
معت كدا انه هيتحرك من تحتهنف حالة ال relativeالعنرص بيتحرك باالعتماد ع نفسه لو عايز تحركه لفوق ن
ي ي
ن ن ن ن ن ن
ان احركه هو شخصيا لتحت)": . إن أحرك العنرص من تحته وبي ي تان يف فرق بي يو ي
;Position: Absolute
الل تحته
الـ Absoluteمختلف تماما عن الـ relativeأوال العنرص بيكون خارج ال workflowوالعنرص ي
هيح مكانه فورا
ر ي
ن ن
ان لو عايز احركه 15pxلتحت هو فعليا هيبدا الل هو فيه .. ً -
بمعت ي
ي العنرص هنا بيتحرك بناءا ع االب ي
أعل الصفحة نفسها لتحت
يتحرك من ي
يبف الزم تستخدم القيمة topعشان تبدا
الل لو كنت عايز تحركه 15pxلتحت ي
عكس الـ relativeي -
تحركه لتحت ..ألنه بكد هيبدا يتحرك من موقعه ي
الل هو فيه من فوق لتحت
{ .one
;background-color: red
;position: absolute
;right: 0
;bottom: 0
}
HTML
<body>
<div class="two">Two</div>
<div class="parent">
<div class="one">One</div>
</div>
</body>
CSS
.one {
background-color: red;
position: absolute;
right: 0;
bottom: 0;
}
.parent {
width: 250px;
height: 150px;
background-color: blue;
position: relative;
}
ن ن
وبعدهاRelative بقيمةposition داخل اب جديد وحطيت لألب دا خاصية الone ان حطيت العنرص يف حالة ي
يتحرك داخل االب بتاعهone هنا بيبدأ العنرصAbsolute بقيمةposition خاصية الone حطيت للعنرص
ئ
مش هيتحرك يone العنرص:خل بالك
relative وتكون قيمتهposition نهان من غي م االب بتاعه ياخد ي
CSS
{ .one
;background-color: red
;position: fixed
;right: 0
;bottom: 0
}
الفرق بينه ن
وبي الـ fixedانه بيبدأ يتحرك اول ما بتوصله -
CSS
{ body
;height: 3000px
}
{ div
;background-color: red
;color: white
;padding: 10px
;position: sticky
;top: 15px
}
HTML CSS
ولكن ببساطه احنا بنستخدم الخاصية دي عشان نعدل ع الوضع الـ Defaultدا ونعيد ترتيب
العنارص دي بحيث ان اول عنرص بدل ما يكون اخر حاجه تحت كل العنارص ..ال يكون اول حاجه
ن ن
اكي قيمة يف z-index
ان احطله ربتظهر من خالل ي
مي اعل من ن
مي بغض النظر عن ن
التان بناءا ع الرقم ن يح فوق
ي ي بيخل كل عنرص ر ي
ي نظام الطبقات
ترتيب الـ HTML
ن
اعل قيمة هتحطها يف ال ـ Z-indexمعناها ان ي -
العنرص دا هيكون هو اول حاجه تظهر
ن
-اقل قيمة هتحطها يف ال ـ Z-indexمعناه ان العنرص
بمعت ادق العنرص ن دا هيكون اخر حاجه تظهر او
ي
هيكون ترتيبه األخي
-الـ Z-indexال تعمل اال لو العنرص األب واخد
خاصية الـ Position
ن
خل قيمته -1
لو انت عندك عنرص حابب تخلية اخر حاجه يف الصحفة او اخر حاجه تكون تحت تماما ي
ن
الل قبل
او االيقونات يbullets عشان اتحكم يف نوع وشكل الlist-style-type بيتم استخدام الخاصية
li عنرص الـ
CSS
ul {
list-style-type: square;
}
CSS
li {
background-color: #eee;
margin-bottom: 10px;
}
ul {
list-style-position:
inside;
}
ن
الل
ي bullets ال هل ف عشان اقدر اتحكم يlist-style-position: inside بستخدم الخاصية
تخش جنب العنرص وتاخد من نفس تنسيقاته وال تكون خارج التنسيقات ديli قبل ال
CSS
{ ul
;)(list-style-image: url
}
List-Style Short-Hand
ن
مت تلت قيم ( list-style-typeبعدها list-style-positionبعدها )list-style-image
الخاصية المخترصة بتقبل ي
CSS
{ ul
;list-style: none
;margin: 0
;padding: 0
}
ن
ان ممكن اعمل عنارص تحت بعض وخالص ؟!
طيب أي الحكمة من كدا مع ي
عشان اكيد هتحتاج تحط داخل ال LIدي لينكات
️♥راقت يل️♥
الل موجوده داخل td ـ لا كل استهدف مقطع تان ن -
ي ي
يعت كل خليه جوا الجدول هتاخد التنسيقاتن
الجدول ي
الل هحطها دي
ي
دا كالم جميل وعظيم مفيش أي مشكله ..طيب لو حابب انسق الجزء الخاص بالـ theadي
الل بيحتوي
ع الـ Nameو الـ Ageو الـ Email
ن
كالتال
ي CSS ـ ل ا ف
اذا هستهدفه ي
CSS رشح كود الـ CSS
-خد بالك من الـ nestingانا هنا استهدفت الخاليا
ن
هالل موجوده يف الـ theadفقط عشان انسقها ي ي
بعيدا عن أي خاليا تانية داخل الجدول
Hover االول
ي الحالة
HTML
<body>
<div class="one">Normal Element</div>
<hr />
<div class="two"></div>
<hr />
<a href="#">Link1</a>
<a href="#">Link2</a>
<hr />
<form action="">
<div>
<input type="text" />
</div>
<div>
<input type="checkbox" />
<label for="">Testing Check</label>
</div>
</form>
</body>
اخل ن
ان لنفيض ن
ي بحيث يa الل اسمه
العنرص ي
ن
بتاع او
ي المزيفة دي مع اللينكClasses ان حابب استخدم ال ي
تان ودي بتكون من خالل ن
ولكن لما اقرب منه او اقف بس عليه بالماوس لونه يتغي للون ي،شكله اخرص
“hover” استخدام حاجه اسمها
CSS
a {
color: green;
text-decoration: none;
}
a:hover {
color: blue;
}
a:hover {
color: green;
}
a:visited {
color: blue;
}
Hovered
Visited
empty الحالة الرابعة
ن ن
واديله تنسيقات معينةHTML فاض يف
ي ببساطه شديدة ببحث ع أي عنرص
HTML
<div class="one">Normal Element</div>
<hr />
<div class="two"></div> فاضي
CSS
.two {
background-color: #aaa;
width: 100px;
height: 100px;
}
Div: empty {
border: 10px solid rgb(1, 46, 77);
}
-3هبدأ التعديل عليه بصورة طبيعية جدا ،ولكن من خالل الـ developer tool
ن
تحفيية️♥ ️♥عبارات
<div class="two">
Lorem ipsum dolor sit amet consectetur adipisicing elit. Nemo beatae
veniam exercitationem ullam voluptate quis quasi molestias reiciendis.
</div>
<hr/>
<p class="three">
Lorem ipsum dolor, sit amet consectetur adipisicing elit. Optio quisquam
numquam dignissimos laborum modi sapiente libero
</p>
CSS
.one::first-letter {
display: inline-block;
background-color: red;
font-weight: bold;
font-size: 60px;
color: white;
}
ن
معي دي بتكون الحالة الـ defaultلما تحدد كالم من سطر
CSS
{ .three::selection
;background-color: black
;color: yellow
}
CSS
.parent {
margin-bottom: 20px;
margin-top: 50px ;
overflow: hidden;
}
.user {
background-color: #eee;
width: 50px;
margin-right: 20px;
padding: 10px;
height: 55.5px;
float: left;
font-size: 50px;
text-align: center;
}
.one {
background-color: #eee;
padding: 10px;
width: 600px;
float: left;
position: relative;
}
Content مش هتشتغل اطالقا إال ن يف وجود القيمةBefore & After خاصية الـ:الحظ ان
CSS المشار ليها بسهم فوق ن يف كود الـ
️♥راقت يل️♥
ُ
الل اسمها Counter-Incrementواديها قيمة ..أي قيمة او م ي
سم بتاعت ي
ي بضيف الخاصية
وبعد كدا بروح للـ Beforeاو الـ Afterو داخل الخاصية Contentبختار قيمة اسمها
الل اديته للخاصية Counter-increment Counterواحط جواها االسم ي
HTML
CSS
HTML CSS
Versions OF Browsers
1- Chrome
3- Firefox
4- IE – Edge
5- Opera
HTML CSS
ن
يف حالة ان ال border-Radiusبيساوي نصف الـ Widthو الـ heightبيتحول الشكل لديرة
CSS
ن
ببساطة شديدة يمكن استخدام خاصية الـ Box-shadowيف عمل ظالل ,,الخاصية دي بتقبل اكي
من قيمة زي
الـ Spreadودي معناها مدي انتشار الـ Shadow؛ وطبعا الـ Colorهو لون الظل ؛ و Insetأو
ن
تعت ان الظل هيكون جوا الـ Boxوال خارج الـ Box
ه ي Outsetي
HTML CSS
Shadow outset
Shadow inset
ن
تحفيية️♥ ️♥عبارات
HTML CSS
.1نف حالة لو زودت ال ـ marginبتاع العنارص هيحصل انه الـعنرصين مش هيبقوا جنب بعض واحد ن ن
هييل
ر ا ي
ن ن
وبالتال مع كل زياده للـ marginالزم ازود ال ـ widthلالب بحيث انه ي
يبف يف مكان ي التان مباشة
ي تحت
يتسع للعنرصين جنب بعض
.2نف حالة لو زدت ال ـ Paddingبرضو هيحصل ان العنرصين مش هيجوا جنب بعض و واحد ن ن
هييل
ر ا ي
ن ن
التان مباشة .....كذلك يف الـ border
ي تحت
ن
الل هو ليه 300px widthوموجود يف أب .3الزيادة دي حصلت عشان الـ paddingللعنرص Oneزاد ي
بالتال زيادة ال paddingألي عنرص هيخليهم يعدو الـ widthبتاع األب
ي ليه 600px Width
.6مع إضافة خاصية ال ـ Box-Sizingبالقيمة border-boxهيتم احتواء الـ 30pxبتوع الـ padding
للعنرص دون وجود أي مشكلة
1- Transition-duration
ن
ومعت القيمة 1s االنتقال ه تنفيذ اثناء العنرص هيستغرقها الل دة الخاصية دي مسؤولة عن ُ
الم
ي ي
انه هسيتغرق 1ثانيه اثناء التنفيذ
2- Transition-delay
ن
بمعت ان الـ 1s الل هيستغرقها العنرص عشان يبدأ ينفذ االنتقال ..
ي الخاصية دي مسؤوله عن المدة ي
دي معناها انه هياخد 1ثانيه عشان يبدا ينفذ االنتقال نفسه و هياخد 1sعشان يبدأ ينفذ الرجوع
ن
تان
الطبيغ ي
ي لوضعه
3- Transition-property:
Ease ئ
بط ينته بط بعدين يرسع بعدين ئ ال انه االنتقال يبدا
ي بتشي ي
ن ن
Linear خط نفس الرسعة ثابته سواء يف األول او يف االخري بشكل
Ease-out طبيغ والنهاية بتكون بطيئة
ي يبدا بشكل
Ease-in طبيغ ئ
بط وبعدين يكمل بشكل يبدأ
ي
Ease-in-out ئ
بط وينته
ي ئ
بط يبدا
ئ
بط دون وجود أي شعة اثناء تطبيق تأثي االنتقال نته ئ
بط و بي ي ئ
بط وبيكمل لكن الـ Ease-in-outبيبدأ
inline style أوinternal Style ودا يكونhtml ن يف بعض األحوال بيكون ن يف تنسيق داخل ملف الـ
ن
الل بيكون اقوي حاجه يف التنسيقات جميعا
ي
!important هو انك تكتب جنب التنسيق بتاعتك كلمه.. عل التنسيق دا
يoverride الحل عشان ت ـ ـ ـ
CSS External Style ن يف ملف الـ
HTML
(inline-style)
HTML
(internal-style)
CSS
(External-style)
CSS HTML
Margin-Collapse
ر ا
مباشة وعملت margin-bottomأو اذا الغرض من الدرس دا هو ان لو فيه عنرصين تحت بعض
ن ن ن
margin-topلحد فيهم الـ marginدا بيحصله Collapseاو بيحصل اتحاد بي االتني فبيكون ي
يعت
وكانه اتعمل للعنرصين سوا
االن :
الحظ ي
ن )1الـ collapseمش بيحصل ن
بي العنارص غي يف الوضع العمودي
ن )2لو نف عنرص اديته marginاكي من ن
اكي هو ي
الل الل خد marginر
التان أي واحد فيهم يف الحالة دي الـعنرص ي
ي ر ي
هيطبق
Bigger
Margin-Collapse
Bigger Wins
فاصل – Separator
ن
بمعت لو دخلت ال ـ down divداخل عنرص أب )4الـ Nestingال يمنع الـ margin-collapseمن حدوثه ..
ي
الل فوقه برضو ن
دا مش هيمنع حصول ال collapsingبينه وبي العنرص ي
HTML CSS
ن ن
المنطف اروح لكل عنرص اغي لونه ؟!
ي يف حالة لو حبيت اغي كل األحمر ي
الل يف العنارص هل من
يح دور الـ ـ Variables
هنا ر ي
Local Variables
بيتم استخدام الـ variablesداخل الـ Scopeالخاص بالعنرص نفسه دون اللجوء يال الـ :root
يمس عليهابمعت ادق العنرص بيخصص لنفسه هو متغيات ر ن
ي ي
- Parent
Flex الل بياخد خاصية ال ـ
الل جواه عشان العنرص االب دا هو ي
الزم يكون فيه عنرص أب ماسك العنارص ي
HTML CSS
كلها عاديflex وتستمتع بخواص الـdisplay: flex نفسه تاخدparent الل جوا الـ
ممكن العنارص ي
الل ن
الخاصية دي مسؤولة عن تغي اتجاه العنارص من الشمال لليمي دون تغي اتجاه الصفحة بالكامل ي
كنت بحتاج اعمله من خالل خاصية direction: rtl
ن
لليمي ،ولكن لو بصيت ع العنارص األصل من الشمال هتالف ان اتجاه الصفحة لو الحظت كلمة Flex Box
ي ي
ن ن
اليمي للشمال ودا الغرض من Row – Reverse الل يف الـ boxهتالحظ ان اتجاها من خالل الـ oneمن
ي
الخاصية دي مسؤولة عن تغي شكل العنارص ف الصفحة بحيث تكون بشكل عمودي تحت بعض
ن
يبف
والل كان فوق ي
ي يبف فوق وه يف الوضع العمودي بحيث ي
الل كان تحت ي خاصية مسؤولة عن عكس العنارص ي
تحت
ن كدا هو نفذ المطلوب ان أي عنرص زياده عل مساحة الـ containerيتعمله wrapن ن
وييل تحت يف صف جديد ي
ن
الخاصيتي Flex-Directionو Flex-Wrapمن خالل خاصية الـ ـ Flex-Flow يمكن الدمج ن
بي
- Parent
HTML CSS
ن
ه بتتحكم يف توزيـ ــع او ترتيب العنارص ،ولكن بشكل الل ي -3دا عكس خاصية الـ justify-contentي
ُ ن ن افف او ن
ليمي او للشمال او للنص بمعت انها مسؤوله عن توزيـ ــع العنارص ل
ي .. عرض
ي ي
ئ
تلقان كلما زاد ال ـ Height
ي ال ـ ـ ـ ـ Default Valueبتشي ي
ال ان العنارص بتتمدد بشكل
ه توزيـ ــع العنارص بشكل عمودي بحيث تكون ن يف أخر الـ Container
الغرض من الخاصية دي ي
HTML CSS
توسيط العنرص
بشكل ن
عرض
ي
بشكل عمودي
اسياحة ر
نرسب الشاي
ن
الغرض من الخاصية دي بشكل عام هو التحكم يف الـ ـ ـ Contentكله بالكامل وبشكل عمودي
- Child
ه انه لما يكون عندك 6عنارص مثال وارد وانت بتقلل الـ widthبتاع
الغرض من "خاصية النمو" دي ي
وباف العنارص بتنكمش هو يفضل ينموحت ي تبف عايز عنرص من ال 6عنارص دول يفضل ينمو ي
ي العنارص دي
HTML
HTML
ن
بالتال قدرت اتحكم يف ترتيب وجودهم
ي عل سبيل المثال انا اديت العنرص 1و 2خاصية الـ order
هنا ي
ن
بي العنارص
Flex Box Child - Flex Basis_ Flex Shorthand Lesson #51
- Child
ن
ه انها تحل محل الـ widthيف حالة لو كان الـ ـ directionمعمول -الغرض من الخاصية دي ي
ن
بمعت التحكم
ي Rowوتحل محل الـ heightكمان ن يف حالة لو ال ـ directionمعمول .. Column
الل ممكن عل خاصية ال flex-directionي بالخاصية دي بيختلف من العرض او الطول اعتمادا ي
تحددها rowاو column
-بيتم فيها استخدم الـ CSS unitsعادي زي ال ـ widthو الـ height
ن
يعت ع سبيل المثال العنرص رقم 2واخد الخاصية flex-basisو كمان الـ Direction
ي
بالتال هو كدا اتعامل مع الـ height
ي بتاع الـ Containerمعمول column
;Flex-basis: 200px
ن
يتم استخدام الـ Shorthandبحيث يمكن كتابة جميع الخواص يف سطر كود واحد
اخر حاجه
ُ ن
الل ديما بيكون واخد ال ـfull-width
ي Container ـ ل ا جنب عنرص طاح عايز لو حالة ف
ي
هستخدم الـ inline-flex
ن ن
ان اعمل صندوق مرن عادي جدا بس يكون inlineيف نفس الغرض من الخاصية دي ي
الوقت بحيث انه يقدر ياخد عنارص تانية جنبه
ن
HTML يف ملف الـinline-style تم استخدام الخاصية ك
shorthand
CSS
تدرج األلوان
Direction || Angle -----> اتجاه تدرج األلوان
Direction (to Top OR to Right OR to bottom OR to left)
Angle (0deg OR 90deg OR 180deg OR 270deg) OR (num of deg)
زي الصورة ما هتوضح كداCSS Units بعد كدا األلوان تقدر تتحكم فيها بنسب مئوية او أي
ن ن
الل قبله ويتحدد هيقف لحد الزم تحدد اللون هيبدأ مني لحد في واللون ي
الل بعده يستلم من اللون ي
ن ن
في وهكذا كما هو موضح يف الـ codeالقادم
HTML
CSS
HTML CSS
طبعا زي الـ Flexلو حبيت تجيب عنرص جنب توزيعة الـ gridهستخدم
ن تعالوا ر
نرسح بقا كل حاجه يف الـ Commentدا
ن
ه خاصية مسؤولة عن انشاء وتكوين األعمدة والتحكم يف عددها
ي
Px - % - auto
ن
معت الكود كدا دا انه هيتم انشاء 3أعمدة
ي
-العمود األول 200px
-العمود ن
التان 25%من مساحة الـ Container
ي
ن
بمعت انه هياخد المساحة الباقية بعد توزيـ ــع الـ 200pxو الـ 25% -العمود التالت هيكون auto
ي
ن
ه 600px
ي parent ـ لا او األب مساحة ان جاي والل
ي فات الل
ي المثال ف
خل بالك ي
ي
الغرض من الـ )( repeatانه بدل ما اكرر كتابة األعمدة 5مرات ال انا ممكن استخدم repeatوجواها
ُ
الل هيخدها كل عمود عدد األعمدة و المساحة ي
ن
معت الكود دا انه هيتم انشاء 3اعمده
ي
-العمود األول 200px
-العمود ن
التان 100px
ي
ن
تان عمود خدوا 300px
باف المساحة 1frوبما ان االب 600pxو أول و ي
-العمود التالت هياخد ي
الل هو 300pxهيوح ألخر عمودالباف ي
ي اذا
ن ن
عل العنارص
ي الباقية المساحة ـعـ ـ يتوز ف
ي Auto ـ ال من االستخدام ودا معناه ان الـ frافضل ي
ف
ن
معت الكود دا انه مكون من 7أعمدة
ي
-العمود األول 100px
-العمود ن
التان و التالت و الرابع كل واحد فيهم 50px
ي
-العمود الخامس هيكون 25%من الـ container
الل بداخله -العمود السادس هيكون autoوهيكون خجول بياخد بس مساحة ي
عل قد الـ contentي
-العمود السابع هيكون 1frوهيكون طماع بياخد ي
باف المساحة
- Parent
ن
ه خاصية مسؤولة عن انشاء وتكوين الصفوف والتحكم يف عددها و طولها
-ي
ن
معت الكود دا انه هيتم انشاء 3صفوف
ي
-الصف األول هيكون طوله 100px
التان هيكون طوله 100px -الصف ن
ي
-الصف التالت هيكون 200px
اذا مجموع طول الصفوف .. 400pxوبما ان ال ـ Heightانا كنت محدده ن يف أول درس بـ 500px
اذا المفروض هيكون فيه مساحة فاضية تحت اخر صف
مساحة فارغة
shorthand
HTML CSS
من خالل الضغط هنا هيتم تحويلك لصفحة فيها توضيح وتفاصيل اكي الستخدام الخاصية دي
فاض ن
بي عنرصين بتحط نقطه هتالحظ نف رشح الدرس دا انك لو عايز عمود فاصل او ن
ي ي
ن
بدل اسم الـ areaيف خاصية الـ grid-template-areas
- Child
الل اتحدد وخد القيمة دي هياخد مكان 4عنارص من ضمنهم مكانه بحيث انه هيبدا
دا معناه ان العنرص ي
ن
وينته عند العمود الرابع يف االعمدة
ي من العمود األول
الل هيقف عندها العنرص بدون ما يتم احتسابه من ضمن االعمدةو ال 5دي تشي للـ break pointي
ممكن تستخدم الـ spanو هتعمل برضو نفس النتيجة ان العنرص دا هياخد 4أعمدة
ن
صفي ممكن تستخدم الـ spanو هتعمل برضو نفس النتيجة ان العنرص دا هياخد
1
2
ل️♥
ي ️♥راقت
الحمد هلل دائما وابدا ..الحمد هلل بال سبب ،الحمد هلل بال طلب ،الحمد هلل بال
ن ن عدد ،الحمد هلل حت ن
العالمي يف كل األحول ..الحمد هلل يرض ..الحمد هلل رب
عت ر
الرس الذي قدر ل الخي و منع ن
ي ي
- Child
ا
ه خاصية مجمعة او نقدر نقول انها Shorthandلكًل من :
ببساطة شديدة الـ grid-areaي
Grid-row-start -- grid-column-start -- grid-row-end -- grid-column-end
ن ن
ه التحكم يف العنرص الـ childبحيث اتحكم يف مكان وجده
الغرض من الخاصية دي ي
عل اليتيب
ينته ي
ي ينته وعند أي عمود
ي من أي صف يبدأ ومن أي عمود يبدأ ثم عند أي صف
ممكن استخدم الخاصية دي حيث انها ممكن تعوضك عن استخدام الـ grid-template-columns
HTML
CSS
CSS
ن
صفي و خمس أعمد وبعد كدا تم معت كود الـ CSSانه تم انشاءن
ي
الل خصصتها عل األعمدة دي باسم الـ areaي
توزيـ ــع العنارص ي
لكل عنرص
الكود دا معناه انه هيتم انشاء 3أعمدة ..العمود األول عرضه يبدأ من 200pxو ال يقل عن المساحة
ً
نهائيا .. اقص عرض يوصل ليه لو فيه مساحه هو 400pxوال يزيد عن المساحة دي ً
نهائيا و دي
ي
وبالفعل عشان فيه مساحة العمود األول اخد 400pxو العمودين ن
التان و التالت خدو أي مساحةي
باقيه
العمودين ن
العمود األول التان و التالت
ي
لنفيض ن يان عندي مساحة الشاشة 1400pxوعايز كل ما المساحة دي تزيد يتم انشاء عمود جديد
عرضه يكون 200px
ن
بمعت ان لو مساحة الشاشة زادت لـ 1550pxمش هيتم انشاء عمود جديد الن من الـ 1400pxللـ 1550px
ي
الل تخليه ينشأ عمود جديد ...
مكملش المساحة ي
ن
تعتي مشكله فـ الـ Responsive
طيب هعمل أيه يف المساحة الفاضية دي ما دي كدا ر
هتالحظ انه بالرغم من ان مساحة الشاشة بقت 1550pxاال ان العنارص كلها مغطيه مساحة الشاشة
تلقان للعنارص نف أي مساحة موجودة نف الشاشة ر
برسط ان كل عنرص ئ ودا عشان انا قولتله ان يتم ئ
مل
ي ي ي
ن
مساحته تبدأ من 200pxومع أي زياده يف مساحة الشاشة زود عرض العنارص دي
تعتي وحدة من وحدات محتاج عشان تزود معلوماتك تقرأ عن الـ .. Auto-fitو تقرأ عن الـ chي
الل ر
قياس الـ CSS
ن ن
ثق يف هللا ثم يف قدراتك و نفسك
ن
ال زياده الغرض من القيمة scaleيف خاصية الـ transformي
ه مضاعفة حجم العنرص دون الحاجه ي
الـ widthو الـ height
الطبيغ ن
مرتي عن حجمه هييد طولة مرة ونص عن حجمه الطبيغ و ن
هييد عرضه بمعت ان العنرص ن
ن
ي ي ي
جرب بنفسك
ن
بمعت انه العنرص يحصله نص لفة 0.5turn
ي
Before Hover
After Hover
2D Transform – Translate Lesson #67
ن
قيمتي سواء موجوب او سالب الهدف منها تحريك العنرص الخاصية دي بتاخد
ن
اليمي او قيمة سالبه لتحريك العنرص -سواء استخدمت قيمة موجبه لتحريك العنرص ناحية
ناحية الشمال ن يف البعد X
-أو استخدمت قيمة موجبة لتحريك العنرص لألسفل او قيمة سالبة لتحريك العنرص لألعل
ن يف البعد Y
ن
لتحريك العنرص يف منتصف الصفحة
أكي
سبحان هللا و الحمد هلل و ال الـه اال هللا و هللا ر
سبحان هللا وبحمده عدد خلقه ورضا نفسه وزنة عرشة و مداد كلماته
الح القيوم واتوب إليه
استغفروا هللا العظيم الذي ال اله اال هو ي
HTML CSS
Matrix
transform: matrix(1.2, 0.2679, 0, 1.2, 20,
;)20
Transform
;)transform: translateX(20px) translateY(20px) scaleX(1.2) skewY(15deg) skewX(0deg) scaleY(1.2
*/
transform-origin
Syntax
Default Values => 50% 50% 0
2D Transform => transform-origin )(X, Y
3D Transform => transform-origin )(X, Y, Z
X-Axis
]- CSS Units [px, em, rem
- % percentage
- Keyword
Left = 0%
Center = 50%
Right = 100%
Y-Axis
]- CSS Units [px, em, rem
- % percentage
- Keyword
Top = 0%
Center = 50%
Bottom = 100%
*/
طيب ن
معت الكالم دا أي؟!
ي
ن ن
اساسي X, Yانا بحط لكل محور فيهم قيمة معينه عشان ابدأ اتحكم يف معناه انه عندي محورين
بتاع
ي حركه العنرص
ن
المعية عن
ر ه
ي 100% القيمة و left االتجاه عن ةالمعي
ر ه ي 0 القيمة X بالمحور الخاص الجزء في
المعية عن الـ Centerدا بالنسبة للمحور X
ر االتجاه Rightوالقيمة 50%ي
ه
ن
المعية
ر ه
ي 100% القيمة و Top االتجاه عن ةالمعي
ر ه
ي 0 فالقيمة Y للمحور الخاص الجزء ف
اما ي
المعية عن الـ Center
ر عن االتجاه Bottomوالقيمة 50%ي
ه
HTML
<div class="test">
<span class="origin"></span>
<div
class="trans">Transform</div>
</div>
CSS
.test {
background-color: #ddd;
width: 200px;
height: 200px;
margin: 200px auto;
position: relative;
}
.test div {
color: white;
background-color: rgb(255 0 0 /
39%);
width: 95%;
height: 95%;
display: flex;
justify-content: center;
align-items: center;
font-weight: bold;
font-size: 30px;
position: absolute;
top: 5px;
left: 5px;
}
.test .origin {
position: absolute;
width: 10px;
height: 10px;
background-color: red;
border-radius: 50%;
left: 50%;
top: 50%;
z-index: 2;
}
Syntax
بيتم استخدام القيمة rotate3dو القيم 1تشي يال X-axis , Y-axis, Z-axis
عل اليتيب
ي
ن ن
عت شغال و 0ي
يعت مش شغال القيمة دي بتكون ( 0أو )1و بـلغة الـ 1 CSي ي
ن يف القيمة translateاستخدمت الـ Z-axisعشان اقدر اتحكم ن يف العنرص ن يف البعد التالت الـ 3d
وممكن استخدم الـ translate3dو اجمع فيها الـ X-axis, Y-axis, Z-axisي
عل اليتيب
Perspective-origin
ن ن
شأنها شأن الـ transform-originيف كل حاجة؛ كذلك الزم تكون موجودة يف العنرص األب ي
الل ماسك
الل عايز اطبق عليه الـ 3dو الغرض منها هو توجيه العنرص للمكان ي
الل هبدأ اشوفه منه العنرص ي
الل زي ما قولنا ان الغرض منها هو تحديد
ي مش هتشتغل اال ن يف وجود خاصية الـ Perspective -
بيت ن
وبي العنرص ن
الل هتكون ي
المسافة ي
1- backface-visibility
2- transform-style
3- Perspective
-وعشان يكون فيه 3dن يف الموضوع الزم استخدم خاصية الـ Perspective
By: Amr Elsayed
ن ن ر
واف للـ transformولكن مع التطبيقات
ي و كاف
بعتذر و بشدة عن عدم وجود شح ي
العملية مع بشمهندس أسامة الزيرو هتقدر تستوعب كل حاجه فيها
كمان بالتطبيق مع نفسك هتقدر تستوعها بشكل كبي جدا
ن
تحفيية️♥ ️♥عبارات
1- Keyframes
ه الخاصية المتحكمة ن يف حركة وظهور الـ animation
الـ Keyframesي
ن ن
بطريقتي +بحط جنبها (اسم للـ animationزي (change-colorالل ف األمثلة
ي ي ممكن اكتبها
ن
تحفيية️♥ ️♥عبارات
HTML CSS
2- Animation-timing-function
أساش عن تحديد نوع اللفة
ي خاصية الـ Animation-timing-functionالخاصية دي مسؤولة بشكل
الل كانت موجوده ن يف الـ Transition ئ
وتنته بط زي الخواص ي
ي بط وتكمل برسعة
هل تبدا ي
Easeو ease-inو linearوهكذا
الجزء الخاص بالـ keyframesبيكون جنبه ديما اسم الـ Animationو بعد كدا انا حددت البداية و
النهاية بحيث البداية هتكون من 0درجه و النهاية هتكون لفة كامله
ومع وجود خاصية الـ iteration countاللفة دي هتبدأ من الصفر وتاخد لفة وتفضل تعيد نفس األمر لالبد
ل️♥
ي ️♥راقت
الغرض من الخاصية دي انها تحط وقت يبدأ بعده شغل الـ Animation
الـ delayبيقبل قيمة سالبة بس دا معناه لو فرضنا ان الـ 10 durationن
ثوان وانا خليت الـ delay
ي
سالب 2
ثوان بدل 10ن اذا دا هيخل الـ durationيكون 8ن
ثوان
ي ي ي
ن
ه انه العنرص يحتفظ بأخر حاجه وصلها يف الـ keyframe
الغرض من الخاصية دي ي
الـ Shorthand
;animation: color 8s linear 2s infinite reverse
;-webkit-animation: color 8s linear 2s infinite reverse
ن
تحفيية️♥ ️♥عبارات
ن
الل يف الصورة دا باستخدام رمز (النجمة *) بيعمم أي valuesبتتكتب ع الكود
الـ universalبمجرد كتابة الكود ي
ن
الموجود يف صفحة الـ HTML
ن
ملحوظة :الـ universalمن عيوبه ان الـ specificityبتاعته اضعف من أي حاجه تانية ي
يعت هو اضعف selector
للتنسيق
ر
مباش من خالل اسمه هنا انا بـ Targetالـ elementبشكل
ن
تان ...بستهدف عنرص داخل عنرص أخر
هنا انا بـ element - Targetداخل elementي
ن
بمعت اخر انا هنا بستهدف أي paragraphموجود داخل أي Div
ي
ن
معي ليه class 2عشان كدا انا الزق الـ class 2جنب بعض هنا انا بستهدف عنرص
ن
ان عندي عنرص ليه ن الل ليه .. class
بمعت لو فرضنا ي
ي األساش من خالل العنرص االب ي
ي هنا انا بستهدف العنرص
class nameوجوا العنرص دا مجموعة من الـ p
اليجرافات الموجودة داخل الـ Class nameدا
بمجرد ما اكتب ال Class nameوجنبه الـ pانا كدا بستهدف كل ر
لما بجمع عنرصين مع بعض وافصل بينهم بالفاصلة كدا انا بعمل groupingودا معناه ن يان بطلب منه يستهدف الـ p
و الـ Divالموجودين داخل الـ class-nameدا
ن
معي داخل عنرص الـ pبس هنا انا بستهدف عنرص ليه class name
ن ن ن ن ن ن ن
ان اكتب p.class-nameوالفرق دا يف المثال معناه ي
ان ان اكتب Class-nameبس وبي ي
الحظ :يف فرق بي ي
بستهدف الـ pبس
By: Amr Elsayed
بمعت لو عندي Divاب جواه عنارص كتي ن
ي هنا انا بستهدف الـ direct childي
الل جوا العنرص األب
ر ر ا
مباش يعتي ابن ليه
مباشة بدون فواصل بينهم ر أي عنرص جوا الـ divدا وتحته
ن
الل موجوده تحت الـ divاالب كدا العنارص دي
لكن لو فرضنا ان يف عنارص داخل العنارص الـ direct childي
األصل للـ Divاالب ومش هتاخد أي تنسيق
ي مش االبن
ر
مباش الـ Pدا مش ابن
للـ parent - Class
ر
Div المباش للـ رDiv داخل أيp نف المثال دا انا استهدفت أي
هو االبنp برسط يكون الـ ي
داDirect child هما الـParagraph 5 وParagraph 2 هتالف ان
ي ولو الحظت
ممكن احدد الـ Elementنفسه زي الـ inputو الـ attributeبتاعه زي الـ type
و الـ valueبتاعته زي الـ submit
First-Child
األب
األب
األب
Last-Child
األب
Last-Child
ر
الرسط يكون االبن األخي ونوعه P
برسط ميكونش من نفس نوعه .. هنا بستهدف االبن الوحيد من نوعه نف االب حت لو معاه أبناء غيه بس ر
ي ي
ر ن ن
ان بستهدف االبن الوحيد من نوع الـ paragraphي
حت لو معاه أبناء غيه برسط ان ميكونش األبناء دي بمعت ي
ي
من نفس النوع و اال هنا يبطل ر
الرسط
ن
الـ Pالوحيد من نوعه بالرغم من وجود عنرص اخر معاه يف نفس األب
By: Amr Elsayed
CSS Selectors Reference Part 4 Lesson #81
ن
ان بستهدف منه
دا طبعا معروف ي
الـ first-child
ن ن
ان عايز استهدف كلطيب يف حالة ي
الـ Paragraphsماعدا الـ first-child
هستخدم الـ )( :notوداخلها ي
الل هيتم
استبعاده
ً
هنا انا بستهدف العنرص األول من نوع الـ Divتحديدا و من تحت
وحددت من خالل الـ :checkedان لما عنرص الـ inputيحصله - checkedالـ labelي
الل بعده
يتغي لونه لألحمر
HTML CSS
الطبيغ
ي الل هو 1000pxو أروح لـ 1040pxيبدأ يرجع للـ background-color
بمجرد ما اعدي الـ maxي
تان ر
برس ن
طي ونفهم معناه تعال نجرب مثال ن
ي ي
)@media (min-width:800px) and (max-width: 1050px
{
{ .parent > div
;background-color: blue
}
}
استخدام الـ minو الـ maxبأي قيمة مهما كانت دا معناه أي ؟!
ن
معناه لما أقول الـ min-widthقيمتها 800pxفأنا هنا بقوله ان اقل قيمة تبدأ من عندها يف تنفذ
ه 800pxدي البداية بتاعتك من 800px المطلوب ي
ان بقوله اقل عرض تبدأ من عنده تنفيذ الكود هو 800pxو ما قبل الـ 800pxمش الكود دا معناه ن
ي
محسوب
اقص عرض محددتش إلنوبمجرد ما تبدأ من 800pxتنفيذ الكود ممتد ال ما شاء هللا ..ال ماال نهاية ن
ي ي ي ي
او ( )max-widthيقف تنفيذ الكود عنده
ن
ممكن تستعمل الـ mediaيف الـ srcتاج
ممكن تستعمله ن يف تاج الـ style
والل يفضل ديما استخدام الـ mediaفيه هو انك تحتها ن يف ملف الـ CSS
ي ولكن الـ best practice
األصل بتاعك تحت تنسيقات العنرص الخاصة بيه بحيث تقدر توصله بسهوله وبرسعة
ي
1
ن
الل
ي التنسيقات تنفيذ عل اول mediaالخاصة بالـ mobileانا هنا بقوله اخرك ي
ف -لما نبص ي
يعت تبدأ من 0pxلحد 767pxتطبق التنسيقات دي ن
هحطها جواك لحد المساحه 767pxي
وينته عنده
ي mediaالخاصة بالـ Small Screensانا هنا حاطط رينج يبدا من عنده -ولما نبص ع الـ
وينته عند المساحة 991px ن
بمعت انه يبدا من المساحه 768px
ي ي
الل هحطها
وداخل الرينج دا نفذ التنسيقات ي
-ولما نبص ع الـ mediaالخاصة بال Medium Screensانا هنا حاطط رينج وبقوله
ابدا من المساحة الل قابل ر
مباشة لحد ما توصل لـ 992px ي ي
-ولما نبص ع الـ mediaالخاصة بال Large Screensانا هنا حاطط رينج وبقوله
ابدا من المساحة الل قابل ر
مباشة لحد ما توصل لـ 1200px ي ي
ن
-وعملت mediaخاصة مختلفة بمساحة معينه هحط فيها تنسيقات معينه تتنفذ يف المساحة دي فقط
ن
بمعت انه هشوف التصميم وهو متجاوب مع شاشات الهاتف األول ر
همس بمبدأ mobile first
ي ي
HTML CSS
ن
وف الـ mediaدي حددت ان الـ widthيكون 50%لكل عنرص
بدأت من الـ 768px mediaي
ناقص 10pxمسافات بينهم بس
HTML CSS
ُ
ان عايز انسق العنرصين دول بحيث انهم يكونوا ن يف نص الصفحة !!
ي
طيب نف حالة ن
ي
هبف محتاج ن
ان انسق كل عنرص لوحده ي ي
ن
وكل الكتابة دي الغرض منها توسيط كل عنرص يف منتصف الصفحة
ن
بعدها اخد اسم الـ classدا واحطه ك ـ classيف ملف الـ HTMLداخل أي عنرص عايز اديله نفس التنسيق دا
ن
تان لو حبيت أوسط كلمة Childدي داخل الدائرة اعمل اي ؟
طيب ي
الل هوسط بيه الكلمةهعمل frameworkفيه تنسيقات الـ Flexي
HTML
After
باختصار شديد الـ Frameworkالهدف منها هو تقليل كتابة اكواد كتي ن يف ملف الـCSS
ن ن
لو يف 4عنارص عايز اوسطهم يف منتصف الصفحة فمش رشط امسك كل عنرص لوحده انسقه
لكن ممكن اعمل Classفيه كل تنسيقات الـ centerواضيفها فقط للعنارص دي ن يف ملف الـ HTML
HTML CSS
2- initial
تعتي الـ Default Valueألي خاصية
ه ر ببساطه شديدة ي
ن
لكن المتصفح بيحط للعنرص دا تنسيقات من display: inline أي عنرص يف الدنيا هو عبارة عن
عنده عشان ن
يميه عن عنارص تانية
غ والطبي اضبمجرد كتابه الخاصية initialالي عنرص فدا معناه نان برجع العنرص دا لوضعه االفي ن
ي ي ي
ا
متجاهًل تنسيقات الـ browser
هيبف inline الل من خالله معت كدا ان الـ divاألب الكبي هيجع لوضعهن
ي الطبيغ ي
ي ي
ا
الل كانت مخليها Block Element
ي browser ـ لا تنسيقات متجاهًل
3- Unset
ن
بساطة شديدة القيمة دي بتعمل عمل الـ inheritيف حالة ان الخاصية ي
الل بتشتغل عليها
دي ممكن ترث عادي
ن
دي ال ترث و بتعمل عمل الـ initialيف حالة ان الخاصة الخاصية ي
الل بتشتغل عليها
ن
يف العادي الـ Buttonلونه اسود ،ولكن لما اغي قيمة الـ colorواحط Valueالـ unsetهيحصل ان
ن
الل بيث قيمتها عادي
ي الخصائص من color ـ ل ا خاصية الن inherit ـ ل ا وضع ف الـ colorي
يبف ي
{ button
;color: unset === color:
;inherit
}
4- revert
ببساطه شديدة الغرض من القيمة دي انها ترجع العنارص للقيمة االفياضية ي
الل
ُ ُ
الل ِبتعرف بالـ user agent stylesheet
الـ Browserبيحطها بنفسه للعنرص ي
اذا ن
تان بوضوح اكي الـ user agentاو الـ browserبشكل عام بيحط قيم من عنده لبعض
ي
العنارص زي مثال الـ marginالمتصفح بيحط 8pxمن عنده
الل المتصفح
الطبيغ ي
ي لو حبيت بقا ارجع لوضعة resetللـ marginدا و أخليه 0 لما ر ي
اح اعمل
بيحطه بنفسه
5- all
ببساطة شديدة بيتم استخدامها لجمع جميع الخواص مرة واحدها مع بعض واعطائهم قيمة
اترسحت فوقمن القيم الل ر
ي
CSS♥️
Css Battle
CSS Templates
Front-End Mentor
Learn Git & GitHub
Elzero Web - Assignments
Elzero Web School challenges
CSS Reference – For All Properties