Hailsham Town Council Pattern Library

CSS

The CSS for this website is written using SCSS for preprocessing. Gulp sass handles the compiling, check out the Gulpfile.js within the theme for more information.

Using ITCSS as a methodology, the CSS is designed to be as passive and non-specific as possible. It is broken down into the following chunks with each section becoming more specific as you head down the list:

Settings

Tools

Generic

Elements

Objects

Components

Trumps

When expanding the site, try to analyse the element to ensure the CSS is placed in the correct area(s).

Only use classes, no IDs please

Use tabs for indentation

Mobile-up media queries

Class naming conventions (BEM like):

module

module-sub-element

module modifier or module module-modifier

Example

HTML

The site has been built using the Atomic Design concepts put forward by Brad Frost. Individual elements are atoms, they group together to become molecules, organisms, templates and finally pages. Each element is modular, therefore it should not be assumed that the element will appear on one page or in one place only.

Paragraphs

Paragraphs are wrapped in p tags and will usually make up the majority of website content.

Horizontal rule

The hr element represents a thematic break between paragraph-level elements, e.g. a scene change in a story, or a topic-shift within a section. This example from Alice's Adventures in Wonderland. Lewis Carroll, 1832-98, demonstrates this element.

As they walked off together, Alice heard the King say in a low voice, to the company generally, "You are all pardoned."
"Come, that's a good thing!" she said to herself, for she had felt quite unhappy at the number of executions the Queen had ordered.

They very soon came upon a Gryphon, lying fast asleep in the sun.

Blockquotes

The blockquote element represents a section that is being quoted from another source.

Many forms of Government have been tried, and will be tried in this world of sin and woe. No one pretends that democracy is perfect or all-wise. Indeed, it has been said that democracy is the worst form of government except all those other forms that have been tried from time to time.

Ordered list

The ol element denotes an ordered list, and various numbering schemes are available through the CSS (including 1,2,3… a,b,c… i,ii,iii… and so on). Each item requires a surrounding <li> and </li> tag, to denote individual items within the list (as you may have guessed, li stands for list item).

This is an ordered list.

This is the second item, which contains a sub list

This is the sub list, which is also ordered.

It has two items.

This is the final item on this list.

Unordered list

The ul element denotes an unordered list (ie. a list of loose items that don’t require numbering, or a bulleted list). Again, each item requires a surrounding <li> and </li> tag, to denote individual items. Here is an example list showing the constituent parts of the British Isles:

United Kingdom of Great Britain and Northern Ireland:

England

Scotland

Wales

Northern Ireland

Republic of Ireland

Isle of Man

Channel Islands:

Bailiwick of Guernsey

Bailiwick of Jersey

Definition list

The dl element is for another type of list called a definition list. Instead of list items, the content of a dl consists of dt (Definition Term) and dd (Definition description) pairs. Though it may be called a “definition list”, dl can apply to other scenarios where a parent/child relationship is applicable. For example, it may be used for marking up dialogues, with each dt naming a speaker, and each dd containing his or her words.

This is a term.

This is the definition of that term, which both live in a dl.

Here is another term.

And it gets a definition too, which is this line.

Here is term that shares a definition with the term below.

Here is a defined term.

dt terms may stand on their own without an accompanying dd, but in that case they share descriptions with the next available dt. You may not have a dd without a parent dt.

Quotes

The blockquote element should be used to denote quotations. The cite element can be used in conjunction to denote the quote author:

Many forms of Government have been tried, and will be tried in this world of sin and woe. No one pretends that democracy is perfect or all-wise. Indeed, it has been said that democracy is the worst form of government except all those other forms that have been tried from time to time.

Links and anchors

Stressed emphasis

The em element is used to denote text with stressed emphasis, i.e., something you’d pronounce differently. Where italicizing is required for stylistic differentiation, the i element may be preferable. Example:

You simply must try the negitoro maki!

Strong importance

The strong element is used to denote text with strong importance. Where bolding is used for stylistic differentiation, the b element may be preferable. Example:

Don’t stick nails in the electrical outlet.

Small print

The small element is used to represent disclaimers, caveats, legal restrictions, or copyrights (commonly referred to as ‘small print’). It can also be used for attributions or satisfying licensing requirements. Example:

Strikethrough

The s element is used to represent content that is no longer accurate or relevant. When indicating document edits i.e., marking a span of text as having been removed from a document, use the del element instead. Example:

Recommended retail price: £3.99 per bottleNow selling for just £2.99 a bottle!

Citations

The cite element is used to represent the title of a work (e.g. a book, essay, poem, song, film, TV show, sculpture, painting, musical, exhibition, etc). This can be a work that is being quoted or referenced in detail (i.e. a citation), or it can just be a work that is mentioned in passing. Example:

Universal Declaration of Human Rights, United Nations, December 1948. Adopted by General Assembly resolution 217 A (III).

Inline quotes

The q element is used for quoting text inline. Example showing nested quotations:

