HTML and CSS Tutorial for Beginners

The almost 40-page brochure intended for HTML coding for beginners and tutorials but also advanced users can learn something new, overall is the best place to learn. The concept of lean testing, a combination of testing important test cases and a manageable cost, is in the foreground.
html
Andreas Sanesh and Ulrich Breymann, the authors of the book “Tutorial for HTML web page and CSS”, have developed a digital brochure on the “lean testing of coding beginners for HTML, wise test & decision tables”, that on her when the Book is based.

With this brochure, HTML classes for beginners gain insight first, what test procedures there are Combinatorial testing and how they engage with reasonable effort can be. All the test procedure demonstrates through code examples and with the help of Google testing frameworks. Lean testing will help the developer testing appropriate for his problem in a reasonable time. The condition is to demonstrate the required quality testing.

July 10, 2018

HTML Coding Tutorials -How to Create Web Page?

Because of some needs, Skiyo blog also started to develop module for advanced HTML tutorial. After reading some information, we skiyo.cn made a module.

Our team at skiyo development of HTML tags tutorial that we have created is available here on skiyo blog, and it is relatively easy. There are many modules for online open source, which can be used for reference. What shocks me is the OAuth module.

Here you can find good examples of HTML coding and tags, tutorials for beginners.

Skiyo compares some back-end language implementations. The most important feature is that the speed is fast. This is understandable. The difference advanced HTML tutorial and coding HTML for beginners, directly compiles the module into the main program. Under my simple test, a very simple module with business logic can reach 1-2w/s requests. If your machine is good enough, this data is more impressive. For a PHP, it can be very good to be able to press 5000/s.

Personally feel that coding HTML for beginners development data is still relatively small (seemingly contradictory with the above said = =), development is still embarrassing, so if you want to try some nginx module development, and apply to the production environment, recommend some business logic is relatively simple Think again.

Another advantage of HTML classes for beginners development is that it is very easy to deploy and the compilation is very simple.

web page tutorial

Well, nonsense will not say, the following gives a hello world demo. There are already many examples of hello world on the Internet, which is still very complicated in my opinion. Skiyo team still have to say it by ourself.

Before developing the module, skiyo need to create a new file called “config”. When skiyo compiles, let the main program compile my module. If you want more entry-level check our previous post about the Best place to learn HTML, tutorial for beginners, and advanced coding CSS and HTML.

In this hello world example, config looks like this:

View Code

1
2
3
ngx_addon_name = ngx_hello_world_module
HTTP_AUX_FILTER_MODULES = "$ HTTP_MODULES ngx_hello_world_module" 
NGX_ADDON_SRCS = "$ NGX_ADDON_SRCS $ ngx_addon_dir / ngx_hello_world_module.c"

Need to pay attention to the name of the module and the location of your module source code

Then create a new ngx_hello_world_module.c in your directory.

Then enter the following code

View Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
#include <ngx_core.h> 
#include <ngx_http.h> 
#include <nginx.h>
 
static  char  * ngx_hello_world ( ngx_conf_t * cf , ngx_command_t * cmd ,  void  * conf ) ; 
static ngx_int_t ngx_hello_world_get_output ( ngx_http_request_t * r ,  char  * out_buf ) ; 
static ngx_int_t ngx_hello_world_handler ( ngx_http_request_t * r ) ;
 
/ * Commands * / 
static ngx_command_t ngx_hello_world_commands [ ]  =  { 
    { ngx_string ( "ngx_hello_world" ) , 
      NGX_HTTP_LOC_CONF | NGX_CONF_NOARGS , 
      ngx_hello_world , 
      NGX_HTTP_LOC_CONF_OFFSET , 
      0 , 
      NULL } ,
 
      ngx_null_command
};
 
