Определя съдържанието на таблицата. |
| Указва името на таблицата. |
|
| Дефинира заглавната клетка на таблица. |
---|
|
Дефинира ред от таблица. |
|
| Дефинира клетка с данни в таблица. |
Използва се, за да съдържа заглавка на група в таблица (заглавка на таблица). |
| |
Използва се да съдържа "тялото" на таблицата. |
|
Използва се, за да съдържа "долния колонтитул" на таблицата (долен колонтитул). |
| Дефинира дадените свойства на колона за всяка колона в тага .
|
| Дефинира група от колони в таблица. |
Работа с отстъпи в таблица
Използване на подложка в таблица
Отстъпи на таблицата
1 |
2 |
3 |
4 |
2 | | | |
3 | | | |
4 | | | |
AT този примерние:
- Поставихме масата в центъра, използвайки техниката на хоризонтално центриране с външни полета (марж: 0 авто).
- За име на таблица (таг ) задаваме долната подложка на 19 пиксела. Надявам се, че не сте объркани от нечетните числа :)
Резултатът от нашия пример:
Разстояние между клетките
След горния пример може би сте забелязали, че все още имаме празнина между всички клетки в таблицата. Нека да разгледаме как да премахнем празнината между клетките на таблицата или да я увеличим.
За да зададете разстоянието между границите на съседните клетки, трябва да използвате свойството на CSS - border-spacing .
Промяна на разстоянието между масите
граница-разстояние: 30px 10px;
1 |
2 |
3 |
2 | | |
3 | | |
граница-разстояние: 0;
1 |
2 |
3 |
2 | | |
3 | | |
border-spacing:0.2em;
1 |
2 |
3 |
2 | | |
3 | | |
В този пример ние:
- float : ляво ). Ако сте пропуснали темата за плаващите елементи, винаги можете да се върнете към нея в този урок - "".
- Освен това задаваме дясното поле на таблиците на 30px и задаваме вертикалното подравняване на таблиците (горната част на елемента е подравнена с горната част на най-високия елемент). Ще се върнем към подробно обсъждане на това свойство в тази статия.
- ) е удебелен.
- За клетките на таблицата (заглавка и клетки с данни) зададохме 1 px плътна граница с шестнадесетичен цвят #F50 и зададохме подложката на 19 px от всички страни.
- За първата маса с класа .първоние задаваме разстоянието между клетките на таблицата (свойството за граница) на 30px 10px, за втората таблица с класа .второравно на нула, за третата таблица с класа .треторавно на 0,2em.
Обръщам внимание на факта, че ако в свойството border-spacing е посочена само една стойност на дължина, тогава тя определя интервалите, както хоризонтално, така и вертикално, а ако са посочени две стойности на дължина, тогава първата определя хоризонталното разстояние , а втората вертикална. Разстоянието между границите на съседните клетки може да бъде зададено в CSS единици (px, cm, em и т.н.). Отрицателните стойности не са разрешени.
Резултатът от нашия пример:
Показване на граници около клетките на таблицата
Можеш да кажеш: - така че премахнахме празнината между клетките, използвайки свойството border-spacing със стойност 0, но защо сега имаме граници на клетки, които се пресичат?
Двойните граници се образуват поради факта, че долната граница на една клетка се добавя към горната граница на клетката под нея, подобна ситуация възниква отстрани на клетките и това е логично по отношение на показването на таблицата, но за щастие има е начин да кажете на браузъра, че не искаме да виждаме такова нахално поведение на границите на клетките.
За това трябва да използвате CSS свойствограница-колапс . Колкото и да е странно, използването на свойството border-collapse със стойност collapse е по най-добрия начинкак мога да премахна празнината между клетките и в същото време да не получа двойни граници между тях.
Помислете за сравняване на поведението на границите, когато използвате свойството border-spacing със стойност 0 и свойството border-collapse със стойност collapse:
Пример за показване на граници около клетките на таблицата
граница-разстояние: 0;
1 |
2 |
3 |
2 | | |
3 | | |
border-collapse: колапс;
1 |
2 |
3 |
2 | | |
3 | | |
В този пример ние:
- Направихме нашите таблици плаващи и ги изместихме наляво (float : left), зададохме външното им дясно поле на 30px.
- Задайте за името на таблицата (таг ) е удебелен.
- За клетките на таблицата (заглавие и клетки с данни) задаваме плътна рамка от 5px с шестнадесетичен цвят #F50 и задаваме фиксирана ширина от 50px и височина от 75px.
- За първата маса с класа .първозадаваме разстоянието между клетките на таблицата на нула (border-spacing : 0 ;), а за втората таблица с класа .второзадайте свойството border-collapse на collapse, което обединява границите на клетките в една, когато е възможно.
Резултатът от нашия пример:
Поведение на празни клетки
С CSS можете да зададете дали да се показват границите и фона на празните клетки в таблицата или не. Свойството празни клетки е отговорно за това поведение, което, както може би сте забелязали от предишните примери, показва празни клетки по подразбиране.
Да преминем към пример:
Пример за показване на празни клетки от таблица
празни клетки: показване;
1 |
2 |
3 |
2 | |
☺ |
3 |
☺ | |
празни клетки: скрий;
1 |
2 |
3 |
2 | |
☺ |
3 |
☺ | |
Много е лесно да се разбере как работи свойството празни клетки от този пример, ако е настроено да скрие, тогава празните клетки и фонът в тях ще бъдат скрити, ако е настроено да се показва (по подразбиране), тогава те ще бъдат показани .
Местоположение на заглавката на таблицата
Нека да разгледаме друго просто свойство за стилизиране на таблица - caption-side , което задава позицията на надписа на таблицата (над или под таблицата). По подразбиране свойството caption-side е зададено на top , което поставя надписа над таблицата. За да поставите заглавка под таблицата, трябва да използвате свойството със стойност bottom.
Нека да разгледаме пример за използване на това свойство:
Пример за използване на свойството от страна на надписа
Заглавие над таблицата
Име | Цена |
Риба | 350 рубли |
месо | 250 рубли |
Заглавие под масата
Име | Цена |
Риба | 350 рубли |
месо | 250 рубли |
В този пример създадохме два класа, които контролират местоположението на заглавката на таблицата. Първи клас ( .topCaption) поставя заглавката на таблицата над нея, ние го приложихме към първата таблица и втория клас ( .bottomCaption) поставя заглавката на таблицата под него, ние го приложихме към втората таблица. Клас .topCaptionима стойността по подразбиране на свойството от страна на надписа и е създаден за демонстрационни цели.
Резултатът от нашия пример:
Хоризонтално и вертикално подравняване
В повечето случаи, когато работите с таблици, ще трябва да коригирате подравняването на съдържанието в заглавката и клетките с данни. Свойството text-align се използва за хоризонтално подравняване, подобно на всяко друго текстова информация. Разгледахме използването на това свойство за текст по-рано в статията "".
За да зададете подравняването на съдържанието в клетките, трябва да използвате специални ключови думи със свойството text-align. Обмислете приложението ключови думитова свойство в следния пример.
Пример за хоризонтално подравняване в таблица
Значение | Описание |
наляво | Подравнява текста в клетката отляво. Това е стойността по подразбиране (ако посоката на текста е отляво надясно). |
точно | Подравнява текста в клетката надясно. Това е стойността по подразбиране (ако посоката на текста е отдясно наляво). |
център | Подравнява текста на клетката към центъра. |
оправдавам | Разтяга линиите, така че всеки ред да е с еднаква ширина (разтяга текста в клетката, за да пасне на ширината). |
В този пример създадохме четири класа, които задават различни хоризонтални подравнения в клетките и ги прилагат по ред към редовете на таблицата. Стойността в клетката съвпада със стойността на свойството подравняване на текст
Резултатът от нашия пример:
В допълнение към хоризонталното подравняване можете също да дефинирате вертикално подравняване в клетките на таблицата, като използвате свойството vertical-align.
Моля, имайте предвид, че когато работите с клетки от таблица, се прилагат само следните * стойности на това свойство:
*
- Sub, super, text-top, text-bottom, length и % стойности, приложени към клетка на таблица, ще се държат така, сякаш използват базова стойност.
Нека разгледаме пример за употреба:
Пример за вертикално подравняване в таблица
Значение | Описание |
базова линия | Подравнява основната линия на клетката с основната линия на родителя. Това е стойността по подразбиране. |
Горна част | Подравнява съдържанието на клетката вертикално към горната част. |
средата | Подравнява съдържанието на клетката вертикално в средата. |
отдолу | Подравнява съдържанието на клетката вертикално към дъното. |
В този пример създадохме четири класа, които задават различни вертикални подравнявания в клетките и ги прилагат към редовете на таблицата. Стойността в клетката съвпада със стойността на свойството за вертикално подравняване, което е приложено към този ред.
Алгоритъм за поставяне на оформлението на таблицата от браузъра
CSS използва алгоритъма за автоматично оформление на таблица на браузъра по подразбиране. В такъв случай ширината на колоната се задава от най-широкото неразбиващо се съдържание на клетката. Този алгоритъм може да бъде бавен в някои случаи, тъй като браузърът трябва да прочете цялото съдържание в таблицата, преди да определи окончателното й оформление.
За да промените типа на оформлението на оформлението на таблицата от браузъра с автоматиченна фиксирани, трябва да използвате CSS оформление на таблицата със свойства със стойност fixed.
В този случай хоризонталното разположение зависи само върху ширината на таблицата и ширината на колоните, а не върху съдържанието на клетките.Браузърът започва да изобразява таблицата веднага щом бъде получен първият ред. В резултат на това фиксираният алгоритъм ви позволява да създадете оформлението на такава таблица по-бързо, отколкото използването на автоматичната опция. Когато работите с големи таблици, можете да използвате фиксиран алгоритъм, за да увеличите производителността.
Нека да разгледаме използването на това свойство със следния пример:
Пример за използване на свойството table-layout
оформление на маса: авто;
Име |
2009 |
2010 |
2011 |
2012 |
2013 |
2014 |
2015 |
2016 |
пшеница |
125 |
215 |
2540 |
33287 |
695878 |
1222222 |
125840000 |
125 |
оформление на таблица: фиксирано;
Име |
2009 |
2010 |
2011 |
2012 |
2013 |
2014 |
2015 |
2016 |
пшеница |
125 |
215 |
2540 |
33287 |
695878 |
1222222 |
125840000 |
125 |
В този пример ние:
Оформяне на редове и колони на таблицата
Вие и аз вече частично се докоснахме до методите за стилизиране на редове и колони на таблица в статията "". В тази статия разгледахме използването на групов псевдоклас, който ви позволява да редувате стилове на редове в таблици, използвайки стойности дори (честен) и странно (странно), или от елементарно математическа формула.
Нека да преразгледаме техниките, които разгледахме досега, и да проучим нови начини за стилизиране на редове и колони в таблици. Да преминем към примерите.
Пример за използване на псевдокласа :nth-child с таблици
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
2 | | | | | | |
| | | | | | |
3 | | | | | | |
| | | | | | |
4 | | | | | | |
| | | | | | |
В този пример ние:
Резултатът от нашия пример:
Нека да преминем към следващия пример, в който ще разгледаме опциите за стилизиране на редовете на таблицата.
Пример за стилизиране на редове в таблици
Обслужване | Цена |
Сума |
15 000 |
1 |
1 000 |
2 |
2 000 |
3 |
3 000 |
4 |
4 000 |
5 |
5 000 |
В този пример ние:
- Задаваме ширината на таблицата на 100% от ширината на родителския елемент, за заглавката и клетките с данни задаваме плътна рамка с ширина 1px.
- Комплект за елемент („долния колонтитул“ на таблицата) цвят на фона – корал, за елемент ("заглавка" на таблицата) задайте цвета на фона Сребро.
- За елементи
, които са вътре в елемента (тяло на таблицата) задаване на цвета на фона, който да се променя при задържане (псевдо-клас :hover) c бялона цвят каки(целият ред е маркиран).
Резултатът от нашия пример: Ориз. 153 Пример за стил на ред в таблици Следващият пример разглежда прилагането на заобляне на ъгли към клетки на таблица (свойство).
Пример за заобляне на ъгъл на клетка
В този пример ние:
- Центрирайте таблицата с външни полета, задайте ширината и височината на заглавните клетки на 50px, посочено прозраченграница 5 пиксела.
- Установено е, че когато задържите курсора на мишката (псевдоклас :hover) върху заглавната клетка, тя получава Фонът синцветове, портокалцвят на текста, рамка оранжевоцветове 5 пиксела и радиус на заобляне 100%.
- прозрачна границае необходимо, за да запазите място за границата, която ще се показва при задържане на курсора на мишката, ако това не е направено, масата ще „скочи“.
Резултатът от нашия пример:
Следният пример се отнася до използвайки HTMLелементи и и техния стайлинг.
Пример за подчертаване на колона в таблица
Приложение № | Обслужване | цена, търкайте. | Обща сума |
1 | Пеене |
6 000 |
6 000 |
2 | измиването |
2 000 |
2 000 |
3 | Почистване |
1 000 |
1 000 |
4 | Заяждане |
1 500 |
1 500 |
5 | Четене |
3 000 |
3 000 |
В този пример ние:
Резултатът от нашия пример:
И последният пример, който е доста труден за разбиране и изисква задълбочени познания по CSS, тъй като засяга бъдещи теми, планирани за подробно изучаване в рамките на този курс.
В предишния пример разбрахме това HTML елемент можете да приложите само едно свойство на CSS - цвета на фона (background-color), но не можете да зададете цвета на фона при задържане (псевдоклас :hover) върху този елемент директно. В този пример ще разгледаме как да маркирате колона в таблица, като използвате само CSS.
Пример за маркиране на колони и редове от таблица при задържане на мишката
Приложение № | Обслужване | цена, търкайте. | Обща сума |
1 | Пеене |
6 000 |
6 000 |
2 | измиването |
2 000 |
2 000 |
3 | Почистване |
1 000 |
1 000 |
4 | Заяждане |
1 500 |
1 500 |
5 | Четене |
3 000 |
3 000 |
В този пример ние:
- Задаваме нашата таблица да заема 100% от родителския елемент, клетките на таблицата да заемат 25% от родителския елемент и да имат плътна рамка от 1 пиксел в зелено, височината на заглавката и клетките с данни е 45px. Премахнахме празнината между клетките, използвайки свойството border-collapse със стойността
.
- И така, използвайки псевдоелемента ::after, ние добавяме съдържание след всеки елемент
при задържане. Псевдоелементът ::after трябва да се използва заедно със свойството content, благодарение на което вмъкваме елемент на ниво блок, който има фонов цвят горскозелени има абсолютно позициониране.
- Абсолютното позициониране тук е необходимо за изместване на елемента спрямо посочения ръб на неговия предшественик, докато предшественикът трябва да има стойност на позиция, различна от стандартната - static, в противен случай броят ще бъде спрямо посочения ръб на прозореца на браузъра, за това причината, която сложихме на масата относително позициониране(относително).
- Задаваме свойството top за нашия генериран блок, което определя посоката на отместване на позиционирания елемент от горния ръб, и свойството bottom, което определя посоката на отместване на позиционирания елемент от долния ръб. И двете свойства бяха зададени на 0, така че блокът ще заема изцяло елемента от долната и горната част на таблицата, ширината на този блок беше зададена на 25%, тази стойност съответства на стойността на ширината на самата клетка.
- И последното свойство, което задаваме за този блок: z-индекс със стойност "-1" определя реда на позиционираните елементи в Z ос. Това свойство е необходимо, така че текстът да е пред този блок, а не зад него, ако не зададете стойност по-малка от нула, тогава блокът ще затвори текста.
Резултатът от нашия пример:
Ако на този етап от проучването процесът на позициониране на елементите не ви е ясен, тогава не се обезсърчавайте, това е трудна за разбиране тема, която също не разгледахме, но определено ще я разгледаме в следващата статия на учебника "Позициониране на елементи в CSS".
Въпроси и задачи по темата
Преди да преминете към следващата тема, изпълнете практическата задача:
![](https://i2.wp.com/basicweb.ru/css/primer/practice_31.png) Ако се затруднявате да направите практическа задача, Винаги можете да отворите примера в отделен прозорец и да прегледате страницата, за да видите какъв CSS е използван.
2016-2020 Денис Болшаков, можете да изпращате коментари и предложения в сайта на [email protected]
| |
|