John said, I saw Lucy at lunch, she told me Mary wants you to get some ice cream on your way home. I think I will get some at Ben and Jerry’s, on Gloucester Road.

Definition

The dfn element is used to highlight the first use of a term. The title attribute can be used to describe the term. Example:

Bob’s canine mother and equine father sat him down and carefully explained that he was an allopolyploid organism.

Abbreviation

The abbr element is used for any abbreviated text, whether it be acronym, initialism, or otherwise. Generally, it’s less work and useful (enough) to mark up only the first occurrence of any particular abbreviation on a page, and ignore the rest. Any text in the title attribute will appear when the user’s mouse hovers the abbreviation (although notably, this does not work in Internet Explorer for Windows). Example abbreviations:

BBC, HTML, and Staffs.

Time

The time element is used to represent either a time on a 24 hour clock, or a precise date in the proleptic Gregorian calendar, optionally with a time and a time-zone offset. Example:

Queen Elizabeth II was proclaimed sovereign of each of the Commonwealth realms on 6 and 7 February 1952, after the death of her father, King George VI.

Code

The code element is used to represent fragments of computer code. Useful for technology-oriented sites, not so useful otherwise. Example:

When you call the activate() method on the robotSnowman object, the eyes glow.

Used in conjunction with the pre element:

function getJelly() {
echo $aDeliciousSnack;
}

Sample output

The samp element is used to represent (sample) output from a program or computing system. Useful for technology-oriented sites, not so useful otherwise. Example:

The computer said Too much cheese in tray two but I didn’t know what that meant.

Keyboard entry

The kbd element is used to denote user input (typically via a keyboard, although it may also be used to represent other input methods, such as voice commands). Example:

To take a screenshot on your Mac, press ⌘ Cmd + ⇧ Shift + 3.

Superscript and subscript text

The sup element represents a superscript and the sub element represents a sub. These elements must be used only to mark up typographical conventions with specific meanings, not for typographical presentation. As a guide, only use these elements if their absence would change the meaning of the content. Example:

The coordinate of the ith point is (xi, yi). For example, the 10th point has coordinate (x10, y10).

f(x, n) = log4xn

Italicised

The i element is used for text in an alternate voice or mood, or otherwise offset from the normal prose. Examples include taxonomic designations, technical terms, idiomatic phrases from another language, the name of a ship or other spans of text whose typographic presentation is typically italicised. Example:

There is a certain je ne sais quoi in the air.

Emboldened

The b element is used for text stylistically offset from normal prose without conveying extra importance, such as key words in a document abstract, product names in a review, or other spans of text whose typographic presentation is typically emboldened. Example:

You enter a small room. Your sword glows brighter. A rat scurries past the corner wall.

Marked or highlighted text

The mark element is used to represent a run of text marked or highlighted for reference purposes. When used in a quotation it indicates a highlight not originally present but added to bring the reader’s attention to that part of the text. When used in the main prose of a document, it indicates a part of the document that has been highlighted due to its relevance to the user’s current activity. Example:

I also have some kittens who are visiting me these days. They’re really cute. I think they like my garden! Maybe I should adopt a kitten.

Edits

The del element is used to represent deleted or retracted text which still must remain on the page for some reason. Meanwhile its counterpart, the ins element, is used to represent inserted text. Both del and ins have a datetime attribute which allows you to include a timestamp directly in the element. Example inserted text and usage:

Tables should be used when displaying tabular data. The thead, tfoot and tbody elements enable you to group rows within each a table.

If you use these elements, you must use every element. They should appear in this order: thead, tfoot and tbody, so that browsers can render the foot before receiving all the data. You must use these tags within the table element.

About Hailsham Town Council

Parish and town councils are democratically elected local authorities with duties and privileges conferred by Act of Parliament.

In England and Wales, a parish council can resolve to call itself a ‘town council’ and its chairman the ‘town mayor’. Parish and town councils are known collectively as ‘local councils’. Hailsham Town Council came into being in 1974 as a result of local government reorganisation.

A Town Council holds sole responsibility for the services it provides. Through its committees, it formulates policies for action and decides how to raise and spend money on behalf of the local community. The Town Council is the tier of local government closest to the people and consists of individual councillors who contribute to the work of the whole Town Council by:

Putting forward ideas and engaging in constructive debate

Representing their constituents and responding to the needs of the community

Acting in an ethical way and being open about interests

Voting to enable the Town Council to make decisions

Ensuring the delivery of cost-effective quality services for residents

Many forms of Government have been tried, and will be tried in this world of sin and woe. No one pretends that democracy is perfect or all-wise. Indeed, it has been said that democracy is the worst form of government except all those other forms that have been tried from time to time.

Many forms of Government have been tried, and will be tried in this world of sin and woe. No one pretends that democracy is perfect or all-wise. Indeed, it has been said that democracy is the worst form of government except all those other forms that have been tried from time to time.