static ngx_http_module_t  ngx_hello_world_module_ctx = {
    NULL,                                  /* preconfiguration */
    NULL,                                     /* postconfiguration */
 
    NULL,                                  /* create main configuration */
    NULL,                                  /* init main configuration */
 
    NULL,                                  /* create server configuration */
    NULL,                                  /* merge server configuration */
 
    NULL,                                  /* create location configuration */
    NULL                                   /* merge location configuration */
};
 
/ * * / Remedy 
ngx_module_t ngx_hello_world_module =  { 
    NGX_MODULE_V1 , 
    & ngx_hello_world_module_ctx ,               / * module Context * / 
    ngx_hello_world_commands ,                  / * module directives * / 
    NGX_HTTP_MODULE ,                        / * module type * / 
    null ,                                   / * init master * / 
    null ,                                   / * init module * / 
    NULL ,              / * init process * / 
    NULL ,                                   / * init thread * / 
    NULL ,                                   / * exit thread * / 
    NULL ,              / * exit process * / 
    NULL ,                                  /* exit master */
    NGX_MODULE_V1_PADDING
};
 
 
static ngx_int_t ngx_hello_world_get_output(ngx_http_request_t *r, char *out_buf){
 
    sprintf(out_buf, "%s", "Hello World!");
    return NGX_OK;
}
 
static ngx_int_t
ngx_hello_world_handler ( ngx_http_request_t * r ) 
{ 
    ngx_int_t rc ; 
    ngx_buf_t     * b ; 
    ngx_chain_t out ;
 
    /* Http Output Buffer */
    char out_buf[20] = {0};
 
    if (!(r->method & (NGX_HTTP_GET|NGX_HTTP_HEAD))) {
        return NGX_HTTP_NOT_ALLOWED;
    }
 
    rc = ngx_http_discard_request_body(r);
 
    if (rc != NGX_OK && rc != NGX_AGAIN) {
        return rc;
    }
    //定制头信息
    r->headers_out.content_type.len = sizeof("text/html") - 1;
    r->headers_out.content_type.data = (u_char *) "text/html";
 
    if (r->method == NGX_HTTP_HEAD) {
        rc = ngx_http_send_header(r);
 
        if  ( rc == NGX_ERROR || rc > NGX_OK || r -> header_only )  { 
            return rc ; 
        } 
    }
 
    / / Get the output body 
    ngx_hello_world_get_output ( r , out_buf ) ;
 
    b = ngx_pcalloc ( r -> pool ,  sizeof ( ngx_buf_t ) ) ; 
    if  ( b == NULL )  { 
        return NGX_HTTP_INTERNAL_SERVER_ERROR ; 
    }
 
    out.buf = b;
    out.next = NULL;
 
    b->pos = (u_char *)out_buf;
    b->last = (u_char *)out_buf + strlen(out_buf);
    b->memory = 1;
    b->last_buf = 1;
    r->headers_out.status = NGX_HTTP_OK;
    r->headers_out.content_length_n = strlen(out_buf);
 
    rc = ngx_http_send_header(r);
 
    if  ( rc == NGX_ERROR || rc > NGX_OK || r -> header_only )  { 
        return rc ; 
    }
 
    return ngx_http_output_filter(r, &out);
}
 
static  char  * 
ngx_hello_world ( ngx_conf_t * cf , ngx_command_t * cmd ,  void  * conf ) 
{ 
    ngx_http_core_loc_conf_t * clcf = ngx_http_conf_get_module_loc_conf ( cf , ngx_http_core_module ) ;
 
    /* register hanlder */
    clcf->handler = ngx_hello_world_handler;
 
    return NGX_CONF_OK ; 
}

Then compile.
What you need to understand when compiling is that we don’t have to compile our module. Skiyo only need to add the –add-module parameter when compiling HTML tags tutorial.

Also, nginx rewrite is required to use the PCRE library, so before compiling nginx, please compile and install pcre.

Then go to the nginx directory and configure

View Code

