Thuộc tính của animation trong css3:
Thuộc tính
|
giá trị
|
Ví dụ
|
Mô tả
|
animation-name
|
tên animation
|
animation-name: myAnimation;
|
Xác định tên cho một animation.
|
animation-duration
|
thời gian
|
animation-duration: 5s;
|
Xác định thời gian để hoàn thành một chuyển động, mặc định là 0s.
|
animation-timing-function
|
linear
|
animation-timing-function: linear;
|
Chuyển động sẽ cùng tốc độ từ lúc bắt đầu tới lúc kết thúc.
|
ease
|
animation-timing-function: ease;
|
Chuyển động ban đầu sẽ chậm, sau đó nhanh, đến lúc kết thúc sẽ từ từ, đây là dạng mặc định.
|
ease-in
|
animation-timing-function: ease-in;
|
Chuyển động ban đầu sẽ chậm, sau đó nhanh dần.
|
ease-out
|
animation-timing-function: ease-out;
|
Chuyển động ban đầu sẽ nhanh, sau đó sẽ chậm dần.
|
ease-in-out
|
animation-timing-function: ease-in-out;
|
Chuyển động ban đầu chậm, sau đó nhanh, đến lúc kết thúc sẽ chậm dần.
|
cubic-bezier(n,n,n,n)
|
animation-timing-function: cubic-bezier(1,1,1,0);
|
Xác định giá trị riêng cho chuyển động, giá trị sẽ từ 0 tới 1.
|
animation-delay
|
thời gian
|
animation-delay: 3s;
|
Xác định sau bao lâu thì chuyển động sẽ bắt đầu, mặc định sẽ là 0
|
animation-iteration-count
|
số tự nhiên
|
animation-iteration-count: 4;
|
Xác định số lần thực hiện chuyển động.
|
infinite
|
animation-iteration-count: infinite;
|
Chuyển động sẽ thực hiện không giới hạn số lần.
|
animation-direction
|
normal
|
animation-direction: normal;
|
Chuyển động bình thường, đây là dạng mặc định.
|
alternate
|
animation-direction: alternate;
|
Chuyển động sẽ được đảo ngược ở chu kỳ tiếp theo.
|
animation-play-state
|
paused
|
animation-play-state: paused;
|
Xác định chuyển động dừng lại.
|
running
|
animation-play-state: running;
|
Xác định chuyển động chạy.
|
animation
|
[name] [duration] [timing] [delay] [interaction-count] [direction]
|
animation: myAnimation 5s linear 3s infinite alternate;
|
Đây là dạng tổng hợp của các thuộc tính trên, ngoại trừ thuộc tính animation-play-state.
|
@keyframes có các giá trị như sau:
Thuộc tính
|
giá trị
|
Ví dụ
|
Mô tả
|
@keyframes
|
Tên amination
|
@keyframes amiName{}
|
Xác định tên cho @keyframes.
|
from {thuộc tính: giá trị;}
to {thuộc tính: giá trị;}
|
from {top: 0;}
to {bottom: 100px; color: red;}
|
Định dạng thành phần theo trí đầu và vị trí cuối.
|
Phần trăm {thuộc tính: giá trị;}
|
0% {top: 0;}
50% {top: 150px;}
100% {top: 50px;}
|
Định dạng thành phần theo phần trăm thời gian hành động diễn ra.
|
transition có các giá trị như sau:
Thuộc tính
|
giá trị
|
Ví dụ
|
Mô tả
|
transition-property
|
none
|
transition-property: none;
|
Hiệu ứng của quá trình chuyển đổi sẽ không được hiển thị.
|
width
height
|
transition-property: height;
|
Xác định hiệu ứng của quá trình chuyển đổi cho các thuộc tính css, mỗi thuộc tính cách nhau bằng dấu phẩy.
|
all
|
transition-property: all;
|
Xác định hiệu ứng của quá trình chuyển đổi cho tất cả thuộc tính.
|
transition-duration
|
Thời gian
|
transition-duration: 10s;
|
Quá trình chuyển đổi mất bao nhiêu thời gian.
|
transition-timing-function
|
ease
|
transition-timing-function: ease;
|
Xác định một hiệu ứng của quá trình chuyển đổi với một sự khởi đầu chậm, sau đó nhanh chóng, sau đó kết thúc chậm.
|
ease-in
|
transition-timing-function: ease-in;
|
Xác định một hiệu ứng của quá trình chuyển đổi với một khởi đầu chậm chạp.
|
ease-out
|
transition-timing-function: ease-out;
|
Xác định một hiệu ứng của quá trình chuyển đổi với một kết thúc chậm.
|
ease-in-out
|
transition-timing-function: ease-in-out;
|
Xác định một hiệu ứng của quá trình chuyển đổi với một khởi đầu và kết thúc chậm.
|
linear
|
transition-timing-function: linear;
|
Xác định một hiệu ứng của quá trình chuyển đổi với cùng một tốc độ từ đầu đến cuối.
|
cubic-bezier(n,n,n,n)
|
transition-timing-function: cubic-bezier(0,1,0.35,0);
|
Xác định giá trị cho hiệu ứng của quá trình chuyển đổi theo từng giai đoạn, giá trị xác định chỉ có thể từ 0 tới 1.
|
transition-delay
|
thời gian
|
transition-delay: 3s;
|
Xác định thời gian chờ đợi trước khi các hiệu ứng của quá trình chuyển đổi sẽ bắt đầu.
|
transition
|
[property] [duration] [timing-function] [delay]
|
transition: height 2s ease 3s;
|
Đây là thuộc tính tập hợp các thuộc tính trên.
|
-webkit-box-reflect: below 0px -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(20%, transparent), to(rgba(255, 255, 255, 0.5)));
grayscale
hue-rotate
brightness
Blur
contrast
sepia
invert
saturate
create table myphamhanquoc.table_hinhanhsanpham like bicishop.table_hinhanhsanpham
SELECT * FROM `table_product` order by rand() limit 2
html:
javascript: var text = tinyMCE.get('myeditorid').getContent
Trường hợp field "myeditorid" có dữ liệu text là tiếng Việt nếu dùng hàm trên font sẽ biến dạng mặc dù khai báo langs/vi.js download từ http://tinymce.moxiecode.com/i18n/index.php?ctrl=lang&act=download&pr_id=1 nhưng vẫn lỗi font. Khi đó các bạn dùng hàm sau:
javascript:
function getText(){
var content = "", body = tinyMCE.activeEditor.getDoc().body;
if(body.textContent) content = body.textContent; // Mozilla (Gecko)
if(body.innerText) content = body.innerText; // Internet Explorer
if(content == "") content = tinyMCE.activeEditor.getContent(); // other browsers
content = content.replace(/<\/?[^>]+>/g, "");
alert(content);
}
var text = getText();
1…Đoạn script mở và đóng cửa sổ mới
2….Đoạn script sự kiện đóng cửa sổ
Kích thước hình với php
$url = "http://hotrolaptrinh.com/images/skins/logo.gif";
$size = getimagesize( $url );
print "{$url}\">
";
print "Height: {$size[0]}
";
print "Width: {$size[1]}
";
echo "Cách 2
";
print "Width: {$size[3]}
";
Xây dựng hàm trả về tên trình duyệt
01
|
function browserName(){
|
|
02
|
var Browser = navigator.userAgent;
|
03
|
if (Browser.indexOf('MSIE') >= 0){
|
04
|
Browser = 'MSIE';
|
|
05
|
}
|
|
06
|
else if (Browser.indexOf('Firefox') >= 0){
|
07
|
Browser = 'Firefox';
|
08
|
}
|
|
09
|
else if (Browser.indexOf('Chrome') >= 0){
|
10
|
Browser = 'Chrome';
|
|
11
|
}
|
|
12
|
else if (Browser.indexOf('Safari') >= 0){
|
13
|
Browser = 'Safari';
|
14
|
}
|
|
15
|
else if (Browser.indexOf('Opera') >= 0){
|
16
|
Browser = 'Opera';
|
|
19
|
Browser = 'UNKNOWN';
|
20
|
}
|
|
Ở đoạn mã trên biến "Browser" sẽ lưu đoạn chuỗi trả về từ thuộc tính "userAgent", đoạn chuỗi sẽ chứa tên của trình duyệt nên chúng ta dùng phương thức indexOf() để kiểm tra tên trình duyệt trong đoạn chuỗi. Bản chất của phương thức indexOf() sẽ trả về vị trí của một đoạn chuỗi mà nó tìm thấy nên nếu nó lớn hơn bằng không tức là nó đã trả về vị trí mà nó tìm được (chuỗi trong Javascript cũng là một mảng ký tự và được đánh chỉ mục bắt đầu từ 0).
Xây dựng hàm trả về phiên bản trình duyệt
1
|
function browserVersion(){
|
2
|
var index;
|
|
3
|
var version = 0;
|
|
4
|
var name = browserName();
|
5
|
var info = navigator.userAgent;
|
|
6
|
index = info.indexOf(name) + name.length + 1;
|
7
|
version = parseFloat(info.substring(index,index + 3));
|
8
|
return version;
|
|
+ $(document).mousemove(function(e){
// Sử dụng e.pageX và e.pageY để lấy tọa độ của mouse
});
+ var p = $('id');
var offset = p.offset();
// sử dụng offset.left và offset.top để lấy tọa độ của phần tử div
+ Sau đó so sánh e.pageX và e.pageY với offset.left và offset.top
Kiểm tra upload hình với js
$(document).ready(function(){
$(“#test_button”).click(function(){
var test_value = $(“#test_input”).val();
var extension = test_value.split(‘.’).pop().toLowerCase();
if( $.inArray(extension, [‘png’, ‘gif’, ‘jpeg’, ‘jpg’]) == -1 ){
alert(“File ?nh không h?p l?!”);
return false;
}
else{
alert(“File ?nh h?p l?!”);
return false;
}
});
});
Kiểm tra mobile voi htaccess
RewriteEngine on
RewriteBase /
# Check if this is the noredirect query string
RewriteCond %{QUERY_STRING} (^|&)m=0(&|$)
# Set a cookie, and skip the next rule
RewriteRule ^ – [CO=mredir:0:www.questekvietnam.vn]
RewriteCond %{HTTP:x-wap-profile} !^$ [OR]
RewriteCond %{HTTP:Profile} !^$ [OR]
RewriteCond %{HTTP_USER_AGENT} “acs|alav|alca|amoi|audi|aste|avan|benq|bird|blac|blaz|brew|cell|cldc|cmd-” [NC,OR]
RewriteCond %{HTTP_USER_AGENT} “dang|doco|eric|hipt|inno|ipaq|java|jigs|kddi|keji|leno|lg-c|lg-d|lg-g|lge-” [NC,OR]
RewriteCond %{HTTP_USER_AGENT} “maui|maxo|midp|mits|mmef|mobi|mot-|moto|mwbp|nec-|newt|noki|opwv” [NC,OR]
RewriteCond %{HTTP_USER_AGENT} “palm|pana|pant|pdxg|phil|play|pluc|port|prox|qtek|qwap|sage|sams|sany” [NC,OR]
RewriteCond %{HTTP_USER_AGENT} “sch-|sec-|send|seri|sgh-|shar|sie-|siem|smal|smar|sony|sph-|symb|t-mo” [NC,OR]
RewriteCond %{HTTP_USER_AGENT} “teli|tim-|tosh|tsm-|upg1|upsi|vk-v|voda|w3cs|wap-|wapa|wapi” [NC,OR]
RewriteCond %{HTTP_USER_AGENT} “wapp|wapr|webc|winw|winw|xda|xda-” [NC,OR]
RewriteCond %{HTTP_USER_AGENT} “up.browser|up.link|windowssce|iemobile|mini|mmp” [NC,OR]
RewriteCond %{HTTP_USER_AGENT} “symbian|midp|wap|phone|pocket|mobile|pda|psp” [NC]
RewriteCond %{HTTP_USER_AGENT} !macintosh [NC]
# Check if we’re not already on the mobile site
RewriteCond %{HTTP_HOST} !^m\.
# Can not read and write cookie in same request, must duplicate condition
RewriteCond %{QUERY_STRING} !(^|&)m=0(&|$)
# Check to make sure we haven’t set the cookie before
RewriteCond %{HTTP_COOKIE} !^.*mredir=0.*$ [NC]
# Now redirect to the mobile site
RewriteRule ^ http://m.questekvietnam.vn [R,L]
RewriteEngine on
RewriteCond %{HTTP_HOST} ^domaincuaban.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.domaincuaban.com$
RewriteRule ^(.*)$ "http\:\/\/sub.domaincuaban\.com$1" [R=301,L]
1.PHP
1. Lấy tên pc :
$ten = getenv('COMPUTERNAME');
2.load div jquery:
$(‘.trung’).load(location.href+” .trung”);
1…….p:nth-child(-n+5)
2…….p:nth-last-child()
3…….P:nth-of-type()
4….odd….even
Cấu hình tự chuyển HTTP sang HTTPS trên Apache
Bạn có thể dùng file .htaccess vốn luôn được hỗ trợ bởi các máy chủ chạy Apache. Mở file .htaccess và tìm đoạn sau:
RewriteEngine On
Nếu không tìm thấy đoạn trên, bạn cần thêm vào file cấu hình. Sau đó, thêm vào đoạn sau đây ngay phía sau:
RewriteCond %{HTTPS} !=on
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
Cấu hình tự chuyển HTTP sang HTTPS trên nginx
Mở file cấu hình nginx.conf (hoặc /etc/nginx/sites-enabled/domain.conf) và tìm đoạn cấu hình cho website trên port 80, sau đó điều chỉnh như sau:
server {
listen 80;
server_name yourdomain.com;
return 301 https://$server_name$request_uri;
}
Sau đó khởi động lại nginx:
service nginx restart
Chia sẻ với bạn bè của bạn: |