1
./configure --prefix=/home/www/nginx --user=www --group=www --add-module=/home/www/download/ngx_hello_world --with-cc-opt="-I /home/www/pcre/include" --with-ld-opt="-L /home/www/pcre/lib"

After –add-module is the directory address of our module. This directory contains the config file just written. The latter two are the directories that specify pcre. If you do not specify the installation directory when you configure pcre, you can remove these two parameters.

After the compilation is complete, our module is “fitted” with the nginx main programs.

At this point we enter nginx.conf and add the following information to your server block:

View Code

1
2
3
location /hello {
	ngx_hello_world;
}

Then start nginx, then open your server / hello can see the output hello world information. If you are interested, you can use PHP to write a Hello World, and then press to compare performance:)

How to create web page?What is HTML and how to Learn Coding at the Best Place

HTML tags tutorial

Place 2 used Python in the ranking of the most popular programming languages in the classroom. In contrast to BASIC Python already more recent thinking of programming takes up – about the block structure and object orientation. Thus, it resembles more familiar languages such as Java, C++, and c#, which are widely used in the industry. Skiyos recommends Python is considered but easier to learn.

Here on skiyo blog we will enter at this point doesn’t matter, what object orientation really means you anyway quickly learn that if you are dealing with Python. Only so much be said: sound knowledge in an object-oriented programming language is a very useful skill. You can download a Python Interpreter free of charge.

If you want to learn Python, there are that many online posts and courses on skiyo.cn as the ” complete Python boot camp “and” the complete Python developer course “.

html
With the currently explosive market growth of Android smartphones and tablets, you might have but also the desire to develop your own apps. A large part of all apps is written in Java (which is not the same as JavaScript, more on that later). Also in terms of career opportunities, learning could by Java be helpful for Android still gaining popularity. Java is one of the object-oriented languages – the step about Python to Java would be so logical. If you want to learn Java, you have several options: the Java Developers Kit (JDK) is available free of charge and runs on your PC.
Alternatively, there are also various online tutorials where you can write coding HTML for beginners and try it out on a Web page, CompileJava is one of them.
If you it very specifically as Android app development has aside, you need Android Studio and – in addition to the Java language – a good introduction to the Android development environment. Rush so nothing and concentrate better only on Java.
Nowadays, most programming languages are object-oriented. Although the syntax of individual languages varies, it still is you easier to switch to another after learning an object-oriented language. If you want to know which programming languages in the industry is most commonly used, take a look in the Ttiobe index.

Web programming HTML and CSS with tutorials

For HTML web page tutorial is fundamentally different than anything here at Skiyo we have previously addressed. Still worth the effort, to learn Web programming. To use for creating rather simple Web pages usually HTML “HyperText Markup Language”, the best in the Latest version of HTML5. As a “markup language” HTML puts together a list of instructions and commands, which are executed in sequence, but describes how text and images on the screen should be displayed. The major part of an HTML document therefore also often consists of the text that you see on the Web page – however, interspersed by so-called tags. For example, the day < header > is a text the following text is represented as a heading. This principle is of course more complex as you add more images, graphics, tables, and links.

Advanced web page tutorial for HTML, CSS, and JavaScript

Couple weeks ago on our Skiyo Blog, some users asked for validation tool. The software enough to create HTML that is usually already on your PC. An HTML document can be written in a normal text editor such as Notepad, for example – as long as the .htm or .html file name. Since then opens the document as a Web page in your default browser. Most browsers now also display the HTML code of a Web page you, that you have just called. Professional tools – about the CoffeeCup Free HTML Editor – provide advanced functions, such as the dyeing of tags in the document for a better overview.

HTML forms the basic structure of a Web page, but you get an appealing layout only with CSS (cascaded style sheets CSS). An example of how CSS works: HTML can transform a plain text in a heading. In the best case the browser, the page is called, used his standard font type, size, and color for each level of the heading. With HTML, these properties can be adjusted manually singly – CSS makes it even easier. Because a separate CSS document can determine exactly what each level of the heading should look like. And if a change is necessary, you replace just the CSS document instead of working all of the HTML code. With a CSS document can be missed, for example, each sub-page of a website of the same corporate look, without each time having to retype the formatting options.

Webmaster tools for HTML, CSS, JavaScript, and Web apps

One on HTML and CSS-based Web page is static – only an additional programming language can incorporate dynamic content. You must so to insert code that responds to the actions of the user. This type of code is running, for example, if you log in on one side. Typically, JavaScript is used for a code to run in the browser or on the client machine and PHP to run on the server.

Other teaching resources for HTML classes for beginners

Of course, you not only face the challenge of learning a new programming language but also for beginners to start coding HTML. Outside help is there almost everywhere – also and especially for those who don’t want to learn full time. For example, Codecademy is recommended. Very helpful, and definitely there is the Programming course from Udemy worth a look.

Suitable especially for code beginners and children 9 years and older (with good English knowledge) online courses (projects called) of the Code Club. Who would rather live wants to learn with others under the guidance and programming, is always a Dojo in its proximity in the CoderDojo. The app ” apps for good ” helps young people in programming their own apps.

Best place to learn HTML

Is modified according to goo.gl URL Shortener plugin into PHP version:

If you want you can ask us at Skiyo what’s the use for.

example:

1
2
3
Include ( 'GoogleShorter.class.php' ) ; 
$g  =  new GoogleShorter ( ) ; 
echo  $g -> getURL ( 'http://www.skiyo.cn/' ) ;

The next step is to develop a wp plugin so that the URL you post when posting articles and comments can automatically become a short URL 🙂

The last post on Skiyo blog was posted about the HTML web page tutorial

Just use the example to give an example. But I didn’t elaborate on the protocol…

Today Skiyo will introduce the difference and improvement between 1.0a and 1.0.

The premise is that you have already seen the agreement. Have a simple understanding of the deal.

The improvements in 1.0a mainly include advanced HTML tutorial and the following:

1. 0auth_callback parameter is placed in the request Token. The callback parameter is no longer accepted in authorizing. At the same time, when the request Token returns the parameter, the oauth_callback_confirmed parameter is also added. The value must be true.

At 1.0, Skiyo team need to specify a callback address and coding for HTML tutorial. Skiyo Blog need to bring in the callback parameter when requesting authorize. Then use it for user authorization and return.

In 1.0a, the parameter of this oauth_callback becomes a mandatory parameter. And the address must be placed in the first request Request Token. Also as a parameter of base_string if the callback address of the third-party application does not exist or is otherwise impossible An application with a callback address (such as a desktop application). This parameter must be [oob] (the content in square brackets is case sensitive). If the server receives it, you need to add an oauth_callback_confirmed parameter. The value must be [true] (in the brackets).

2. After the authorization is over, increase the oauth_verifier parameter.

After the authorization is successful in 1.0, jump directly into the callback to obtain the Access Token operation.

In 1.0a, after the authorization is successful, the server will return a parameter named oauth_verifier. It is used as the necessary parameter to get the Access Token in the next step.

If the third-party application does not have a callback address, the server needs to display the oauth_verifier parameter and inform the user that it needs to authenticate to the third-party application manually. The service provider needs to ensure that the value is available on some individual devices (such as mobile phones) — manual input.

This parameter is not needed during future request API validation.

Ok. I know the difference is so much. If you have any difference, you can tell me to supplement it or read our HTML web page tutorial.

Also, the 1.0a protocol is now obsolete. Because OAuth already has a formal 1.0 protocol and has become the RFC5849 standard.

HTML web page tutorial seems to have received too much attention from the industry since birth. Several large wall sites have promoted coding HTML for beginners.

Chatting in the group today. Someone asked me: In addition to Douban everyone Sina Weibo. Which one provides API?

Skiyo suddenly said it. Our team at Skiyo Blog feel a bit bleak for the domestic environment.

Far away. Let’s analyze OAuth today how to use it.

The reason for writing this article is that when I was learning the OAuth protocol. I found some articles that are from a document called [OAuth Development Documentation.docx].

More general.. and not easy to understand.

So Skiyo need to describe the OAuth protocol in my own words.

For a better explanation, let’s use the watercress as an example.

A user A has registered an account on Douban. After logging in, he can perform some actions, such as publishing an HTML tags tutorial and all kind of broadcast.

So good. Now there is a website B.. Skiyo team wants A to post a broadcast on my website.

But there is a problem. Website B is unreliable for User A. User A does not want to put his account password on Website B.

Also, Website B is also unreliable for Douban. Douban does not know whether Website B is a real user.

To solve this problem. These three people (Douban / User A / Website B) sat together and opened a small meeting.

The result of the meeting is the OAuth protocol.

This agreement seems a bit complicated for security. I will simply say the next step. I have some metaphors that are not appropriate. Just let everyone understand the steps.

There are three steps in the big steps.

Before these steps: Website B has to go to Douban to apply for a token 1 (oauth_consumer_key) and a key 1 (oauth_consumer_secret) (a lot of keys. This key is called key 1). It is two people to meet each other.. Then website B again visit Douban. Douban can know: Oh. Is this not B?

First step.

Website B took the key to talk to Douban. Hi brother. I came. Then Douban said: I only recognize the key does not recognize people. Pick up your token 1 (oauth_consumer_key) and key 1 (oauth_consumer_secret) I will identify .

At this time, the website B is wary and come out. After the watercress is verified, it says: Oh, yes. You are B. That’s good. I will give you another key 2 (oauth_token_secret) and token 2 (oauth_token).

Website B took it back.

The second step.

At this time, User A is about to participate. Website B holds the token 2 (oauth_token) and the key 2 (oauth_token_secret) with A to visit the watercress. At this time, the three people stand one. Douban first to verify that user A is not true.

Regarding action, user A needs to log in on Douban. If the verification is successful, Douban needs to ask user A.

Douban says: A, do you know that B? Do you let him move your things?

A said: I know him, he is my good brother. I am moving with something.

At this time, Douban will know. That’s good. That website B can add and delete things from me.

Also, Website B is still provided to Douban a back door. A agrees. Douban requires A user to take the key 2 to the back door to find the website B.

The third step.

If the above is still smooth. Website B will take the key 1 (oauth_consumer_secret) and the key 2 (oauth_token_secret) to visit the watercress.

After the Douban has verified again, it will give the website B a key 3 (oauth_token_secret) and a token 3 (oauth_token).

Although this name is oauth_token, here at Skiyo we call it oauth_access_token.

At this time for the user / Douban, Website B can be trusted.

If website B wants to modify the content of user A in the future, you need to take the key 1 (oauth_consumer_secret) and key 3 (oauth_token_secret) to find the watercress.

This is the end of the process.

The above steps are generally like this.. but some details are different — for example, signature encryption, etc.

This can be carefully understood from my code.

Skiyo Team can take the Douban API to test it.

Get the access_token. If you like to use the open source OAuth library, you can. We at Skiyo understand it for ourself. So we wrote one.

After getting the access_token. Every time you add, delete or change things, you need to sign the URL secret, etc.. Put it in the header.

When you request the API, for example, the URL to publish a broadcast API is http://api.douban.com/miniblog/saying

Every time you request. Douban must check this header.. See what is verified.

For example, when he looks at the header is Authorization: OAuth. Skiyo Blog know that it is OAuth authentication.

At this time he will check the necessary fields, such as oauth_consumer_key.

The rest of you can go to see the OAuth protocol to see my code.

Skiyo Team wrote a double test. You can try it.

You have to apply for an application first. Then modify the address in config.php: